2022-11-30 22:09:18 +01:00

85 lines
1.6 KiB
Protocol Buffer

syntax = "proto3";
package api;
option go_package = "api/apiproto";
service ClientApi {
rpc CreateSpace(CreateSpaceRequest) returns(CreateSpaceResponse);
rpc DeriveSpace(DeriveSpaceRequest) returns(DeriveSpaceResponse);
rpc CreateDocument(CreateDocumentRequest) returns(CreateDocumentResponse);
rpc DeleteDocument(DeleteDocumentRequest) returns(DeleteDocumentResponse);
rpc AddText(AddTextRequest) returns(AddTextResponse);
rpc DumpTree(DumpTreeRequest) returns(DumpTreeResponse);
rpc AllTrees(AllTreesRequest) returns(AllTreesResponse);
rpc AllSpaces(AllSpacesRequest) returns(AllSpacesResponse);
}
message CreateSpaceRequest {
}
message CreateSpaceResponse {
string id = 1;
}
message DeriveSpaceRequest {
}
message DeriveSpaceResponse {
string id = 1;
}
message CreateDocumentRequest {
string spaceId = 1;
}
message CreateDocumentResponse {
string id = 1;
}
message DeleteDocumentRequest {
string spaceId = 1;
string documentId = 2;
}
message DeleteDocumentResponse {
}
message AddTextRequest {
string spaceId = 1;
string documentId = 2;
string text = 3;
}
message AddTextResponse {
string documentId = 1;
string headId = 2;
}
message DumpTreeRequest {
string spaceId = 1;
string documentId = 2;
}
message DumpTreeResponse {
string dump = 1;
}
message AllTreesRequest {
string spaceId = 1;
}
message Tree {
string id = 1;
repeated string heads = 2;
}
message AllTreesResponse {
repeated Tree trees = 1;
}
message AllSpacesRequest {
}
message AllSpacesResponse {
repeated string spaceIds = 1;
}