Files
services/lists/proto/lists.proto
Asim Aslam 3104133e38 add lists
2022-02-20 11:57:07 +00:00

92 lines
1.6 KiB
Protocol Buffer

syntax = "proto3";
package lists;
option go_package = "./proto;lists";
service Lists {
rpc List(ListRequest) returns (ListResponse);
rpc Create(CreateRequest) returns (CreateResponse);
rpc Read(ReadRequest) returns (ReadResponse);
rpc Delete(DeleteRequest) returns (DeleteResponse);
rpc Update(UpdateRequest) returns (UpdateResponse);
rpc Events(EventsRequest) returns (stream EventsResponse);
}
message List {
// unique id for the list, generated if not specified
string id = 1;
// time at which the list was created
string created = 2;
// time at which the list was updated
string updated = 3;
// name of the list
string name = 4;
// items within the list
repeated string items = 5;
}
// Create a new list
message CreateRequest {
// list name
string name = 1;
// list items
repeated string items = 2;
}
message CreateResponse {
// The created list
List list = 1;
}
// Read a list
message ReadRequest {
// the list id
string id = 1;
}
message ReadResponse {
// The list
List list = 1;
}
// Update a list
message UpdateRequest {
List list = 1;
}
message UpdateResponse {
List list = 1;
}
// Delete a list
message DeleteRequest {
// specify the id of the list
string id = 1;
}
message DeleteResponse {
List list = 1;
}
// List all the lists
message ListRequest {}
message ListResponse {
// the list of lists
repeated List lists = 1;
}
// Subscribe to lists events
message EventsRequest {
// optionally specify a list id
string id = 1;
}
message EventsResponse {
// the event which occured; create, delete, update
string event = 1;
// the list which the operation occured on
List list = 2;
}