syntax = "proto3"; package snapshot; import "model.proto"; import "request.proto"; service SnapshotService { rpc create (SnapshotRequest) returns (SnapshotResponse); rpc read (SnapshotIdRequest) returns (SnapshotResponse); rpc update (SnapshotRequest) returns (SnapshotResponse); rpc delete (SnapshotIdRequest) returns (SnapshotResponse); rpc listAll (request.NoArgsRequest) returns (SnapshotListResponse); rpc listByDatum (ListByDatumRequest) returns (SnapshotListResponse); } message SnapshotRequest { model.Snapshot snapshot = 1; } message SnapshotIdRequest { string id = 1; } message SnapshotResponse { string status = 1; string message = 2; model.Snapshot snapshot = 3; } message SnapshotListResponse { string status = 1; string message = 2; repeated model.Snapshot snapshot = 3; } message ListByDatumRequest { string datum = 1; }