♻️ Move the realm service from sphere to the pass
This commit is contained in:
84
DysonNetwork.Shared/Proto/realm.proto
Normal file
84
DysonNetwork.Shared/Proto/realm.proto
Normal file
@@ -0,0 +1,84 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package proto;
|
||||
|
||||
option csharp_namespace = "DysonNetwork.Shared.Proto";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/wrappers.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
|
||||
import 'account.proto';
|
||||
|
||||
// Message Definitions
|
||||
|
||||
message Realm {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
message RealmMember {
|
||||
string account_id = 1;
|
||||
string realm_id = 2;
|
||||
int32 role = 3;
|
||||
optional google.protobuf.Timestamp joined_at = 4;
|
||||
optional google.protobuf.Timestamp leave_at = 5;
|
||||
optional Account account = 6;
|
||||
optional Realm realm = 7;
|
||||
}
|
||||
|
||||
// Service Definitions
|
||||
|
||||
service RealmService {
|
||||
// Get realm by id or slug
|
||||
rpc GetRealm(GetRealmRequest) returns (Realm) {}
|
||||
// Get realms for a user
|
||||
rpc GetUserRealms(GetUserRealmsRequest) returns (GetUserRealmsResponse) {}
|
||||
// Send invitation notification
|
||||
rpc SendInviteNotify(SendInviteNotifyRequest) returns (google.protobuf.Empty) {}
|
||||
// Check if member has required role
|
||||
rpc IsMemberWithRole(IsMemberWithRoleRequest) returns (google.protobuf.BoolValue) {}
|
||||
// Load account for a member
|
||||
rpc LoadMemberAccount(LoadMemberAccountRequest) returns (RealmMember) {}
|
||||
// Load accounts for members
|
||||
rpc LoadMemberAccounts(LoadMemberAccountsRequest) returns (LoadMemberAccountsResponse) {}
|
||||
}
|
||||
|
||||
// Request/Response Messages
|
||||
|
||||
message GetRealmRequest {
|
||||
oneof query {
|
||||
string id = 1;
|
||||
string slug = 2;
|
||||
}
|
||||
}
|
||||
|
||||
message GetUserRealmsRequest {
|
||||
string account_id = 1;
|
||||
}
|
||||
|
||||
message GetUserRealmsResponse {
|
||||
repeated string realm_ids = 1;
|
||||
}
|
||||
|
||||
message SendInviteNotifyRequest {
|
||||
RealmMember member = 1;
|
||||
}
|
||||
|
||||
message IsMemberWithRoleRequest {
|
||||
string realm_id = 1;
|
||||
string account_id = 2;
|
||||
repeated int32 required_roles = 3;
|
||||
}
|
||||
|
||||
message LoadMemberAccountRequest {
|
||||
RealmMember member = 1;
|
||||
}
|
||||
|
||||
message LoadMemberAccountsRequest {
|
||||
repeated RealmMember members = 1;
|
||||
}
|
||||
|
||||
message LoadMemberAccountsResponse {
|
||||
repeated RealmMember members = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user