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; }