syntax = "proto3"; package archive_control.v1; import "google/protobuf/timestamp.proto"; // ProtocolVersion is negotiated during connection registration. A different // major version is incompatible; minor versions are feature-negotiated. message ProtocolVersion { uint32 major = 1; uint32 minor = 2; } enum ClientRole { CLIENT_ROLE_UNSPECIFIED = 0; CLIENT_ROLE_ARCHIVE = 1; CLIENT_ROLE_CACHE = 2; } enum HealthState { HEALTH_STATE_UNSPECIFIED = 0; HEALTH_STATE_HEALTHY = 1; HEALTH_STATE_DEGRADED = 2; HEALTH_STATE_UNHEALTHY = 3; HEALTH_STATE_UNKNOWN = 4; } enum ErrorCode { ERROR_CODE_UNSPECIFIED = 0; ERROR_CODE_INVALID_ARGUMENT = 1; ERROR_CODE_UNAUTHENTICATED = 2; ERROR_CODE_PROTOCOL_VERSION_MISMATCH = 3; ERROR_CODE_CLIENT_ID_CONFLICT = 4; ERROR_CODE_NOT_FOUND = 5; ERROR_CODE_CONFLICT = 6; ERROR_CODE_STALE_STATE = 7; ERROR_CODE_UNSUPPORTED = 8; ERROR_CODE_PRECONDITION_FAILED = 9; ERROR_CODE_RESOURCE_EXHAUSTED = 10; ERROR_CODE_UNAVAILABLE = 11; ERROR_CODE_TIMEOUT = 12; ERROR_CODE_CANCELLED = 13; ERROR_CODE_INTEGRITY_CHECK_FAILED = 14; ERROR_CODE_PATH_CONFLICT = 15; ERROR_CODE_PERMISSION_DENIED = 16; ERROR_CODE_MANUAL_INTERVENTION_REQUIRED = 17; ERROR_CODE_INTERNAL = 18; } message Error { ErrorCode code = 1; string message = 2; bool retryable = 3; map details = 4; } message ServiceHealth { string service = 1; HealthState state = 2; string version = 3; string api_version = 4; string detail = 5; google.protobuf.Timestamp checked_at = 6; } message ClientIdentity { string client_id = 1; string display_name = 2; ClientRole role = 3; } message PageRequest { uint32 page_size = 1; string page_token = 2; }