initial commit
This commit is contained in:
112
servers/grpc/proto/saved-search.proto
Normal file
112
servers/grpc/proto/saved-search.proto
Normal file
@@ -0,0 +1,112 @@
|
||||
syntax = "proto3";
|
||||
|
||||
option go_package = "git.coopgo.io/coopgo-platform/saved-search/servers/grpc/proto/gen";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
service SavedSearchService {
|
||||
// Create a new saved search
|
||||
rpc CreateSavedSearch(CreateSavedSearchRequest) returns (CreateSavedSearchResponse) {}
|
||||
|
||||
// Get a saved search by ID
|
||||
rpc GetSavedSearch(GetSavedSearchRequest) returns (GetSavedSearchResponse) {}
|
||||
|
||||
// Get all saved searches for a specific owner
|
||||
rpc GetSavedSearchesByOwner(GetSavedSearchesByOwnerRequest) returns (GetSavedSearchesByOwnerResponse) {}
|
||||
|
||||
// Update an existing saved search
|
||||
rpc UpdateSavedSearch(UpdateSavedSearchRequest) returns (UpdateSavedSearchResponse) {}
|
||||
|
||||
// Delete a saved search
|
||||
rpc DeleteSavedSearch(DeleteSavedSearchRequest) returns (DeleteSavedSearchResponse) {}
|
||||
|
||||
// List saved searches with pagination
|
||||
rpc ListSavedSearches(ListSavedSearchesRequest) returns (ListSavedSearchesResponse) {}
|
||||
}
|
||||
|
||||
// GeoJSON Feature representation for saved searches
|
||||
message SavedSearchGeoJsonFeature {
|
||||
string serialized = 1;
|
||||
}
|
||||
|
||||
// Saved search message
|
||||
message SavedSearch {
|
||||
string id = 1;
|
||||
string owner_id = 2;
|
||||
SavedSearchGeoJsonFeature departure = 3;
|
||||
SavedSearchGeoJsonFeature destination = 4;
|
||||
google.protobuf.Timestamp datetime = 5;
|
||||
google.protobuf.Struct data = 6;
|
||||
google.protobuf.Timestamp created_at = 7;
|
||||
google.protobuf.Timestamp updated_at = 8;
|
||||
}
|
||||
|
||||
// Create saved search messages
|
||||
message CreateSavedSearchRequest {
|
||||
string owner_id = 1;
|
||||
SavedSearchGeoJsonFeature departure = 2;
|
||||
SavedSearchGeoJsonFeature destination = 3;
|
||||
google.protobuf.Timestamp datetime = 4;
|
||||
google.protobuf.Struct data = 5;
|
||||
}
|
||||
|
||||
message CreateSavedSearchResponse {
|
||||
SavedSearch saved_search = 1;
|
||||
}
|
||||
|
||||
// Get saved search messages
|
||||
message GetSavedSearchRequest {
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message GetSavedSearchResponse {
|
||||
SavedSearch saved_search = 1;
|
||||
}
|
||||
|
||||
// Get saved searches by owner messages
|
||||
message GetSavedSearchesByOwnerRequest {
|
||||
string owner_id = 1;
|
||||
}
|
||||
|
||||
message GetSavedSearchesByOwnerResponse {
|
||||
repeated SavedSearch saved_searches = 1;
|
||||
}
|
||||
|
||||
// Update saved search messages
|
||||
message UpdateSavedSearchRequest {
|
||||
string id = 1;
|
||||
string owner_id = 2;
|
||||
SavedSearchGeoJsonFeature departure = 3;
|
||||
SavedSearchGeoJsonFeature destination = 4;
|
||||
google.protobuf.Timestamp datetime = 5;
|
||||
google.protobuf.Struct data = 6;
|
||||
}
|
||||
|
||||
message UpdateSavedSearchResponse {
|
||||
SavedSearch saved_search = 1;
|
||||
}
|
||||
|
||||
// Delete saved search messages
|
||||
message DeleteSavedSearchRequest {
|
||||
string id = 1;
|
||||
string owner_id = 2;
|
||||
}
|
||||
|
||||
message DeleteSavedSearchResponse {
|
||||
bool success = 1;
|
||||
}
|
||||
|
||||
// List saved searches messages
|
||||
message ListSavedSearchesRequest {
|
||||
string owner_id = 1;
|
||||
int32 limit = 2;
|
||||
int32 offset = 3;
|
||||
}
|
||||
|
||||
message ListSavedSearchesResponse {
|
||||
repeated SavedSearch saved_searches = 1;
|
||||
int64 total = 2;
|
||||
int32 limit = 3;
|
||||
int32 offset = 4;
|
||||
}
|
||||
Reference in New Issue
Block a user