syntax = "proto3"; package dbscanserving; enum Metric { EUCLIDEAN = 0; } message Sample { repeated float features = 1; } message DetectionRequest { float eps = 1; int32 min_samples = 2; Metric metric = 3; int32 num_samples = 4; int32 num_features = 5; repeated Sample samples = 6; optional int32 identifier = 7; } message DetectionResponse { repeated int32 cluster_indices = 1; } service Detector { rpc Detect (DetectionRequest) returns (DetectionResponse); }