chore: fix update resource api

This commit is contained in:
Steven
2023-10-21 15:56:27 +08:00
parent 015040cc1d
commit 16e17bffb3
13 changed files with 559 additions and 461 deletions

View File

@ -5,6 +5,7 @@ package slash.api.v2;
import "api/v2/common.proto";
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto";
option go_package = "gen/api/v2";
@ -28,10 +29,10 @@ service UserService {
}
rpc UpdateUser(UpdateUserRequest) returns (UpdateUserResponse) {
option (google.api.http) = {
put: "/api/v2/users/{id}"
patch: "/api/v2/users/{user.id}"
body: "user"
};
option (google.api.method_signature) = "id";
option (google.api.method_signature) = "user,update_mask";
}
// DeleteUser deletes a user by id.
rpc DeleteUser(DeleteUserRequest) returns (DeleteUserResponse) {
@ -107,11 +108,9 @@ message CreateUserResponse {
}
message UpdateUserRequest {
int32 id = 1;
User user = 1;
User user = 2;
repeated string update_mask = 3;
google.protobuf.FieldMask update_mask = 2;
}
message UpdateUserResponse {

View File

@ -4,6 +4,7 @@ package slash.api.v2;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/protobuf/field_mask.proto";
option go_package = "gen/api/v2";
@ -16,10 +17,10 @@ service UserSettingService {
// UpdateUserSetting updates the user setting.
rpc UpdateUserSetting(UpdateUserSettingRequest) returns (UpdateUserSettingResponse) {
option (google.api.http) = {
post: "/api/v2/users/{id}/settings"
body: "*"
patch: "/api/v2/users/{id}/settings"
body: "user_setting"
};
option (google.api.method_signature) = "id";
option (google.api.method_signature) = "user_setting,update_mask";
}
}
@ -62,7 +63,7 @@ message UpdateUserSettingRequest {
UserSetting user_setting = 2;
// update_mask is the field mask to update.
repeated string update_mask = 3;
google.protobuf.FieldMask update_mask = 3;
}
message UpdateUserSettingResponse {

View File

@ -4,6 +4,8 @@ package slash.api.v2;
import "api/v2/subscription_service.proto";
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/protobuf/field_mask.proto";
option go_package = "gen/api/v2";
@ -16,9 +18,10 @@ service WorkspaceService {
}
rpc UpdateWorkspaceSetting(UpdateWorkspaceSettingRequest) returns (UpdateWorkspaceSettingResponse) {
option (google.api.http) = {
post: "/api/v2/workspace/setting"
body: "*"
patch: "/api/v2/workspace/setting"
body: "setting"
};
option (google.api.method_signature) = "setting,update_mask";
}
}
@ -76,7 +79,7 @@ message UpdateWorkspaceSettingRequest {
// The user setting.
WorkspaceSetting setting = 1;
// The update mask.
repeated string update_mask = 2;
google.protobuf.FieldMask update_mask = 2;
}
message UpdateWorkspaceSettingResponse {