syntax = "proto3"; package secretsmanagerplugin; option go_package = "./;secretsmanagerplugin"; message Key { int64 orgId = 1; string namespace = 2; string type = 3; } message Item { Key key = 1; string value = 2; } message GetSecretRequest { Key keyDescriptor = 1; } message GetSecretResponse { string userFriendlyError = 1; string decryptedValue = 2; bool exists = 3; } message SetSecretRequest { Key keyDescriptor = 1; string value = 2; } message SetSecretResponse { string userFriendlyError = 1; } message DeleteSecretRequest { Key keyDescriptor = 1; } message DeleteSecretResponse { string userFriendlyError = 1; } message ListSecretsRequest { Key keyDescriptor = 1; bool allOrganizations = 2; } message ListSecretsResponse { string userFriendlyError = 1; repeated Key keys = 2; } message GetAllSecretsRequest { } message GetAllSecretsResponse { string userFriendlyError = 1; repeated Item items = 2; } message RenameSecretRequest { Key keyDescriptor = 1; string newNamespace = 2; } message RenameSecretResponse { string userFriendlyError = 1; } service SecretsManager { rpc GetSecret(GetSecretRequest) returns (GetSecretResponse); rpc SetSecret(SetSecretRequest) returns (SetSecretResponse); rpc DeleteSecret(DeleteSecretRequest) returns (DeleteSecretResponse); rpc ListSecrets(ListSecretsRequest) returns (ListSecretsResponse); rpc RenameSecret(RenameSecretRequest) returns (RenameSecretResponse); rpc GetAllSecrets(GetAllSecretsRequest) returns (GetAllSecretsResponse); }