openapi: 3.0.0 info: description: 'API to interact and manage the lifecycle of your machine learning models deployed through Seldon Deploy.' title: Seldon Deploy AlertingService SecretsService API version: v1alpha1 servers: - url: http://X.X.X.X/seldon-deploy/api/v1alpha1 - url: https://X.X.X.X/seldon-deploy/api/v1alpha1 security: - OAuth2: - '[]' tags: - name: SecretsService paths: /secrets/{namespace}/bucket/gcs/{remote}: post: summary: Creates a GCS bucket secret according to specified parameters. operationId: SecretsService_CreateGCSBucketSecret responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1CreateGCSBucketSecretResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to create secret in. in: path required: true schema: type: string - name: remote description: The remote name must contain only lowercase letters, digits or dashes, must start and end with a lowercase letter or digit and must be no more than 30 characters in length. The created secret will be named {remote}-bucket-envvars or {remote}-bucket-params, for Core 1 or Core 2, respectively. in: path required: true schema: type: string - name: secretVersion description: The version of the secret to use (CORE_V1 or CORE_V2). Default value is CORE_V1 in: query required: false schema: type: string enum: - CORE_1 - CORE_2 default: CORE_1 requestBody: content: application/json: schema: type: object description: The GCS account credentials to populate the secret. See documentation for how to generate this. required: true tags: - SecretsService /secrets/{namespace}/bucket/rclone/{remote}: post: summary: Creates a generic rclone bucket secret according to specified parameters. operationId: SecretsService_CreateRcloneBucketSecret responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1CreateRcloneBucketSecretResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to create secret in. in: path required: true schema: type: string - name: remote description: The remote name must contain only lowercase letters, digits or dashes, must start and end with a lowercase letter or digit and must be no more than 30 characters in length. The created secret will be named {remote}-bucket-envvars or {remote}-bucket-params, for Core 1 or Core 2, respectively. in: path required: true schema: type: string - name: format description: The format for the secret. Must be one of (env_var, config_param). env_var formats the secret as environment variables, each with a key and a value. env_var is suitable for Seldon Core v1 and Argo Workflows. config_param formats the secret to be compatible with Rclone's HTTP API. config_param is suitable for Seldon Core v2. in: query required: false schema: type: string enum: - env_var - config_param default: env_var requestBody: content: application/json: schema: $ref: '#/components/schemas/v1RcloneConfig' required: true tags: - SecretsService /secrets/{namespace}/bucket/s3/{remote}: post: summary: Creates a S3 bucket secret according to specified parameters. operationId: SecretsService_CreateS3BucketSecret responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1CreateS3BucketSecretResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to create secret in. in: path required: true schema: type: string - name: remote description: The remote name must contain only lowercase letters, digits or dashes, must start and end with a lowercase letter or digit and must be no more than 30 characters in length. The created secret will be named {remote}-bucket-envvars or {remote}-bucket-params, for Core 1 or Core 2, respectively. in: path required: true schema: type: string - name: secretVersion description: The version of the secret to use (CORE_1 or CORE_2). Default value is CORE_1 in: query required: false schema: type: string enum: - CORE_1 - CORE_2 default: CORE_1 requestBody: content: application/json: schema: $ref: '#/components/schemas/v1S3Credentials' required: true tags: - SecretsService /secrets/{namespace}/registry/{name}: post: summary: Creates a registry secret according to specified parameters. operationId: SecretsService_CreateRegistrySecret responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1CreateRegistrySecretResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to create secret in. in: path required: true schema: type: string - name: name description: The secret name must contain only lowercase letters, digits or dashes, must start and end with a lowercase letter or digit and must be no more than 30 characters in length. in: path required: true schema: type: string requestBody: content: application/json: schema: type: object description: The raw json docker credentials config. required: true tags: - SecretsService /secrets/{namespace}/{secretType}: get: summary: Lists the names and metadata of secrets used by Seldon Deploy. operationId: SecretsService_ListSecrets responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1ListSecretsResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to list secrets in. in: path required: true schema: type: string - name: secretType description: The secret type, can be one of (`bucket`, `registry`) or `all` to list all secrets used by Seldon Deploy. in: path required: true schema: type: string enum: - all - bucket - registry - name: bucketSecretFormat description: Optional filter for the format of bucket secrets. Only applicable when `secret_type` is `bucket.` in: query required: false schema: type: string enum: - env_var - config_param default: env_var - name: pageSize description: Optional The maximum number of Secrets to return in the response. in: query required: false schema: type: string format: int64 - name: pageToken description: Optional pagination token returned from a previous call to List that indicates where this listing should continue from. in: query required: false schema: type: string - name: search description: Optional search string for secrets. in: query required: false schema: type: string tags: - SecretsService /secrets/{namespace}/{secretType}/{name}: delete: summary: Deletes the specified secret. operationId: SecretsService_DeleteSecret responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/v1DeleteSecretResponse' '400': description: Bad Request content: application/json: schema: {} '403': description: Forbidden content: application/json: schema: {} '404': description: Not Found content: application/json: schema: {} '500': description: Internal Server Error content: application/json: schema: {} default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/rpcStatus' parameters: - name: namespace description: The namespace to delete secret from. in: path required: true schema: type: string - name: secretType description: The secret type of the secret to be deleted, can be one of (`bucket`, `registry`). in: path required: true schema: type: string enum: - all - bucket - registry - name: name description: The name of the secret to delete. in: path required: true schema: type: string tags: - SecretsService components: schemas: v1CreateS3BucketSecretResponse: type: object v1ListSecretsResponse: type: object properties: secrets: type: array items: $ref: '#/components/schemas/v1Secret' nextPageToken: type: string description: 'A pagination token returned from a previous call to `List` that indicates from where listing should continue.' v1RcloneConfig: type: object properties: variables: type: object additionalProperties: type: string description: The Rclone key value pairs for your secret; see the Rclone documentation for more detail. remoteType: type: string example: s3 description: The Rclone type of the remote; see the Rclone documentation for available types. v1CreateRcloneBucketSecretResponse: type: object protobufAny: type: object properties: '@type': type: string additionalProperties: {} v1CreateRegistrySecretResponse: type: object v1S3Credentials: type: object properties: s3AccessKeyId: type: string description: The S3 access key ID. s3SecretAccessKey: type: string description: The S3 secret access key. v1Secret: type: object properties: secretName: type: string secretType: $ref: '#/components/schemas/v1SecretType' bucketSecretFormat: $ref: '#/components/schemas/v1BucketSecretFormat' remoteName: type: string description: The remote name of the secret. Used by the user as a prefix to a model uri and by RClone as a config during download of artefacts. Only available for bucket secrets. v1DeleteSecretResponse: type: object v1SecretType: type: string enum: - all - bucket - registry default: all description: 'Note: intentionally lower case so that the URL format accepts lowercase.' v1BucketSecretFormat: type: string enum: - env_var - config_param default: env_var description: Default to env_var for backwards compatibility. v1CreateGCSBucketSecretResponse: type: object rpcStatus: type: object properties: code: type: integer format: int32 message: type: string details: type: array items: $ref: '#/components/schemas/protobufAny' securitySchemes: OAuth2: type: oauth2 flows: password: tokenUrl: https://Y.Y.Y.Y scopes: email: '' groups: '' openid: '' profile: ''