Spaces:
Sleeping
Sleeping
syntax = "proto3"; | |
package chroma; | |
option go_package = "github.com/chroma/chroma-coordinator/internal/proto/coordinatorpb"; | |
import "chromadb/proto/chroma.proto"; | |
import "google/protobuf/empty.proto"; | |
message CreateDatabaseRequest { | |
string id = 1; | |
string name = 2; | |
string tenant = 3; | |
} | |
message GetDatabaseRequest { | |
string name = 1; | |
string tenant = 2; | |
} | |
message GetDatabaseResponse { | |
Database database = 1; | |
Status status = 2; | |
} | |
message CreateTenantRequest { | |
string name = 2; // Names are globally unique | |
} | |
message GetTenantRequest { | |
string name = 1; | |
} | |
message GetTenantResponse { | |
Tenant tenant = 1; | |
Status status = 2; | |
} | |
message CreateSegmentRequest { | |
Segment segment = 1; | |
} | |
message DeleteSegmentRequest { | |
string id = 1; | |
} | |
message GetSegmentsRequest { | |
optional string id = 1; | |
optional string type = 2; | |
optional SegmentScope scope = 3; | |
optional string topic = 4; | |
optional string collection = 5; // Collection ID | |
} | |
message GetSegmentsResponse { | |
repeated Segment segments = 1; | |
Status status = 2; | |
} | |
message UpdateSegmentRequest { | |
string id = 1; | |
oneof topic_update { | |
string topic = 2; | |
bool reset_topic = 3; | |
} | |
oneof collection_update { | |
string collection = 4; | |
bool reset_collection = 5; | |
} | |
oneof metadata_update { | |
UpdateMetadata metadata = 6; | |
bool reset_metadata = 7; | |
} | |
} | |
message CreateCollectionRequest { | |
string id = 1; | |
string name = 2; | |
optional UpdateMetadata metadata = 3; | |
optional int32 dimension = 4; | |
optional bool get_or_create = 5; | |
string tenant = 6; | |
string database = 7; | |
} | |
message CreateCollectionResponse { | |
Collection collection = 1; | |
bool created = 2; | |
Status status = 3; | |
} | |
message DeleteCollectionRequest { | |
string id = 1; | |
string tenant = 2; | |
string database = 3; | |
} | |
message GetCollectionsRequest { | |
optional string id = 1; | |
optional string name = 2; | |
optional string topic = 3; | |
string tenant = 4; | |
string database = 5; | |
} | |
message GetCollectionsResponse { | |
repeated Collection collections = 1; | |
Status status = 2; | |
} | |
message UpdateCollectionRequest { | |
string id = 1; | |
optional string topic = 2; | |
optional string name = 3; | |
optional int32 dimension = 4; | |
oneof metadata_update { | |
UpdateMetadata metadata = 5; | |
bool reset_metadata = 6; | |
} | |
} | |
message Notification { | |
int64 id = 1; | |
string collection_id = 2; | |
string type = 3; | |
string status = 4; | |
} | |
service SysDB { | |
rpc CreateDatabase(CreateDatabaseRequest) returns (ChromaResponse) {} | |
rpc GetDatabase(GetDatabaseRequest) returns (GetDatabaseResponse) {} | |
rpc CreateTenant(CreateTenantRequest) returns (ChromaResponse) {} | |
rpc GetTenant(GetTenantRequest) returns (GetTenantResponse) {} | |
rpc CreateSegment(CreateSegmentRequest) returns (ChromaResponse) {} | |
rpc DeleteSegment(DeleteSegmentRequest) returns (ChromaResponse) {} | |
rpc GetSegments(GetSegmentsRequest) returns (GetSegmentsResponse) {} | |
rpc UpdateSegment(UpdateSegmentRequest) returns (ChromaResponse) {} | |
rpc CreateCollection(CreateCollectionRequest) returns (CreateCollectionResponse) {} | |
rpc DeleteCollection(DeleteCollectionRequest) returns (ChromaResponse) {} | |
rpc GetCollections(GetCollectionsRequest) returns (GetCollectionsResponse) {} | |
rpc UpdateCollection(UpdateCollectionRequest) returns (ChromaResponse) {} | |
rpc ResetState(google.protobuf.Empty) returns (ChromaResponse) {} | |
} | |