openapi: 3.0.0 info: version: 2.0.0 termsOfService: https://exoscale.com/terms contact: email: support@exoscale.com name: Exoscale Support url: https://portal.exoscale.com/tickets title: Exoscale ai-api-key dbaas API description: Infrastructure automation API, allowing programmatic access to all Exoscale products and services. servers: - url: https://api-{zone}.exoscale.com/v2 variables: zone: default: ch-gva-2 enum: - ch-gva-2 - ch-dk-2 - de-fra-1 - de-muc-1 - at-vie-1 - at-vie-2 - bg-sof-1 - hr-zag-1 tags: - description: Databases as a Service (DBaaS) provides scalable and fully-managed database solutions with high availability and performance backed by Exoscale's Compute and Storage services. externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/ name: dbaas x-display-name: DBaaS x-weight: 400 x-icon: exo-dbaas paths: /dbaas-external-endpoint-opensearch/{endpoint-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete OpenSearch logs external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: delete-dbaas-external-endpoint-opensearch get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-opensearch-output' description: '[BETA] Get OpenSearch Logs external integration endpoint settings' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-endpoint-opensearch put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update OpenSearch Logs external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-opensearch-input-update' operationId: update-dbaas-external-endpoint-opensearch /dbaas-opensearch/{name}/acl-config: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-opensearch-acl-config' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get DBaaS OpenSearch ACL configuration operationId: get-dbaas-opensearch-acl-config put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS OpenSearch ACL configuration requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-opensearch-acl-config' operationId: update-dbaas-opensearch-acl-config /dbaas-valkey/{name}/migration/stop: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Stop a DBaaS Valkey migration operationId: stop-dbaas-valkey-migration /dbaas-grafana/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate Grafana maintenance update operationId: start-dbaas-grafana-maintenance /dbaas-postgres/{service}/upgrade-check: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-task' description: Check whether you can upgrade Postgres service to a newer version parameters: - in: path required: true name: service schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: target-version: $ref: '#/components/schemas/dbaas-pg-target-versions' description: Target version for upgrade required: - target-version operationId: create-dbaas-pg-upgrade-check /dbaas-mysql/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS mysql user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-mysql-user-password' description: New password authentication: $ref: '#/components/schemas/enum-mysql-authentication-plugin' description: Authentication method operationId: reset-dbaas-mysql-user-password /dbaas-postgres/{service-name}/connection-pool: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '' parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS PostgreSQL connection pool requestBody: required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/dbaas-pg-pool-name' description: Connection pool name database-name: $ref: '#/components/schemas/dbaas-database-name' description: Service database name mode: $ref: '#/components/schemas/enum-pg-pool-mode' description: PGBouncer pool mode size: $ref: '#/components/schemas/dbaas-pg-pool-size' description: Size of PGBouncer's PostgreSQL side connection pool username: $ref: '#/components/schemas/dbaas-pg-pool-username' description: Pool username required: - name - database-name operationId: create-dbaas-pg-connection-pool /dbaas-mysql/{name}: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS MySQL service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Update a DBaaS MySQL service requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' mysql-settings: $ref: '#/components/schemas/json-schema-mysql' description: MySQL-specific settings migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server binlog-retention-period: type: integer format: int64 minimum: 600 maximum: 86400 exclusiveMinimum: false exclusiveMaximum: false description: The minimum amount of time in seconds to keep binlog entries before deletion. This may be extended for services that require binlog entries for longer than the default for example if using the MySQL Debezium Kafka connector. backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. operationId: update-dbaas-service-mysql get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-mysql' description: Get a DBaaS MySQL service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS MySQL service operationId: get-dbaas-service-mysql post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS MySQL service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS MySQL service requestBody: required: true content: application/json: schema: type: object properties: backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. integrations: type: array items: type: object properties: type: type: string enum: - read_replica description: Integration type source-service: $ref: '#/components/schemas/dbaas-service-name' description: A source service dest-service: $ref: '#/components/schemas/dbaas-service-name' description: A destination service settings: type: object description: Integration settings required: - type description: Service integrations to be enabled when creating the service. ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' termination-protection: type: boolean description: Service is protected against termination and powering off fork-from-service: $ref: '#/components/schemas/dbaas-service-name' description: Service to fork from recovery-backup-time: type: string minLength: 1 description: ISO time of a backup to recover from for services that support arbitrary times mysql-settings: $ref: '#/components/schemas/json-schema-mysql' description: MySQL-specific settings maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings admin-username: type: string maxLength: 64 minLength: 1 pattern: ^[_A-Za-z0-9][-._A-Za-z0-9]{0,63}$ description: Custom username for admin user. This must be set only when a new service is being created. version: type: string minLength: 1 description: MySQL major version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan admin-password: $ref: '#/components/schemas/dbaas-mysql-user-password' description: Custom password for admin user. Defaults to random string. This must be set only when a new service is being created. migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server binlog-retention-period: type: integer format: int64 minimum: 600 maximum: 86400 exclusiveMinimum: false exclusiveMaximum: false description: The minimum amount of time in seconds to keep binlog entries before deletion. This may be extended for services that require binlog entries for longer than the default for example if using the MySQL Debezium Kafka connector. required: - plan operationId: create-dbaas-service-mysql delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a MySQL service operationId: delete-dbaas-service-mysql /dbaas-thanos/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate Thanos maintenance update operationId: start-dbaas-thanos-maintenance /dbaas-external-endpoint-elasticsearch/{endpoint-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete ElasticSearch logs external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: delete-dbaas-external-endpoint-elasticsearch get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-elasticsearch-output' description: '[BETA] Get ElasticSearch Logs external integration endpoint settings' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-endpoint-elasticsearch put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update ElasticSearch Logs external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-elasticsearch-input-update' operationId: update-dbaas-external-endpoint-elasticsearch /dbaas-mysql/{service-name}/user: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS MySQL user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username authentication: $ref: '#/components/schemas/enum-mysql-authentication-plugin' description: Authentication option required: - username operationId: create-dbaas-mysql-user /dbaas-service-type: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: dbaas-service-types: type: array items: $ref: '#/components/schemas/dbaas-service-type' description: List available service types for DBaaS parameters: [] summary: DBaaS Service Types operationId: list-dbaas-service-types /dbaas-service: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: dbaas-services: type: array items: $ref: '#/components/schemas/dbaas-service-common' description: List DBaaS services parameters: [] summary: List DBaaS services operationId: list-dbaas-services /dbaas-external-endpoint-rsyslog/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create RSyslog external integration endpoint' parameters: - in: path required: true name: name schema: type: string summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-rsyslog-input-create' operationId: create-dbaas-external-endpoint-rsyslog /dbaas-ca-certificate: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: certificate: type: string description: Returns a CA Certificate required to reach a DBaaS service through a TLS-protected connection. parameters: [] summary: Get DBaaS CA Certificate operationId: get-dbaas-ca-certificate /dbaas-settings-grafana: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: grafana: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Grafana configuration values description: Get DBaaS Grafana settings parameters: [] summary: Get DBaaS Grafana settings operationId: get-dbaas-settings-grafana /dbaas-postgres/{service-name}/database/{database-name}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: database-name schema: $ref: '#/components/schemas/dbaas-pg-database-name' summary: Delete a DBaaS Postgres database operationId: delete-dbaas-pg-database /dbaas-postgres/{name}/migration/stop: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Stop a DBaaS PostgreSQL migration operationId: stop-dbaas-pg-migration /dbaas-kafka/{name}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-kafka' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS Kafka service operationId: get-dbaas-service-kafka post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS Kafka service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Kafka service requestBody: required: true content: application/json: schema: type: object properties: authentication-methods: type: object properties: certificate: type: boolean description: Enable certificate/SSL authentication sasl: type: boolean description: Enable SASL authentication description: Kafka authentication methods kafka-rest-enabled: type: boolean description: Enable Kafka-REST service kafka-connect-enabled: type: boolean description: Allow clients to connect to kafka_connect from the public internet for service nodes that are in a project VPC or another type of private network ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' schema-registry-settings: $ref: '#/components/schemas/json-schema-schema-registry' description: Schema Registry configuration kafka-rest-settings: $ref: '#/components/schemas/json-schema-kafka-rest' description: Kafka REST configuration termination-protection: type: boolean description: Service is protected against termination and powering off kafka-connect-settings: $ref: '#/components/schemas/json-schema-kafka-connect' description: Kafka Connect configuration values maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings kafka-settings: $ref: '#/components/schemas/json-schema-kafka' description: Kafka-specific settings schema-registry-enabled: type: boolean description: Enable Schema-Registry service version: type: string minLength: 1 description: Kafka major version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan required: - plan operationId: create-dbaas-service-kafka put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS Kafka service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Update a DBaaS Kafka service requestBody: required: true content: application/json: schema: type: object properties: authentication-methods: type: object properties: certificate: type: boolean description: Enable certificate/SSL authentication sasl: type: boolean description: Enable SASL authentication description: Kafka authentication methods kafka-rest-enabled: type: boolean description: Enable Kafka-REST service kafka-connect-enabled: type: boolean description: Allow clients to connect to kafka_connect from the public internet for service nodes that are in a project VPC or another type of private network ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' schema-registry-settings: $ref: '#/components/schemas/json-schema-schema-registry' description: Schema Registry configuration kafka-rest-settings: $ref: '#/components/schemas/json-schema-kafka-rest' description: Kafka REST configuration termination-protection: type: boolean description: Service is protected against termination and powering off kafka-connect-settings: $ref: '#/components/schemas/json-schema-kafka-connect' description: Kafka Connect configuration values maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings kafka-settings: $ref: '#/components/schemas/json-schema-kafka' description: Kafka-specific settings schema-registry-enabled: type: boolean description: Enable Schema-Registry service version: type: string minLength: 1 description: Kafka major version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan operationId: update-dbaas-service-kafka delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a Kafka service operationId: delete-dbaas-service-kafka /dbaas-kafka/{name}/schema-registry/acl-config: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Add a Kafka Schema Registry ACL entry requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-kafka-schema-registry-acl-entry' operationId: create-dbaas-kafka-schema-registry-acl-config /dbaas-postgres/{service-name}/user: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Postgres user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username allow-replication: type: boolean required: - username operationId: create-dbaas-postgres-user /dbaas-external-integrations/{service-name}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: external-integrations: type: array items: $ref: '#/components/schemas/dbaas-external-integration' description: '[BETA] List all DBaaS connections between services and external endpoints' parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' operationId: list-dbaas-external-integrations /dbaas-external-integration/{integration-id}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-external-integration' description: '[BETA] Get a DBaaS external integration' parameters: - in: path required: true name: integration-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-integration /dbaas-external-endpoint-types: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: endpoint-types: type: array items: type: object properties: type: $ref: '#/components/schemas/enum-external-endpoint-types' service-types: type: array items: type: string title: type: string description: '[BETA] List available external endpoint types and their schemas for DBaaS external integrations' parameters: [] summary: '' operationId: list-dbaas-external-endpoint-types /dbaas-kafka/{service-name}/connect/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-kafka-connect-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Reveal the secrets for DBaaS Kafka Connect operationId: reveal-dbaas-kafka-connect-password /dbaas-opensearch/{service-name}/user/{username}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Delete a DBaaS OpenSearch user operationId: delete-dbaas-opensearch-user /dbaas-external-endpoint-prometheus/{endpoint-id}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-external-prometheus-output' description: '[BETA] Get Prometheus external integration endpoint settings' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-endpoint-prometheus delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete Prometheus external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: delete-dbaas-external-endpoint-prometheus put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update Prometheus external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-prometheus-payload' operationId: update-dbaas-external-endpoint-prometheus /dbaas-kafka/{service-name}/user: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Kafka user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username required: - username operationId: create-dbaas-kafka-user /dbaas-valkey/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS Valkey user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-valkey-user-password /dbaas-external-integration-settings-datadog/{integration-id}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Manage Datadog integration settings' parameters: - in: path required: true name: integration-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: type: object properties: settings: $ref: '#/components/schemas/dbaas-integration-settings-datadog' operationId: update-dbaas-external-integration-settings-datadog get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: $ref: '#/components/schemas/dbaas-integration-settings-datadog' description: '[BETA] Get Datadog integration settings' parameters: - in: path required: true name: integration-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-integration-settings-datadog /dbaas-settings-mysql: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: mysql: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: mysql.conf configuration values description: Get DBaaS MySQL settings parameters: [] summary: Get DBaaS MySQL settings operationId: get-dbaas-settings-mysql /dbaas-settings-valkey: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: valkey: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Valkey configuration values description: Returns the default settings for Valkey. parameters: [] summary: Get DBaaS Valkey settings operationId: get-dbaas-settings-valkey /dbaas-postgres/{service-name}/database: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Postgres database requestBody: required: true content: application/json: schema: type: object properties: database-name: $ref: '#/components/schemas/dbaas-database-name' description: Service database name lc-collate: type: string maxLength: 128 description: Default string sort order (LC_COLLATE) for PostgreSQL database lc-ctype: type: string maxLength: 128 description: Default character classification (LC_CTYPE) for PostgreSQL database required: - database-name operationId: create-dbaas-pg-database /dbaas-settings-thanos: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: thanos: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Thanos configuration values description: Get DBaaS Thanos settings parameters: [] summary: Get DBaaS Thanos settings operationId: get-dbaas-settings-thanos /dbaas-opensearch/{service-name}/user: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS OpenSearch user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username required: - username operationId: create-dbaas-opensearch-user /dbaas-integration-types: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: dbaas-integration-types: type: array items: $ref: '#/components/schemas/dbaas-integration-type' description: '[BETA] Get DBaaS integration types' parameters: [] summary: '' operationId: list-dbaas-integration-types /dbaas-postgres/{service-name}/user/{username}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Delete a DBaaS Postgres user operationId: delete-dbaas-postgres-user /dbaas-postgres/{service-name}/user/{username}/allow-replication: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-postgres-users' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Update access control for one service user requestBody: required: true content: application/json: schema: type: object properties: allow-replication: type: boolean operationId: update-dbaas-postgres-allow-replication /dbaas-kafka/{name}/topic/acl-config: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Add a Kafka topic ACL entry requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-kafka-topic-acl-entry' operationId: create-dbaas-kafka-topic-acl-config /dbaas-external-endpoint-opensearch/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create OpenSearch Logs external integration endpoint' parameters: - in: path required: true name: name schema: type: string summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-opensearch-input-create' operationId: create-dbaas-external-endpoint-opensearch /dbaas-mysql/{service-name}/database/{database-name}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: database-name schema: $ref: '#/components/schemas/dbaas-mysql-database-name' summary: Delete a DBaaS MySQL database operationId: delete-dbaas-mysql-database /dbaas-service-logs/{service-name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-logs' description: Get logs of DBaaS service parameters: - in: path required: true name: service-name schema: type: string summary: Get logs of DBaaS service requestBody: required: true content: application/json: schema: type: object properties: limit: type: integer format: int64 minimum: 1 maximum: 500 exclusiveMinimum: false exclusiveMaximum: false description: 'How many log entries to receive at most, up to 500 (default: 100)' sort-order: $ref: '#/components/schemas/enum-sort-order' description: 'Sort order for log messages (default: desc)' offset: type: string description: Opaque offset identifier operationId: get-dbaas-service-logs /dbaas-postgres/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate PostgreSQL maintenance update operationId: start-dbaas-pg-maintenance /dbaas-grafana/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-grafana-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS Grafana user operationId: reveal-dbaas-grafana-user-password /dbaas-grafana/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS Grafana user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-grafana-user-password /dbaas-valkey/{service-name}/user/{username}: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Update access control for one DBaaS Valkey service user requestBody: required: true content: application/json: schema: type: object properties: access-control: $ref: '#/components/schemas/dbaas-valkey-user-access-control' operationId: update-dbaas-valkey-user-access-control delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Delete a DBaaS Valkey user operationId: delete-dbaas-valkey-user /dbaas-kafka/{name}/schema-registry/acl-config/{acl-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: acl-id schema: $ref: '#/components/schemas/dbaas-kafka-acl-id' summary: Delete a Kafka ACL entry operationId: delete-dbaas-kafka-schema-registry-acl-config /dbaas-kafka/{service-name}/user/{username}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Delete a DBaaS kafka user operationId: delete-dbaas-kafka-user /dbaas-service-type/{service-type-name}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-type' description: Get a DBaaS service type parameters: - in: path required: true name: service-type-name schema: type: string summary: Get a DBaaS service type operationId: get-dbaas-service-type /dbaas-external-endpoint-datadog/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create DataDog external integration endpoint' parameters: - in: path required: true name: name schema: type: string summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-datadog-input-create' operationId: create-dbaas-external-endpoint-datadog /dbaas-mysql/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate MySQL maintenance update operationId: start-dbaas-mysql-maintenance /dbaas-opensearch/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS OpenSearch user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-opensearch-user-password /dbaas-mysql/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-mysql-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS MySQL user operationId: reveal-dbaas-mysql-user-password /dbaas-service-metrics/{service-name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: metrics: type: object description: Get metrics of DBaaS service parameters: - in: path required: true name: service-name schema: type: string summary: Get metrics of DBaaS service requestBody: required: true content: application/json: schema: type: object properties: period: type: string enum: - hour - week - year - month - day description: 'Metrics time period (default: hour)' operationId: get-dbaas-service-metrics /dbaas-mysql/{name}/enable/writes: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Temporarily enable writes for MySQL services in read-only mode due to filled up storage operationId: enable-dbaas-mysql-writes /dbaas-kafka/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-kafka-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS Kafka user operationId: reveal-dbaas-kafka-user-password /dbaas-task-migration-check/{service}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS task to check migration parameters: - in: path required: true name: service schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: source-service-uri: type: string maxLength: 512 minLength: 1 description: Service URI of the source MySQL or PostgreSQL database with admin credentials. method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used (currently supported only by MySQL service type) ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) required: - source-service-uri operationId: create-dbaas-task-migration-check /dbaas-external-endpoint-datadog/{endpoint-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete DataDog external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: delete-dbaas-external-endpoint-datadog get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-external-endpoint-datadog-output' description: '[BETA] Get DataDog external endpoint settings' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-endpoint-datadog put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update DataDog external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-datadog-input-update' operationId: update-dbaas-external-endpoint-datadog /dbaas-external-endpoint-prometheus/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create Prometheus external integration endpoint' parameters: - in: path required: true name: name schema: type: string summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-prometheus-payload' operationId: create-dbaas-external-endpoint-prometheus /dbaas-integration/{id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete a DBaaS Integration' parameters: - in: path required: true name: id schema: type: string format: uuid summary: '' operationId: delete-dbaas-integration put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update a existing DBaaS integration' parameters: - in: path required: true name: id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: type: object properties: settings: type: object description: Integration settings required: - settings operationId: update-dbaas-integration get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-integration' description: '[BETA] Get a DBaaS Integration' parameters: - in: path required: true name: id schema: type: string format: uuid summary: '' operationId: get-dbaas-integration /dbaas-integration-settings/{integration-type}/{source-type}/{dest-type}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: The JSON schema representing the settings for the given integration type, source, and destination service types. description: '[BETA] Get DBaaS integration settings' parameters: - in: path required: true name: integration-type schema: type: string - in: path required: true name: source-type schema: type: string - in: path required: true name: dest-type schema: type: string summary: '' operationId: list-dbaas-integration-settings /dbaas-thanos/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-thanos-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS Thanos user operationId: reveal-dbaas-thanos-user-password /dbaas-settings-pg: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: pg: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: postgresql.conf configuration values pglookout: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: PGLookout settings pgbouncer: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: PGBouncer connection pooling settings timescaledb: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: TimescaleDB extension configuration values description: Get DBaaS PostgreSQL settings parameters: [] summary: Get DBaaS PostgreSQL settings operationId: get-dbaas-settings-pg /dbaas-valkey/{name}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a Valkey service operationId: delete-dbaas-service-valkey get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-valkey' description: Get a DBaaS Valkey service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' operationId: get-dbaas-service-valkey post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS Valkey service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Valkey service requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server valkey-settings: $ref: '#/components/schemas/json-schema-valkey' description: Valkey.conf settings fork-from-service: $ref: '#/components/schemas/dbaas-service-name' description: Service to fork from recovery-backup-name: type: string minLength: 1 description: Name of a backup to recover from for services that support backup names required: - plan operationId: create-dbaas-service-valkey put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS Valkey service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server valkey-settings: $ref: '#/components/schemas/json-schema-valkey' description: Valkey.conf settings operationId: update-dbaas-service-valkey /dbaas-mysql/{name}/migration/stop: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Stop a DBaaS MySQL migration operationId: stop-dbaas-mysql-migration /dbaas-external-endpoints: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: dbaas-endpoints: type: array items: $ref: '#/components/schemas/dbaas-external-endpoint' description: '[BETA] List available external endpoints for integrations' parameters: [] summary: '' operationId: list-dbaas-external-endpoints /dbaas-kafka/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate Kafka maintenance update operationId: start-dbaas-kafka-maintenance /dbaas-postgres/{service-name}/connection-pool/{connection-pool-name}: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '' parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: connection-pool-name schema: $ref: '#/components/schemas/dbaas-pg-pool-name' summary: Update a DBaaS PostgreSQL connection pool requestBody: required: true content: application/json: schema: type: object properties: database-name: $ref: '#/components/schemas/dbaas-database-name' description: Service database name mode: $ref: '#/components/schemas/enum-pg-pool-mode' description: PGBouncer pool mode size: $ref: '#/components/schemas/dbaas-pg-pool-size' description: Size of PGBouncer's PostgreSQL side connection pool username: $ref: '#/components/schemas/dbaas-pg-pool-username' description: Pool username operationId: update-dbaas-pg-connection-pool delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '' parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: connection-pool-name schema: $ref: '#/components/schemas/dbaas-pg-pool-name' summary: Delete a DBaaS PostgreSQL connection pool operationId: delete-dbaas-pg-connection-pool /dbaas-thanos/{name}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-thanos' description: Get a DBaaS Thanos service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' operationId: get-dbaas-service-thanos post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS Thanos service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Thanos service requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections thanos-settings: $ref: '#/components/schemas/json-schema-thanos' description: Thanos specific settings required: - plan operationId: create-dbaas-service-thanos put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS Thanos service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections thanos-settings: $ref: '#/components/schemas/json-schema-thanos' description: Thanos specific settings operationId: update-dbaas-service-thanos delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a Thanos service operationId: delete-dbaas-service-thanos /dbaas-migration-status/{name}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-migration-status' description: Get a DBaaS migration status parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS migration status operationId: get-dbaas-migration-status /dbaas-mysql/{service-name}/user/{username}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Delete a DBaaS MySQL user operationId: delete-dbaas-mysql-user /dbaas-service/{name}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Delete a DBaaS service parameters: - in: path required: true name: name schema: type: string summary: Delete a DBaaS service operationId: delete-dbaas-service /dbaas-mysql/{service-name}/database: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS MySQL database requestBody: required: true content: application/json: schema: type: object properties: database-name: $ref: '#/components/schemas/dbaas-database-name' description: Service database name required: - database-name operationId: create-dbaas-mysql-database /dbaas-settings-kafka: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: kafka: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Kafka broker configuration values kafka-connect: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Kafka Connect configuration values kafka-rest: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Kafka REST configuration schema-registry: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: Schema Registry configuration description: Get DBaaS Kafka settings parameters: [] summary: Get DBaaS Kafka settings operationId: get-dbaas-settings-kafka /dbaas-postgres/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-postgres-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS Postgres user operationId: reveal-dbaas-postgres-user-password /dbaas-settings-opensearch: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: type: object properties: settings: type: object properties: opensearch: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: OpenSearch configuration values description: Get DBaaS OpenSearch settings parameters: [] summary: Get DBaaS OpenSearch settings operationId: get-dbaas-settings-opensearch /dbaas-external-endpoint/{source-service-name}/attach: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create a new DBaaS connection between a DBaaS service and an external service' parameters: - in: path required: true name: source-service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: dest-endpoint-id: type: string format: uuid description: External endpoint id type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External endpoint type required: - dest-endpoint-id - type operationId: attach-dbaas-service-to-endpoint /dbaas-grafana/{name}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a Grafana service operationId: delete-dbaas-service-grafana get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-grafana' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS Grafana service operationId: get-dbaas-service-grafana put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Update a DBaaS Grafana service requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off grafana-settings: $ref: '#/components/schemas/json-schema-grafana' description: Grafana specific settings ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections operationId: update-dbaas-service-grafana post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS Grafana service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings plan: type: string maxLength: 128 minLength: 1 description: Subscription plan termination-protection: type: boolean description: Service is protected against termination and powering off fork-from-service: $ref: '#/components/schemas/dbaas-service-name' description: Service to fork from grafana-settings: $ref: '#/components/schemas/json-schema-grafana' description: Grafana specific settings ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections required: - plan operationId: create-dbaas-service-grafana /dbaas-external-endpoint-rsyslog/{endpoint-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Delete RSyslog external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: delete-dbaas-external-endpoint-rsyslog put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Update RSyslog external integration endpoint' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-rsyslog-input-update' operationId: update-dbaas-external-endpoint-rsyslog get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-external-endpoint-rsyslog-output' description: '[BETA] Get RSyslog external integration endpoint settings' parameters: - in: path required: true name: endpoint-id schema: type: string format: uuid summary: '' operationId: get-dbaas-external-endpoint-rsyslog /dbaas-external-endpoint-elasticsearch/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create ElasticSearch Logs external integration endpoint' parameters: - in: path required: true name: name schema: type: string summary: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/dbaas-endpoint-elasticsearch-input-create' operationId: create-dbaas-external-endpoint-elasticsearch /dbaas-opensearch/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate OpenSearch maintenance update operationId: start-dbaas-opensearch-maintenance /dbaas-kafka/{name}/acl-config: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-kafka-acls' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get DBaaS kafka ACL configuration operationId: get-dbaas-kafka-acl-config /dbaas-kafka/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS Kafka user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-kafka-user-password /dbaas-opensearch/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-opensearch-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS OpenSearch user operationId: reveal-dbaas-opensearch-user-password /dbaas-valkey/{name}/maintenance/start: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Initiate Valkey maintenance update operationId: start-dbaas-valkey-maintenance /dbaas-opensearch/{name}: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Create a DBaaS OpenSearch service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS OpenSearch service requestBody: required: true content: application/json: schema: type: object properties: max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep before deleting the oldest one keep-index-refresh-interval: type: boolean description: Aiven automation resets index.refresh_interval to default value for every index to be sure that indices are always visible to search. If it doesn't fit your case, you can disable this by setting up this flag to true. ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' termination-protection: type: boolean description: Service is protected against termination and powering off fork-from-service: $ref: '#/components/schemas/dbaas-service-name' description: Service to fork from index-patterns: type: array items: type: object properties: max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep sorting-algorithm: type: string enum: - alphabetical - creation_date description: Deletion sorting algorithm pattern: type: string maxLength: 1024 description: fnmatch pattern description: 'Allows you to create glob style patterns and set a max number of indexes matching this pattern you want to keep. Creating indexes exceeding this value will cause the oldest one to get deleted. You could for example create a pattern looking like ''logs.?'' and then create index logs.1, logs.2 etc, it will delete logs.1 once you create logs.6. Do note ''logs.?'' does not apply to logs.10. Note: Setting max_index_count to 0 will do nothing and the pattern gets ignored.' maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings index-template: type: object properties: mapping-nested-objects-limit: type: integer format: int64 minimum: 0 maximum: 100000 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects. Default is 10000. number-of-replicas: type: integer format: int64 minimum: 0 maximum: 29 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The number of replicas each primary shard has. number-of-shards: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: The number of primary shards that an index should have. description: Template settings for all new indexes opensearch-settings: $ref: '#/components/schemas/json-schema-opensearch' description: OpenSearch-specific settings version: type: string minLength: 1 description: OpenSearch major version recovery-backup-name: type: string minLength: 1 description: Name of a backup to recover from for services that support backup names plan: type: string maxLength: 128 minLength: 1 description: Subscription plan opensearch-dashboards: type: object properties: opensearch-request-timeout: type: integer format: int64 minimum: 5000 maximum: 120000 exclusiveMinimum: false exclusiveMaximum: false description: 'Timeout in milliseconds for requests made by OpenSearch Dashboards towards OpenSearch (default: 30000)' enabled: type: boolean description: 'Enable or disable OpenSearch Dashboards (default: true)' max-old-space-size: type: integer format: int64 minimum: 64 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: 'Limits the maximum amount of memory (in MiB) the OpenSearch Dashboards process can use. This sets the max_old_space_size option of the nodejs running the OpenSearch Dashboards. Note: the memory reserved by OpenSearch Dashboards is not available for OpenSearch. (default: 128)' description: OpenSearch Dashboards settings required: - plan operationId: create-dbaas-service-opensearch get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-opensearch' description: Get a DBaaS OpenSearch service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS OpenSearch service operationId: get-dbaas-service-opensearch delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a OpenSearch service operationId: delete-dbaas-service-opensearch put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS OpenSearch service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Update a DBaaS OpenSearch service requestBody: required: true content: application/json: schema: type: object properties: max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep before deleting the oldest one keep-index-refresh-interval: type: boolean description: Aiven automation resets index.refresh_interval to default value for every index to be sure that indices are always visible to search. If it doesn't fit your case, you can disable this by setting up this flag to true. ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' termination-protection: type: boolean description: Service is protected against termination and powering off index-patterns: type: array items: type: object properties: max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep sorting-algorithm: type: string enum: - alphabetical - creation_date description: Deletion sorting algorithm pattern: type: string maxLength: 1024 description: fnmatch pattern description: 'Allows you to create glob style patterns and set a max number of indexes matching this pattern you want to keep. Creating indexes exceeding this value will cause the oldest one to get deleted. You could for example create a pattern looking like ''logs.?'' and then create index logs.1, logs.2 etc, it will delete logs.1 once you create logs.6. Do note ''logs.?'' does not apply to logs.10. Note: Setting max_index_count to 0 will do nothing and the pattern gets ignored.' maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings index-template: type: object properties: mapping-nested-objects-limit: type: integer format: int64 minimum: 0 maximum: 100000 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects. Default is 10000. number-of-replicas: type: integer format: int64 minimum: 0 maximum: 29 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The number of replicas each primary shard has. number-of-shards: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: The number of primary shards that an index should have. description: Template settings for all new indexes opensearch-settings: $ref: '#/components/schemas/json-schema-opensearch' description: OpenSearch-specific settings version: type: string description: Version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan opensearch-dashboards: type: object properties: opensearch-request-timeout: type: integer format: int64 minimum: 5000 maximum: 120000 exclusiveMinimum: false exclusiveMaximum: false description: 'Timeout in milliseconds for requests made by OpenSearch Dashboards towards OpenSearch (default: 30000)' enabled: type: boolean description: 'Enable or disable OpenSearch Dashboards (default: true)' max-old-space-size: type: integer format: int64 minimum: 64 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: 'Limits the maximum amount of memory (in MiB) the OpenSearch Dashboards process can use. This sets the max_old_space_size option of the nodejs running the OpenSearch Dashboards. Note: the memory reserved by OpenSearch Dashboards is not available for OpenSearch. (default: 128)' description: OpenSearch Dashboards settings operationId: update-dbaas-service-opensearch /dbaas-external-endpoint/{source-service-name}/detach: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Detach a DBaaS external integration from a service' parameters: - in: path required: true name: source-service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: '' requestBody: required: true content: application/json: schema: type: object properties: integration-id: type: string format: uuid description: External Integration ID required: - integration-id operationId: detach-dbaas-service-from-endpoint /dbaas-valkey/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-user-valkey-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reveal the secrets of a DBaaS Valkey user operationId: reveal-dbaas-valkey-user-password /dbaas-postgres/{name}: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: Update a DBaaS PostgreSQL service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Update a DBaaS PostgreSQL service requestBody: required: true content: application/json: schema: type: object properties: pgbouncer-settings: $ref: '#/components/schemas/json-schema-pgbouncer' description: PGBouncer connection pooling settings backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. variant: $ref: '#/components/schemas/enum-pg-variant' description: Variant of the PostgreSQL service, may affect the features that are exposed by default timescaledb-settings: $ref: '#/components/schemas/json-schema-timescaledb' description: TimescaleDB extension configuration values ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' termination-protection: type: boolean description: Service is protected against termination and powering off synchronous-replication: $ref: '#/components/schemas/enum-pg-synchronous-replication' description: Synchronous replication type. Note that the service plan also needs to support synchronous replication. pglookout-settings: $ref: '#/components/schemas/json-schema-pglookout' description: PGLookout settings maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings version: type: string description: Version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan work-mem: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: Sets the maximum amount of memory to be used by a query operation (such as a sort or hash table) before writing to temporary disk files, in MB. Default is 1MB + 0.075% of total RAM (up to 32MB). shared-buffers-percentage: type: integer format: int64 minimum: 20 maximum: 60 exclusiveMinimum: false exclusiveMaximum: false description: Percentage of total RAM that the database server uses for shared memory buffers. Valid range is 20-60 (float), which corresponds to 20% - 60%. This setting adjusts the shared_buffers configuration value. pg-settings: $ref: '#/components/schemas/json-schema-pg' description: PostgreSQL-specific settings migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server operationId: update-dbaas-service-pg get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-service-pg' description: Get a DBaaS PostgreSQL service parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS PostgreSQL service operationId: get-dbaas-service-pg post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS PostgreSQL service requestBody: required: true content: application/json: schema: type: object properties: pgbouncer-settings: $ref: '#/components/schemas/json-schema-pgbouncer' description: PGBouncer connection pooling settings backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. variant: $ref: '#/components/schemas/enum-pg-variant' description: Variant of the PostgreSQL service, may affect the features that are exposed by default integrations: type: array items: type: object properties: type: type: string enum: - read_replica description: Integration type source-service: $ref: '#/components/schemas/dbaas-service-name' description: A source service dest-service: $ref: '#/components/schemas/dbaas-service-name' description: A destination service settings: type: object description: Integration settings required: - type description: Service integrations to be enabled when creating the service. timescaledb-settings: $ref: '#/components/schemas/json-schema-timescaledb' description: TimescaleDB extension configuration values ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' termination-protection: type: boolean description: Service is protected against termination and powering off fork-from-service: $ref: '#/components/schemas/dbaas-service-name' description: Service to fork from synchronous-replication: $ref: '#/components/schemas/enum-pg-synchronous-replication' description: Synchronous replication type. Note that the service plan also needs to support synchronous replication. recovery-backup-time: type: string minLength: 1 description: ISO time of a backup to recover from for services that support arbitrary times pglookout-settings: $ref: '#/components/schemas/json-schema-pglookout' description: PGLookout settings maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC required: - dow - time description: Automatic maintenance settings admin-username: type: string maxLength: 64 minLength: 1 pattern: ^[_A-Za-z0-9][-._A-Za-z0-9]{0,63}$ description: Custom username for admin user. This must be set only when a new service is being created. version: $ref: '#/components/schemas/dbaas-pg-target-versions' description: PostgreSQL major version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan work-mem: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: Sets the maximum amount of memory to be used by a query operation (such as a sort or hash table) before writing to temporary disk files, in MB. Default is 1MB + 0.075% of total RAM (up to 32MB). shared-buffers-percentage: type: integer format: int64 minimum: 20 maximum: 60 exclusiveMinimum: false exclusiveMaximum: false description: Percentage of total RAM that the database server uses for shared memory buffers. Valid range is 20-60 (float), which corresponds to 20% - 60%. This setting adjusts the shared_buffers configuration value. pg-settings: $ref: '#/components/schemas/json-schema-pg' description: PostgreSQL-specific settings admin-password: type: string maxLength: 256 minLength: 8 pattern: ^[a-zA-Z0-9-_]+$ description: Custom password for admin user. Defaults to random string. This must be set only when a new service is being created. migration: type: object properties: host: type: string maxLength: 255 minLength: 1 description: Hostname or IP address of the server where to migrate data from port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number of the server where to migrate data from password: type: string maxLength: 255 minLength: 1 description: Password for authentication with the server where to migrate data from ssl: type: boolean description: The server where to migrate data from is secured with SSL username: type: string maxLength: 255 minLength: 1 description: User name for authentication with the server where to migrate data from dbname: type: string maxLength: 63 minLength: 1 description: Database name for bootstrapping the initial connection ignore-dbs: type: string maxLength: 2048 minLength: 1 description: Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment) method: $ref: '#/components/schemas/enum-migration-method' description: The migration method to be used required: - host - port description: Migrate data from existing server required: - plan operationId: create-dbaas-service-pg delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: type: string summary: Delete a Postgres service operationId: delete-dbaas-service-pg /dbaas-valkey/{service-name}/user: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS Valkey user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username access-control: $ref: '#/components/schemas/dbaas-valkey-user-access-control' required: - username operationId: create-dbaas-valkey-user get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-valkey-users' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: List DBaaS Valkey users with ACL configuration operationId: list-dbaas-valkey-users /dbaas-integration: post: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: '[BETA] Create a new DBaaS integration between two services' parameters: [] summary: '' requestBody: required: true content: application/json: schema: type: object properties: integration-type: $ref: '#/components/schemas/enum-integration-types' description: Integration type source-service: $ref: '#/components/schemas/dbaas-service-name' description: A source service dest-service: $ref: '#/components/schemas/dbaas-service-name' description: A destination service settings: type: object description: Integration settings required: - integration-type - source-service - dest-service operationId: create-dbaas-integration /dbaas-task/{service}/{id}: get: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/dbaas-task' description: Get a DBaaS task parameters: - in: path required: true name: service schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: id schema: type: string format: uuid summary: Get a DBaaS task operationId: get-dbaas-task /dbaas-kafka/{name}/topic/acl-config/{acl-id}: delete: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: acl-id schema: $ref: '#/components/schemas/dbaas-kafka-acl-id' summary: Delete a Kafka ACL entry operationId: delete-dbaas-kafka-topic-acl-config /dbaas-postgres/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/operation' description: If no password is provided one will be generated automatically. parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' - in: path required: true name: username schema: $ref: '#/components/schemas/dbaas-user-username' summary: Reset the credentials of a DBaaS Postgres user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-postgres-user-password components: schemas: enum-integration-types: type: string enum: - datasource - logs - metrics dbaas-endpoint-datadog-input-create: type: object properties: settings: type: object properties: datadog-api-key: type: string maxLength: 256 minLength: 1 pattern: ^[A-Za-z0-9]{1,256}$ description: Datadog API key site: $ref: '#/components/schemas/enum-datadog-site' description: Datadog intake site. Defaults to datadoghq.com datadog-tags: type: array items: $ref: '#/components/schemas/dbaas-datadog-tag' description: Custom tags provided by user disable-consumer-stats: type: boolean description: Disable kafka consumer group metrics. Applies only when attached to kafka services. kafka-consumer-check-instances: type: integer format: int64 minimum: 1 maximum: 100 exclusiveMinimum: false exclusiveMaximum: false description: Number of separate instances to fetch kafka consumer statistics with. Applies only when attached to kafka services. kafka-consumer-stats-timeout: type: integer format: int64 minimum: 2 maximum: 300 exclusiveMinimum: false exclusiveMaximum: false description: Number of seconds that datadog will wait to get consumer statistics from brokers. Applies only when attached to kafka services. max-partition-contexts: type: integer format: int64 minimum: 200 maximum: 200000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of partition contexts to send. Applies only when attached to kafka services. required: - datadog-api-key - site dbaas-postgres-users: type: object properties: users: type: array items: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username allow-replication: type: boolean required: - username enum-external-endpoint-types: type: string enum: - prometheus - opensearch - rsyslog - datadog - elasticsearch dbaas-service-logs: type: object properties: offset: type: string first-log-offset: type: string logs: type: array items: type: object properties: unit: type: string time: type: string message: type: string node: type: string dbaas-external-integration: type: object properties: description: type: string description: Description of the integration dest-endpoint-name: type: string description: External destination endpoint name dest-endpoint-id: type: string description: External destination endpoint id integration-id: type: string format: uuid description: Endpoint integration UUID status: type: string description: Integration status source-service-name: type: string description: DBaaS source service name source-service-type: $ref: '#/components/schemas/dbaas-service-type-name' description: DBaaS service type type: $ref: '#/components/schemas/enum-external-endpoint-types' description: Integration Type required: - description - source-service-name - source-service-type - type description: Integrations with other services dbaas-valkey-users: type: object properties: users: type: array items: $ref: '#/components/schemas/dbaas-valkey-user' dbaas-service-valkey: type: object properties: updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: uri: type: array items: type: string password: type: string slave: type: array items: type: string description: Valkey connection information properties node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service valkey-settings: $ref: '#/components/schemas/json-schema-valkey' description: Valkey-specific settings ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route ssl: type: boolean description: "Whether the endpoint is encrypted or accepts plaintext.\n By default endpoints are always encrypted and\n this property is only included for service components that may disable encryption." usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs version: type: string description: Valkey version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: type: object properties: type: type: string username: type: string password: type: string access-control: type: object properties: categories: type: array items: type: string channels: type: array items: type: string commands: type: array items: type: string keys: type: array items: type: string description: List of service users required: - name - plan - type - prometheus-uri enum-component-route: type: string enum: - dynamic - private - public - privatelink dbaas-external-endpoint-rsyslog-output: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id settings: $ref: '#/components/schemas/dbaas-endpoint-rsyslog-optional-fields' description: External integration RSyslog configuration dbaas-plan: type: object properties: node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: DBaaS plan node count backup-config: $ref: '#/components/schemas/dbaas-backup-config' readOnly: true description: DBaaS plan backup config node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: DBaaS plan CPU count per node family: type: string description: Instance family subset which the service can use disk-space: type: integer format: int64 readOnly: true description: DBaaS plan disk space authorized: type: boolean readOnly: true description: Requires authorization or publicly available name: type: string readOnly: true description: DBaaS plan name max-memory-percent: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: DBaaS plan max memory allocated percentage zones: type: array items: type: string description: Zones where the plan is available node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: DBaaS plan memory count per node description: DBaaS plan enum-pg-variant: type: string enum: - timescale - aiven dbaas-pg-pool-username: type: string maxLength: 64 minLength: 1 dbaas-user-valkey-secrets: type: object properties: username: type: string description: Valkey username password: type: string description: Valkey password description: Valkey User secrets dbaas-endpoint-opensearch-output: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id settings: $ref: '#/components/schemas/dbaas-endpoint-opensearch-optional-fields' description: External integration OpenSearch logs configuration dbaas-valkey-user-access-control: type: object properties: categories: type: array items: type: string description: 'Use +@ to allow and -@ to disallow. Separate entries with a single space. Example: +@all -@dangerous.' channels: type: array items: type: string description: 'Patterns use standard glob syntax and must be separated by a single space. Example: ~* &events.' commands: type: array items: type: string description: 'Use + to allow and - to disallow. You can also use @. Separate entries with a single space. Example: +@all -flushall.' keys: type: array items: type: string description: 'Patterns use standard glob syntax and must be separated by a single space. Example: cache:* session:*.' enum-pg-synchronous-replication: type: string enum: - quorum - 'off' dbaas-pg-pool-name: type: string maxLength: 63 minLength: 1 dbaas-service-type: type: object properties: name: $ref: '#/components/schemas/dbaas-service-type-name' readOnly: true description: DbaaS service name available-versions: type: array items: type: string readOnly: true description: DbaaS service available versions default-version: type: string readOnly: true description: DbaaS service default version description: type: string readOnly: true description: DbaaS service description plans: type: array items: $ref: '#/components/schemas/dbaas-plan' readOnly: true description: DbaaS service plans description: DBaaS service json-schema-timescaledb: description: System-wide settings for the timescaledb extension properties: max_background_workers: default: 16 description: The number of background workers for timescaledb operations. You should configure this setting to the sum of your number of databases and the total number of concurrent background workers you want running at any given point in time. Changing this parameter causes a service restart. example: 8 maximum: 4096 minimum: 1 title: timescaledb.max_background_workers type: integer title: TimescaleDB extension configuration values type: object dbaas-service-common: type: object properties: updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running name: $ref: '#/components/schemas/dbaas-service-name' description: Service name type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan required: - name - plan - type dbaas-service-notification: type: object properties: level: type: string enum: - warning - notice description: Notification level message: type: string maxLength: 1024 minLength: 1 description: Human notification message type: type: string enum: - service_powered_off_removal - service_end_of_life description: Notification type metadata: type: object description: Notification type required: - level - message - type - metadata description: Service notifications dbaas-service-grafana: type: object properties: description: type: string description: DbaaS service description updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: uri: type: string username: type: string password: type: string description: Grafana connection information properties node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service grafana-settings: $ref: '#/components/schemas/json-schema-grafana' description: Grafana specific settings ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs version: type: string description: Grafana version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: type: object properties: type: type: string username: type: string password: type: string description: List of service users required: - name - plan - type - prometheus-uri dbaas-service-name: type: string maxLength: 63 minLength: 0 dbaas-service-backup: type: object properties: backup-name: type: string description: Internal name of this backup backup-time: type: string format: date-time description: Backup timestamp (ISO 8601) data-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Backup's original size before compression required: - backup-name - backup-time - data-size description: List of backups for the service json-schema-pglookout: description: System-wide settings for pglookout. properties: max_failover_replication_time_lag: default: 60 description: Number of seconds of master unavailability before triggering database failover to standby maximum: 9223372036854775807 minimum: 10 title: Max Failover Replication Time Lag type: integer title: PGLookout settings type: object enum-mysql-authentication-plugin: type: string enum: - caching_sha2_password - mysql_native_password dbaas-backup-config: type: object properties: max-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Maximum number of backups to keep. Zero when no backups are created. interval: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: "The interval, in hours, at which backups are generated.\n For some services, like PostgreSQL, this is the interval\n at which full snapshots are taken and continuous incremental\n backup stream is maintained in addition to that." recovery-mode: type: string readOnly: true description: "Mechanism how backups can be restored. 'regular'\n means a backup is restored as is so that the system\n is restored to the state it was when the backup was generated.\n 'pitr' means point-in-time-recovery, which allows restoring the system to any state since the first available full snapshot." frequent-interval-minutes: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Interval of taking a frequent backup in service types supporting different backup schedules frequent-oldest-age-minutes: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Maximum age of the oldest frequent backup in service types supporting different backup schedules infrequent-interval-minutes: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Interval of taking a frequent backup in service types supporting different backup schedules infrequent-oldest-age-minutes: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Maximum age of the oldest infrequent backup in service types supporting different backup schedules description: DBaaS plan backup config dbaas-user-postgres-secrets: type: object properties: username: type: string description: Postgres username password: type: string description: Postgres password description: Postgres User secrets dbaas-endpoint-prometheus-payload: type: object properties: settings: type: object properties: basic-auth-password: type: string maxLength: 64 minLength: 8 description: Prometheus basic authentication password basic-auth-username: type: string maxLength: 32 minLength: 5 pattern: ^[a-z0-9\-@_]{5,32}$ description: Prometheus basic authentication username dbaas-endpoint-elasticsearch-input-update: type: object properties: settings: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate url: type: string maxLength: 2048 minLength: 12 description: Elasticsearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: Elasticsearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: Elasticsearch request timeout limit dbaas-datadog-tag: type: object properties: comment: type: string maxLength: 1024 description: Optional tag explanation tag: type: string maxLength: 200 minLength: 1 description: Tag value required: - tag dbaas-opensearch-acl-config: type: object properties: acls: type: array items: type: object properties: rules: type: array items: type: object properties: index: type: string maxLength: 249 description: OpenSearch index pattern permission: $ref: '#/components/schemas/enum-opensearch-rule-permission' description: OpenSearch permission required: - index username: $ref: '#/components/schemas/dbaas-user-username' description: List of OpenSearch ACLs acl-enabled: type: boolean description: Enable OpenSearch ACLs. When disabled authenticated service users have unrestricted access. extended-acl-enabled: type: boolean description: Enable to enforce index rules in a limited fashion for requests that use the _mget, _msearch, and _bulk APIs json-schema-opensearch: additionalProperties: false properties: thread_pool_search_throttled_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: search_throttled thread pool size type: integer thread_pool_analyze_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: analyze thread pool size type: integer thread_pool_get_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: get thread pool size type: integer thread_pool_get_queue_size: description: Size for the thread pool queue. See documentation for exact details. maximum: 2000 minimum: 10 title: get thread pool queue size type: integer indices_memory_max_index_buffer_size: description: Absolute value. Default is unbound. Doesn't work without indices.memory.index_buffer_size. Maximum amount of heap used for query cache, an absolute indices.memory.index_buffer_size maximum hard limit. maximum: 2048 minimum: 3 title: indices.memory.max_index_buffer_size type: integer indices_recovery_max_concurrent_file_chunks: description: Number of file chunks sent in parallel for each recovery. Defaults to 2. maximum: 5 minimum: 2 title: indices.recovery.max_concurrent_file_chunks type: integer indices_queries_cache_size: description: Percentage value. Default is 10%. Maximum amount of heap used for query cache. This is an expert setting. Too low value will decrease query performance and increase performance for other operations; too high value will cause issues with other OpenSearch functionality. maximum: 40 minimum: 3 title: indices.queries.cache.size type: integer search_backpressure: additionalProperties: false properties: mode: description: The search backpressure mode. Valid values are monitor_only, enforced, or disabled. Default is monitor_only enum: - monitor_only - enforced - disabled title: The search backpressure mode type: string node_duress: additionalProperties: false properties: cpu_threshold: description: The CPU usage threshold (as a percentage) required for a node to be considered to be under duress. Default is 0.9 maximum: 1.0 minimum: 0.0 title: The CPU usage threshold (as a percentage) required for a node to be considered to be under duress type: number heap_threshold: description: The heap usage threshold (as a percentage) required for a node to be considered to be under duress. Default is 0.7 maximum: 1.0 minimum: 0.0 title: The heap usage threshold (as a percentage) required for a node to be considered to be under duress type: number num_successive_breaches: description: The number of successive limit breaches after which the node is considered to be under duress. Default is 3 minimum: 1 title: The number of successive limit breaches after which the node is considered to be under duress type: integer title: Node duress settings type: object search_shard_task: additionalProperties: false properties: total_heap_percent_threshold: description: The heap usage threshold (as a percentage) required for the sum of heap usages of all search shard tasks before cancellation is applied. Default is 0.5 maximum: 1.0 minimum: 0.0 title: The heap usage threshold (as a percentage) required for the sum of heap usages of all search shard tasks before cancellation is applied type: number elapsed_time_millis_threshold: description: The elapsed time threshold (in milliseconds) required for a single search shard task before it is considered for cancellation. Default is 30000 minimum: 0 title: The elapsed time threshold (in milliseconds) required for a single search shard task before it is considered for cancellation type: integer cancellation_rate: description: The maximum number of tasks to cancel per millisecond of elapsed time. Default is 0.003 minimum: 0.0 title: The maximum number of tasks to cancel per millisecond of elapsed time. type: number heap_variance: description: The minimum variance required for a single search shard task’s heap usage compared to the rolling average of previously completed tasks before it is considered for cancellation. Default is 2.0 minimum: 0.0 title: The minimum variance required for a single search shard task’s heap usage compared to the rolling average of previously completed tasks before it is considered for cancellation type: number heap_moving_average_window_size: description: The number of previously completed search shard tasks to consider when calculating the rolling average of heap usage. Default is 100 minimum: 0 title: The number of previously completed search shard tasks to consider when calculating the rolling average of heap usage type: integer cancellation_ratio: description: The maximum number of tasks to cancel, as a percentage of successful task completions. Default is 0.1 maximum: 1.0 minimum: 0.0 title: The maximum number of tasks to cancel type: number heap_percent_threshold: description: The heap usage threshold (as a percentage) required for a single search shard task before it is considered for cancellation. Default is 0.5 maximum: 1.0 minimum: 0.0 title: The heap usage threshold (as a percentage) required for a single search shard task before it is considered for cancellation type: number cpu_time_millis_threshold: description: The CPU usage threshold (in milliseconds) required for a single search shard task before it is considered for cancellation. Default is 15000 minimum: 0 title: The CPU usage threshold (in milliseconds) required for a single search shard task before it is considered for cancellation type: integer cancellation_burst: description: The maximum number of search tasks to cancel in a single iteration of the observer thread. Default is 10.0 minimum: 1.0 title: The maximum number of search tasks to cancel in a single iteration of the observer thread type: number title: Search shard settings type: object search_task: additionalProperties: false properties: total_heap_percent_threshold: description: The heap usage threshold (as a percentage) required for the sum of heap usages of all search tasks before cancellation is applied. Default is 0.5 maximum: 1.0 minimum: 0.0 title: The heap usage threshold (as a percentage) required for the sum of heap usages of all search tasks before cancellation is applied type: number elapsed_time_millis_threshold: description: The elapsed time threshold (in milliseconds) required for an individual parent task before it is considered for cancellation. Default is 45000 minimum: 0 title: The elapsed time threshold (in milliseconds) required for an individual parent task before it is considered for cancellation type: integer cancellation_rate: description: The maximum number of search tasks to cancel per millisecond of elapsed time. Default is 0.003 minimum: 0.0 title: The maximum number of search tasks to cancel per millisecond of elapsed time type: number heap_variance: description: The heap usage variance required for an individual parent task before it is considered for cancellation. A task is considered for cancellation when taskHeapUsage is greater than or equal to heapUsageMovingAverage * variance. Default is 2.0 minimum: 0.0 title: The heap usage variance required for an individual parent task before it is considered for cancellation type: number heap_moving_average_window_size: description: The window size used to calculate the rolling average of the heap usage for the completed parent tasks. Default is 10 minimum: 0 title: The window size used to calculate the rolling average of the heap usage for the completed parent tasks type: integer cancellation_ratio: description: The maximum number of search tasks to cancel, as a percentage of successful search task completions. Default is 0.1 maximum: 1.0 minimum: 0.0 title: The maximum number of search tasks to cancel, as a percentage of successful search task completions type: number heap_percent_threshold: description: The heap usage threshold (as a percentage) required for an individual parent task before it is considered for cancellation. Default is 0.2 maximum: 1.0 minimum: 0.0 title: The heap usage threshold (as a percentage) required for an individual parent task before it is considered for cancellation type: number cpu_time_millis_threshold: description: The CPU usage threshold (in milliseconds) required for an individual parent task before it is considered for cancellation. Default is 30000 minimum: 0 title: The CPU usage threshold (in milliseconds) required for an individual parent task before it is considered for cancellation type: integer cancellation_burst: description: The maximum number of search tasks to cancel in a single iteration of the observer thread. Default is 5.0 minimum: 1.0 title: The maximum number of search tasks to cancel in a single iteration of the observer thread type: number title: Search task settings type: object title: Search Backpressure Settings type: object shard_indexing_pressure: additionalProperties: false properties: primary_parameter: additionalProperties: false properties: shard: additionalProperties: false properties: min_limit: description: Specify the minimum assigned quota for a new shard in any role (coordinator, primary, or replica). Shard indexing backpressure increases or decreases this allocated quota based on the inflow of traffic for the shard. Default is 0.001 minimum: 0.0 title: Shard min limit type: number type: object node: additionalProperties: false properties: soft_limit: description: Define the percentage of the node-level memory threshold that acts as a soft indicator for strain on a node. Default is 0.7 minimum: 0.0 title: Node soft limit type: number type: object title: Primary parameter type: object operating_factor: additionalProperties: false properties: upper: description: Specify the upper occupancy limit of the allocated quota of memory for the shard. If the total memory usage of a shard is above this limit, shard indexing backpressure increases the current allocated memory for that shard. Default is 0.95 minimum: 0.0 title: Upper occupancy limit of the allocated quota of memory for the shard type: number optimal: description: Specify the optimal occupancy of the allocated quota of memory for the shard. If the total memory usage of a shard is at this level, shard indexing backpressure doesn’t change the current allocated memory for that shard. Default is 0.85 minimum: 0.0 title: Optimal occupancy of the allocated quota of memory for the shard type: number lower: description: Specify the lower occupancy limit of the allocated quota of memory for the shard. If the total memory usage of a shard is below this limit, shard indexing backpressure decreases the current allocated memory for that shard. Default is 0.75 minimum: 0.0 title: Lower occupancy limit of the allocated quota of memory for the shard type: number title: Operating factor type: object enforced: description: Run shard indexing backpressure in shadow mode or enforced mode. In shadow mode (value set as false), shard indexing backpressure tracks all granular-level metrics, but it doesn’t actually reject any indexing requests. In enforced mode (value set as true), shard indexing backpressure rejects any requests to the cluster that might cause a dip in its performance. Default is false title: Run shard indexing backpressure in shadow mode or enforced mode type: boolean enabled: description: Enable or disable shard indexing backpressure. Default is false title: Enable or disable shard indexing backpressure type: boolean title: Shard indexing back pressure settings type: object knn_memory_circuit_breaker_enabled: description: Enable or disable KNN memory circuit breaker. Defaults to true. example: true title: knn.memory.circuit_breaker.enabled type: boolean thread_pool_search_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: search thread pool size type: integer indices_memory_min_index_buffer_size: description: Absolute value. Default is 48mb. Doesn't work without indices.memory.index_buffer_size. Minimum amount of heap used for query cache, an absolute indices.memory.index_buffer_size minimal hard limit. maximum: 2048 minimum: 3 title: indices.memory.min_index_buffer_size type: integer indices_recovery_max_bytes_per_sec: description: Limits total inbound and outbound recovery traffic for each node. Applies to both peer recoveries as well as snapshot recoveries (i.e., restores from a snapshot). Defaults to 40mb maximum: 400 minimum: 40 title: indices.recovery.max_bytes_per_sec type: integer http_max_initial_line_length: description: The max length of an HTTP URL, in bytes example: 4096 maximum: 65536 minimum: 1024 title: http.max_initial_line_length type: integer enable_security_audit: default: false example: true title: Enable/Disable security audit type: boolean thread_pool_write_queue_size: description: Size for the thread pool queue. See documentation for exact details. maximum: 2000 minimum: 10 title: write thread pool queue size type: integer script_max_compilations_rate: description: Script compilation circuit breaker limits the number of inline script compilations within a period of time. Default is use-context example: 75/5m maxLength: 1024 title: Script max compilation rate - circuit breaker to prevent/minimize OOMs type: string search_max_buckets: description: Maximum number of aggregation buckets allowed in a single response. OpenSearch default value is used when this is not defined. example: 10000 maximum: 1000000 minimum: 1 nullable: true title: search.max_buckets type: integer reindex_remote_whitelist: description: Whitelisted addresses for reindexing. Changing this value will cause all OpenSearch instances to restart. items: example: anotherservice.aivencloud.com:12398 maxLength: 261 nullable: true title: Address (hostname:port or IP:port) type: string maxItems: 32 nullable: true title: reindex_remote_whitelist type: array override_main_response_version: description: Compatibility mode sets OpenSearch to report its version as 7.10 so clients continue to work. Default is false example: true title: compatibility.override_main_response_version type: boolean http_max_header_size: description: The max size of allowed headers, in bytes example: 8192 maximum: 262144 minimum: 1024 title: http.max_header_size type: integer email-sender: properties: email_sender_name: description: This should be identical to the Sender name defined in Opensearch dashboards example: alert-sender maxLength: 40 pattern: ^[a-zA-Z0-9-_]+$ title: Sender name placeholder to be used in Opensearch Dashboards and Opensearch keystore type: string email_sender_password: description: Sender password for Opensearch alerts to authenticate with SMTP server example: very-secure-mail-password maxLength: 1024 pattern: ^[^\x00-\x1F]+$ title: Sender password for Opensearch alerts to authenticate with SMTP server type: string email_sender_username: example: jane@example.com maxLength: 320 pattern: ^[^\x00-\x1F]+$ title: Sender username for Opensearch alerts type: string required: - email_sender_name - email_sender_password - email_sender_username title: Opensearch Email Sender Settings type: object indices_fielddata_cache_size: default: null description: Relative amount. Maximum amount of heap memory used for field data cache. This is an expert setting; decreasing the value too much will increase overhead of loading field data; too much memory used for field data cache will decrease amount of heap available for other operations. maximum: 100 minimum: 3 nullable: true title: indices.fielddata.cache.size type: integer action_destructive_requires_name: example: true nullable: true title: Require explicit index names when deleting type: boolean plugins_alerting_filter_by_backend_roles: description: Enable or disable filtering of alerting by backend roles. Requires Security plugin. Defaults to false example: false title: plugins.alerting.filter_by_backend_roles type: boolean indices_memory_index_buffer_size: description: Percentage value. Default is 10%. Total amount of heap used for indexing buffer, before writing segments to disk. This is an expert setting. Too low value will slow down indexing; too high value will increase indexing performance but causes performance issues for query performance. maximum: 40 minimum: 3 title: indices.memory.index_buffer_size type: integer thread_pool_force_merge_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: force_merge thread pool size type: integer auth_failure_listeners: additionalProperties: false properties: internal_authentication_backend_limiting: additionalProperties: false properties: allowed_tries: description: The number of login attempts allowed before login is blocked example: 10 maximum: 2147483647 minimum: 0 title: internal_authentication_backend_limiting.allowed_tries type: integer authentication_backend: description: The internal backend. Enter `internal` enum: - internal example: internal maxLength: 1024 title: internal_authentication_backend_limiting.authentication_backend type: string block_expiry_seconds: description: The duration of time that login remains blocked after a failed login example: 600 maximum: 2147483647 minimum: 0 title: internal_authentication_backend_limiting.block_expiry_seconds type: integer max_blocked_clients: description: The maximum number of blocked IP addresses example: 100000 maximum: 2147483647 minimum: 0 title: internal_authentication_backend_limiting.max_blocked_clients type: integer max_tracked_clients: description: The maximum number of tracked IP addresses that have failed login example: 100000 maximum: 2147483647 minimum: 0 title: internal_authentication_backend_limiting.max_tracked_clients type: integer time_window_seconds: description: The window of time in which the value for `allowed_tries` is enforced example: 3600 maximum: 2147483647 minimum: 0 title: internal_authentication_backend_limiting.time_window_seconds type: integer type: description: The type of rate limiting enum: - username example: username maxLength: 1024 title: internal_authentication_backend_limiting.type type: string title: Internal Authentication Backend Limiting type: object ip_rate_limiting: additionalProperties: false properties: allowed_tries: description: The number of login attempts allowed before login is blocked example: 10 maximum: 2147483647 minimum: 1 title: ip_rate_limiting.allowed_tries type: integer block_expiry_seconds: description: The duration of time that login remains blocked after a failed login example: 600 maximum: 36000 minimum: 1 title: ip_rate_limiting.block_expiry_seconds type: integer max_blocked_clients: description: The maximum number of blocked IP addresses example: 100000 maximum: 2147483647 minimum: 0 title: ip_rate_limiting.max_blocked_clients type: integer max_tracked_clients: description: The maximum number of tracked IP addresses that have failed login example: 100000 maximum: 2147483647 minimum: 0 title: ip_rate_limiting.max_tracked_clients type: integer time_window_seconds: description: The window of time in which the value for `allowed_tries` is enforced example: 3600 maximum: 36000 minimum: 1 title: ip_rate_limiting.time_window_seconds type: integer type: description: The type of rate limiting enum: - ip example: ip maxLength: 1024 title: ip_rate_limiting.type type: string title: IP address rate limiting settings type: object title: Opensearch Security Plugin Settings type: object ism-history: properties: ism_enabled: default: true example: true title: Specifies whether ISM is enabled or not type: boolean ism_history_enabled: default: true example: true title: Specifies whether audit history is enabled or not. The logs from ISM are automatically indexed to a logs document. type: boolean ism_history_max_age: default: 24 example: 24 maximum: 2147483647 minimum: 1 title: The maximum age before rolling over the audit history index in hours type: integer ism_history_max_docs: default: 2500000 example: 2500000 maximum: 9223372036854775807 minimum: 1 title: The maximum number of documents before rolling over the audit history index. type: integer ism_history_rollover_check_period: default: 8 example: 8 maximum: 2147483647 minimum: 1 title: The time between rollover checks for the audit history index in hours. type: integer ism_history_rollover_retention_period: default: 30 example: 30 maximum: 2147483647 minimum: 1 title: How long audit history indices are kept in days. type: integer required: - ism_enabled title: Opensearch ISM History Settings type: object cluster_routing_allocation_node_concurrent_recoveries: description: How many concurrent incoming/outgoing shard recoveries (normally replicas) are allowed to happen on a node. Defaults to 2. maximum: 16 minimum: 2 title: Concurrent incoming/outgoing shard recoveries per node type: integer thread_pool_analyze_queue_size: description: Size for the thread pool queue. See documentation for exact details. maximum: 2000 minimum: 10 title: analyze thread pool queue size type: integer action_auto_create_index_enabled: description: Explicitly allow or block automatic creation of indices. Defaults to true example: false title: action.auto_create_index type: boolean http_max_content_length: description: Maximum content length for HTTP requests to the OpenSearch HTTP API, in bytes. maximum: 2147483647 minimum: 1 title: http.max_content_length type: integer thread_pool_write_size: description: Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value. maximum: 128 minimum: 1 title: write thread pool size type: integer thread_pool_search_queue_size: description: Size for the thread pool queue. See documentation for exact details. maximum: 2000 minimum: 10 title: search thread pool queue size type: integer knn_memory_circuit_breaker_limit: description: Maximum amount of memory that can be used for KNN index. Defaults to 50% of the JVM heap size. example: 50 maximum: 100 minimum: 3 title: knn.memory.circuit_breaker.limit type: integer indices_query_bool_max_clause_count: description: Maximum number of clauses Lucene BooleanQuery can have. The default value (1024) is relatively high, and increasing it may cause performance issues. Investigate other approaches first before increasing this value. maximum: 4096 minimum: 64 title: indices.query.bool.max_clause_count type: integer thread_pool_search_throttled_queue_size: description: Size for the thread pool queue. See documentation for exact details. maximum: 2000 minimum: 10 title: search_throttled thread pool queue size type: integer cluster_max_shards_per_node: description: Controls the number of shards allowed in the cluster per data node example: 1000 maximum: 10000 minimum: 100 title: cluster.max_shards_per_node type: integer title: OpenSearch settings type: object dbaas-endpoint-elasticsearch-optional-fields: type: object properties: url: type: string maxLength: 2048 minLength: 12 description: Elasticsearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: Elasticsearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: Elasticsearch request timeout limit json-schema-kafka: additionalProperties: false properties: sasl_oauthbearer_expected_audience: description: The (optional) comma-delimited setting for the broker to use to verify that the JWT was issued for one of the expected audiences. maxLength: 128 pattern: ^[^\r\n]*$ title: sasl.oauthbearer.expected.audience type: string group_max_session_timeout_ms: description: The maximum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures. example: 1800000 maximum: 1800000 minimum: 0 title: group.max.session.timeout.ms type: integer log_flush_interval_messages: description: The number of messages accumulated on a log partition before messages are flushed to disk example: 9223372036854775807 maximum: 9223372036854775807 minimum: 1 title: log.flush.interval.messages type: integer sasl_oauthbearer_jwks_endpoint_url: description: 'OIDC JWKS endpoint URL. By setting this the SASL SSL OAuth2/OIDC authentication is enabled. See also other options for SASL OAuth2/OIDC. ' maxLength: 2048 title: sasl.oauthbearer.jwks.endpoint.url type: string max_connections_per_ip: description: The maximum number of connections allowed from each ip address (defaults to 2147483647). maximum: 2147483647 minimum: 256 title: max.connections.per.ip type: integer sasl_oauthbearer_expected_issuer: description: Optional setting for the broker to use to verify that the JWT was created by the expected issuer. maxLength: 128 pattern: ^[^\r\n]*$ title: sasl.oauthbearer.expected.issuer type: string log_index_size_max_bytes: description: The maximum size in bytes of the offset index example: 10485760 maximum: 104857600 minimum: 1048576 title: log.index.size.max.bytes type: integer auto_create_topics_enable: description: Enable auto creation of topics example: true title: auto.create.topics.enable type: boolean log_index_interval_bytes: description: The interval with which Kafka adds an entry to the offset index example: 4096 maximum: 104857600 minimum: 0 title: log.index.interval.bytes type: integer replica_fetch_max_bytes: description: The number of bytes of messages to attempt to fetch for each partition (defaults to 1048576). This is not an absolute maximum, if the first record batch in the first non-empty partition of the fetch is larger than this value, the record batch will still be returned to ensure that progress can be made. maximum: 104857600 minimum: 1048576 title: replica.fetch.max.bytes type: integer num_partitions: description: Number of partitions for autocreated topics maximum: 1000 minimum: 1 title: num.partitions type: integer transaction_state_log_segment_bytes: description: The transaction topic segment bytes should be kept relatively small in order to facilitate faster log compaction and cache loads (defaults to 104857600 (100 mebibytes)). example: 104857600 maximum: 2147483647 minimum: 1048576 title: transaction.state.log.segment.bytes type: integer replica_fetch_response_max_bytes: description: Maximum bytes expected for the entire fetch response (defaults to 10485760). Records are fetched in batches, and if the first record batch in the first non-empty partition of the fetch is larger than this value, the record batch will still be returned to ensure that progress can be made. As such, this is not an absolute maximum. maximum: 1048576000 minimum: 10485760 title: replica.fetch.response.max.bytes type: integer log_message_timestamp_type: description: Define whether the timestamp in the message is message create time or log append time. enum: - CreateTime - LogAppendTime title: log.message.timestamp.type type: string connections_max_idle_ms: description: 'Idle connections timeout: the server socket processor threads close the connections that idle for longer than this.' example: 540000 maximum: 3600000 minimum: 1000 title: connections.max.idle.ms type: integer log_flush_interval_ms: description: The maximum time in ms that a message in any topic is kept in memory before flushed to disk. If not set, the value in log.flush.scheduler.interval.ms is used maximum: 9223372036854775807 minimum: 0 title: log.flush.interval.ms type: integer log_preallocate: description: Should pre allocate file when create new segment? example: false title: log.preallocate type: boolean log_segment_delete_delay_ms: description: The amount of time to wait before deleting a file from the filesystem example: 60000 maximum: 3600000 minimum: 0 title: log.segment.delete.delay.ms type: integer message_max_bytes: description: The maximum size of message that the server can receive. example: 1048588 maximum: 100001200 minimum: 0 title: message.max.bytes type: integer group_initial_rebalance_delay_ms: description: The amount of time, in milliseconds, the group coordinator will wait for more consumers to join a new group before performing the first rebalance. A longer delay means potentially fewer rebalances, but increases the time until processing begins. The default value for this is 3 seconds. During development and testing it might be desirable to set this to 0 in order to not delay test execution time. example: 3000 maximum: 300000 minimum: 0 title: group.initial.rebalance.delay.ms type: integer log_local_retention_bytes: description: The maximum size of local log segments that can grow for a partition before it gets eligible for deletion. If set to -2, the value of log.retention.bytes is used. The effective value should always be less than or equal to log.retention.bytes value. maximum: 9223372036854775807 minimum: -2 title: log.local.retention.bytes type: integer log_roll_jitter_ms: description: The maximum jitter to subtract from logRollTimeMillis (in milliseconds). If not set, the value in log.roll.jitter.hours is used maximum: 9223372036854775807 minimum: 0 title: log.roll.jitter.ms type: integer transaction_remove_expired_transaction_cleanup_interval_ms: description: The interval at which to remove transactions that have expired due to transactional.id.expiration.ms passing (defaults to 3600000 (1 hour)). example: 3600000 maximum: 3600000 minimum: 600000 title: transaction.remove.expired.transaction.cleanup.interval.ms type: integer transaction_partition_verification_enable: description: Enable verification that checks that the partition has been added to the transaction before writing transactional records to the partition example: true title: transaction.partition.verification.enable type: boolean default_replication_factor: description: Replication factor for autocreated topics maximum: 10 minimum: 1 title: default.replication.factor type: integer log_roll_ms: description: The maximum time before a new log segment is rolled out (in milliseconds). maximum: 9223372036854775807 minimum: 1 title: log.roll.ms type: integer producer_purgatory_purge_interval_requests: description: The purge interval (in number of requests) of the producer request purgatory(defaults to 1000). maximum: 10000 minimum: 10 title: producer.purgatory.purge.interval.requests type: integer log_retention_bytes: description: The maximum size of the log before deleting messages maximum: 9223372036854775807 minimum: -1 title: log.retention.bytes type: integer min_insync_replicas: description: When a producer sets acks to 'all' (or '-1'), min.insync.replicas specifies the minimum number of replicas that must acknowledge a write for the write to be considered successful. example: 1 maximum: 7 minimum: 1 title: min.insync.replicas type: integer compression_type: description: Specify the final compression type for a given topic. This configuration accepts the standard compression codecs ('gzip', 'snappy', 'lz4', 'zstd'). It additionally accepts 'uncompressed' which is equivalent to no compression; and 'producer' which means retain the original compression codec set by the producer. enum: - gzip - snappy - lz4 - zstd - uncompressed - producer title: compression.type type: string log_message_timestamp_difference_max_ms: description: The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message maximum: 9223372036854775807 minimum: 0 title: log.message.timestamp.difference.max.ms type: integer log_local_retention_ms: description: The number of milliseconds to keep the local log segments before it gets eligible for deletion. If set to -2, the value of log.retention.ms is used. The effective value should always be less than or equal to log.retention.ms value. maximum: 9223372036854775807 minimum: -2 title: log.local.retention.ms type: integer log_message_downconversion_enable: description: 'This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests. ' example: true title: log.message.downconversion.enable type: boolean sasl_oauthbearer_sub_claim_name: description: Name of the scope from which to extract the subject claim from the JWT. Defaults to sub. maxLength: 128 pattern: ^[^\r\n]*$ title: sasl.oauthbearer.sub.claim.name type: string max_incremental_fetch_session_cache_slots: description: The maximum number of incremental fetch sessions that the broker will maintain. example: 1000 maximum: 10000 minimum: 1000 title: max.incremental.fetch.session.cache.slots type: integer log_retention_hours: description: The number of hours to keep a log file before deleting it maximum: 2147483647 minimum: -1 title: log.retention.hours type: integer group_min_session_timeout_ms: description: The minimum allowed session timeout for registered consumers. Longer timeouts give consumers more time to process messages in between heartbeats at the cost of a longer time to detect failures. example: 6000 maximum: 60000 minimum: 0 title: group.min.session.timeout.ms type: integer socket_request_max_bytes: description: The maximum number of bytes in a socket request (defaults to 104857600). maximum: 209715200 minimum: 10485760 title: socket.request.max.bytes type: integer log_segment_bytes: description: The maximum size of a single log file maximum: 1073741824 minimum: 10485760 title: log.segment.bytes type: integer log-cleanup-and-compaction: properties: log_cleaner_delete_retention_ms: description: How long are delete records retained? example: 86400000 maximum: 315569260000 minimum: 0 title: log.cleaner.delete.retention.ms type: integer log_cleaner_max_compaction_lag_ms: description: The maximum amount of time message will remain uncompacted. Only applicable for logs that are being compacted maximum: 9223372036854775807 minimum: 30000 title: log.cleaner.max.compaction.lag.ms type: integer log_cleaner_min_cleanable_ratio: description: Controls log compactor frequency. Larger value means more frequent compactions but also more space wasted for logs. Consider setting log.cleaner.max.compaction.lag.ms to enforce compactions sooner, instead of setting a very high value for this option. example: 0.5 maximum: 0.9 minimum: 0.2 title: log.cleaner.min.cleanable.ratio type: number log_cleaner_min_compaction_lag_ms: description: The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted. maximum: 9223372036854775807 minimum: 0 title: log.cleaner.min.compaction.lag.ms type: integer log_cleanup_policy: description: The default cleanup policy for segments beyond the retention window enum: - delete - compact - compact,delete example: delete title: log.cleanup.policy type: string title: Configure log cleaner for topic compaction type: object offsets_retention_minutes: description: Log retention window in minutes for offsets topic example: 10080 maximum: 2147483647 minimum: 1 title: offsets.retention.minutes type: integer log_retention_ms: description: The number of milliseconds to keep a log file before deleting it (in milliseconds), If not set, the value in log.retention.minutes is used. If set to -1, no time limit is applied. maximum: 9223372036854775807 minimum: -1 title: log.retention.ms type: integer title: Kafka broker configuration values type: object dbaas-kafka-schema-registry-acl-entry: type: object properties: id: $ref: '#/components/schemas/dbaas-kafka-acl-id' description: Kafka ACL ID username: type: string maxLength: 64 minLength: 1 description: Kafka username or username pattern resource: type: string maxLength: 249 minLength: 1 description: Kafka Schema Registry name or pattern permission: type: string enum: - schema_registry_read - schema_registry_write description: Kafka Schema Registry permission required: - username - resource - permission dbaas-pg-target-versions: type: string enum: - '14' - '17' - '15' - '18' - '13' - '16' json-schema-valkey: properties: ssl: default: true title: Require SSL to access Valkey type: boolean lfu_log_factor: default: 10 maximum: 100 minimum: 0 title: Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies type: integer maxmemory_policy: default: noeviction enum: - noeviction - allkeys-lru - volatile-lru - allkeys-random - volatile-random - volatile-ttl - volatile-lfu - allkeys-lfu nullable: true title: Valkey maxmemory-policy type: string io_threads: description: Set Valkey IO thread count. Changing this will cause a restart of the Valkey service. example: 1 maximum: 32 minimum: 1 title: Valkey IO thread count type: integer lfu_decay_time: default: 1 maximum: 120 minimum: 1 title: LFU maxmemory-policy counter decay time in minutes type: integer pubsub_client_output_buffer_limit: description: Set output buffer limit for pub / sub clients in MB. The value is the hard limit, the soft limit is 1/4 of the hard limit. When setting the limit, be mindful of the available memory in the selected service plan. example: 64 maximum: 512 minimum: 32 title: Pub/sub client output buffer hard limit in MB type: integer notify_keyspace_events: default: '' maxLength: 32 pattern: ^[KEg\$lshzxentdmA]*$ title: Set notify-keyspace-events option type: string persistence: description: When persistence is 'rdb', Valkey does RDB dumps each 10 minutes if any key is changed. Also RDB dumps are done according to backup schedule for backup purposes. When persistence is 'off', no RDB dumps and backups are done, so data can be lost at any moment if service is restarted for any reason, or if service is powered off. Also service can't be forked. enum: - 'off' - rdb title: Valkey persistence type: string timeout: default: 300 maximum: 31536000 minimum: 0 title: Valkey idle connection timeout in seconds type: integer acl_channels_default: description: Determines default pub/sub channels' ACL for new users if ACL is not supplied. When this option is not defined, all_channels is assumed to keep backward compatibility. This option doesn't affect Valkey configuration acl-pubsub-default. enum: - allchannels - resetchannels title: Default ACL for pub/sub channels used when Valkey user is created type: string number_of_databases: description: Set number of Valkey databases. Changing this will cause a restart of the Valkey service. example: 16 maximum: 128 minimum: 1 title: Number of Valkey databases type: integer title: Valkey settings type: object enum-datadog-site: type: string enum: - us3.datadoghq.com - ddog-gov.com - datadoghq.eu - us5.datadoghq.com - ap1.datadoghq.com - datadoghq.com dbaas-kafka-acls: type: object properties: topic-acl: type: array items: $ref: '#/components/schemas/dbaas-kafka-topic-acl-entry' schema-registry-acl: type: array items: $ref: '#/components/schemas/dbaas-kafka-schema-registry-acl-entry' dbaas-integration-settings-datadog: type: object properties: datadog-dbm-enabled: type: boolean description: 'Database monitoring: view query metrics, explain plans, and execution details. Correlate queries with host metrics.' datadog-pgbouncer-enabled: type: boolean description: Integrate PgBouncer with Datadog to track connection pool metrics and monitor application traffic. json-schema-thanos: properties: compactor: description: Configuration options for Thanos Compactor. properties: retention.days: description: Retention time for data in days for each resolution (5m, 1h, raw) minimum: 0 title: Retention time for data in days type: integer title: ThanosCompactorUserConfig type: object query: description: Configuration options for Thanos Query. properties: query.default-evaluation-interval: default: 1m description: Set the default evaluation interval for subqueries. maxLength: 20 title: Set the default evaluation interval for subqueries. type: string query.lookback-delta: default: 5m description: The maximum lookback duration for retrieving metrics during expression evaluations in PromQL. PromQL always evaluates the query for a certain timestamp, and it looks back for the given amount of time to get the latest sample. If it exceeds the maximum lookback delta, it assumes the series is stale and returns none (a gap). The lookback delta should be set to at least 2 times the slowest scrape interval. If unset, it will use the promql default of 5m. maxLength: 20 title: Maximum lookback duration for retrieving metrics during expression evaluations in PromQL type: string query.metadata.default-time-range: default: 0s description: The default metadata time range duration for retrieving labels through Labels and Series API when the range parameters are not specified. The zero value means the range covers the time since the beginning. maxLength: 20 title: Default metadata time range duration for retrieving labels type: string query.timeout: default: 2m description: Maximum time to process a query by the query node. maxLength: 20 title: Maximum time to process a query by the query node. type: string store.limits.request-samples: default: 0 description: 'The maximum samples allowed for a single Series request. The Series call fails if this limit is exceeded. Set to 0 for no limit. NOTE: For efficiency, the limit is internally implemented as ''chunks limit'' considering each chunk contains a maximum of 120 samples. The default value is 100 * store.limits.request-series.' maximum: 100000000 minimum: 0 title: Store.Limits.Request-Samples type: integer store.limits.request-series: default: 0 description: The maximum series allowed for a single Series request. The Series call fails if this limit is exceeded. Set to 0 for no limit. The default value is 1000 * cpu_count. maximum: 100000000 minimum: 0 title: Store.Limits.Request-Series type: integer title: ThanosQueryUserConfig type: object query-frontend: description: Configuration options for Thanos Query Frontend. properties: query-range.align-range-with-step: default: true description: Whether to align the query range boundaries with the step. If enabled, the query range boundaries will be aligned to the step, providing more accurate results for queries with high-resolution data. title: Whether to align the query range boundaries with the step. type: boolean title: ThanosQueryFrontendUserConfig type: object title: Thanos settings type: object enum-sort-order: type: string enum: - desc - asc dbaas-endpoint-opensearch-optional-fields: type: object properties: url: type: string maxLength: 2048 minLength: 12 description: OpenSearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: OpenSearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: OpenSearch request timeout limit json-schema-kafka-rest: additionalProperties: false properties: producer_compression_type: description: Specify the default compression type for producers. This configuration accepts the standard compression codecs ('gzip', 'snappy', 'lz4', 'zstd'). It additionally accepts 'none' which is the default and equivalent to no compression. enum: - gzip - snappy - lz4 - zstd - none title: producer.compression.type type: string name_strategy_validation: default: true description: If true, validate that given schema is registered under expected subject name by the used name strategy when producing messages. title: name.strategy.validation type: boolean name_strategy: default: topic_name description: Name strategy to use when selecting subject for storing schemas enum: - topic_name - record_name - topic_record_name title: name.strategy type: string consumer_enable_auto_commit: default: true description: If true the consumer's offset will be periodically committed to Kafka in the background title: consumer.enable.auto.commit type: boolean producer_acks: default: '1' description: The number of acknowledgments the producer requires the leader to have received before considering a request complete. If set to 'all' or '-1', the leader will wait for the full set of in-sync replicas to acknowledge the record. enum: - all - '-1' - '0' - '1' title: producer.acks type: string consumer_request_max_bytes: default: 67108864 description: Maximum number of bytes in unencoded message keys and values by a single request maximum: 671088640 minimum: 0 title: consumer.request.max.bytes type: integer producer_max_request_size: default: 1048576 description: The maximum size of a request in bytes. Note that Kafka broker can also cap the record batch size. maximum: 2147483647 minimum: 0 title: producer.max.request.size type: integer simpleconsumer_pool_size_max: default: 25 description: Maximum number of SimpleConsumers that can be instantiated per broker maximum: 250 minimum: 10 title: simpleconsumer.pool.size.max type: integer producer_linger_ms: default: 0 description: Wait for up to the given delay to allow batching records together maximum: 5000 minimum: 0 title: producer.linger.ms type: integer consumer_request_timeout_ms: default: 1000 description: The maximum total time to wait for messages for a request if the maximum number of messages has not yet been reached enum: - 1000 - 15000 - 30000 title: consumer.request.timeout.ms type: integer title: Kafka REST configuration type: object dbaas-user-grafana-secrets: type: object properties: username: type: string description: Grafana username password: type: string description: Grafana password description: Grafana User secrets dbaas-service-thanos: type: object properties: updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: query-frontend-uri: type: string query-uri: type: string receiver-remote-write-uri: type: string ruler-uri: type: string description: Thanos connection information properties node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route ssl: type: boolean description: "Whether the endpoint is encrypted or accepts plaintext.\n By default endpoints are always encrypted and\n this property is only included for service components that may disable encryption." usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs thanos-settings: $ref: '#/components/schemas/json-schema-thanos' description: Thanos specific settings created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: type: object properties: type: type: string username: type: string password: type: string description: List of service users required: - name - plan - type - prometheus-uri dbaas-user-username: type: string maxLength: 64 minLength: 1 dbaas-external-endpoint: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id dbaas-user-kafka-secrets: type: object properties: username: type: string description: Kafka username password: type: string description: Kafka password access-cert: type: string description: Kafka certificate access-cert-expiry: type: string format: date-time access-key: type: string description: Kafka access key description: Kafka User secrets dbaas-user-thanos-secrets: type: object properties: username: type: string description: Thanos username password: type: string description: Thanos password description: Thanos User secrets enum-component-usage: type: string enum: - primary - replica dbaas-mysql-user-password: type: string maxLength: 256 minLength: 8 pattern: ^[a-zA-Z0-9!#%^*_+={}()<>|.,;~?-]+$ dbaas-endpoint-external-prometheus-output: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id settings: type: object properties: basic-auth-username: type: string maxLength: 32 minLength: 5 pattern: ^[a-z0-9\-@_]{5,32}$ description: Prometheus basic authentication username description: External integration Prometheus configuration dbaas-user-opensearch-secrets: type: object properties: username: type: string description: Opensearch username password: type: string description: Opensearch password description: Opensearch User secrets json-schema-schema-registry: additionalProperties: false properties: leader_eligibility: description: If true, Karapace / Schema Registry on the service nodes can participate in leader election. It might be needed to disable this when the schemas topic is replicated to a secondary cluster and Karapace / Schema Registry there must not participate in leader election. Defaults to `true`. example: true title: leader_eligibility type: boolean topic_name: description: The durable single partition topic that acts as the durable log for the data. This topic must be compacted to avoid losing data due to retention policy. Please note that changing this configuration in an existing Schema Registry / Karapace setup leads to previous schemas being inaccessible, data encoded with them potentially unreadable and schema ID sequence put out of order. It's only possible to do the switch while Schema Registry / Karapace is disabled. Defaults to `_schemas`. example: _schemas maxLength: 249 minLength: 1 pattern: ^(?!\.$|\.\.$)[-_.A-Za-z0-9]+$ title: topic_name type: string title: Schema Registry configuration type: object enum-opensearch-rule-permission: type: string enum: - admin - read - deny - readwrite - write dbaas-user-mysql-secrets: type: object properties: username: type: string description: MySQL username password: type: string description: MySQL password description: MySQL User secrets dbaas-endpoint-rsyslog-input-create: type: object properties: settings: type: object properties: format: $ref: '#/components/schemas/enum-rsyslog-format' description: Message format key: type: string maxLength: 16384 description: PEM encoded client key logline: type: string maxLength: 512 minLength: 1 pattern: ^[ -~\t]+$ description: Custom syslog message format server: type: string maxLength: 255 minLength: 4 description: Rsyslog server IP address or hostname ca: type: string maxLength: 16384 description: PEM encoded CA certificate cert: type: string maxLength: 16384 description: PEM encoded client certificate tls: type: boolean description: Require TLS port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog server port sd: type: string maxLength: 1024 description: Structured data block for log message max-message-size: type: integer format: int64 minimum: 2048 maximum: 2147483647 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog max message size required: - server - port - tls - format enum-migration-status: type: string enum: - running - syncing - failed - done dbaas-task: type: object properties: id: type: string format: uuid create-time: type: string format: date-time result: type: string result-codes: type: array items: type: object properties: code: type: string dbname: type: string success: type: boolean task-type: type: string dbaas-user-password: type: string maxLength: 256 minLength: 8 json-schema-grafana: properties: allow_embedding: example: false title: Allow embedding Grafana dashboards with iframe/frame/object/embed tags. Disabled by default to limit impact of clickjacking type: boolean cookie_samesite: enum: - lax - strict - none example: lax title: 'Cookie SameSite attribute: ''strict'' prevents sending cookie for cross-site requests, effectively disabling direct linking from other sites to Grafana. ''lax'' is the default value.' type: string dashboard_previews_enabled: description: This feature is new in Grafana 9 and is quite resource intensive. It may cause low-end plans to work more slowly while the dashboard previews are rendering. example: false title: Enable browsing of dashboards in grid (pictures) mode type: boolean metrics_enabled: example: true title: Enable Grafana /metrics endpoint type: boolean auth_azuread: additionalProperties: false properties: allow_sign_up: example: false title: Automatically sign-up users on successful sign-in type: boolean allowed_domains: items: example: mycompany.com maxLength: 255 title: Allowed domain type: string maxItems: 50 title: Allowed domains type: array allowed_groups: items: example: c0ffee15-c01d-0000-1111-012345abcdef maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ title: Group Object ID from Azure AD type: string maxItems: 50 title: Require users to belong to one of given groups type: array auth_url: example: https://login.microsoftonline.com//oauth2/v2.0/authorize maxLength: 2048 title: Authorization URL type: string client_id: example: b1ba0bf54a4c2c0a1c29 maxLength: 1024 pattern: ^[ -~]+$ title: Client ID from provider type: string client_secret: example: bfa6gea4f129076761dcba8ce5e1e406bd83af7b maxLength: 1024 pattern: ^[ -~]+$ title: Client secret from provider type: string token_url: example: https://login.microsoftonline.com//oauth2/v2.0/token maxLength: 2048 title: Token URL type: string required: - client_id - client_secret - auth_url - token_url title: Azure AD OAuth integration type: object alerting_enabled: example: true title: Enable or disable Grafana legacy alerting functionality. This should not be enabled with unified_alerting_enabled. type: boolean wal: description: Setting to enable/disable Write-Ahead Logging. The default value is false (disabled). example: false title: Write-Ahead Logging type: boolean unified_alerting_enabled: example: true title: Enable or disable Grafana unified alerting functionality. By default this is enabled and any legacy alerts will be migrated on upgrade to Grafana 9+. To stay on legacy alerting, set unified_alerting_enabled to false and alerting_enabled to true. See https://grafana.com/docs/grafana/latest/alerting/set-up/migrating-alerts/ for more details. type: boolean auth_github: additionalProperties: false properties: allow_sign_up: example: false title: Automatically sign-up users on successful sign-in type: boolean allowed_organizations: items: example: aiven maxLength: 256 pattern: ^[A-Za-z0-9-]+$ title: Organization name type: string maxItems: 50 title: Require users to belong to one of given organizations type: array auto_login: example: false title: Allow users to bypass the login screen and automatically log in type: boolean client_id: example: b1ba0bf54a4c2c0a1c29 maxLength: 1024 pattern: ^[ -~]+$ title: Client ID from provider type: string client_secret: example: bfa6gea4f129076761dcba8ce5e1e406bd83af7b maxLength: 1024 pattern: ^[ -~]+$ title: Client secret from provider type: string skip_org_role_sync: example: false title: Stop automatically syncing user roles type: boolean team_ids: items: example: 150 maximum: 9223372036854775807 minimum: 1 title: Team ID type: integer maxItems: 50 title: Require users to belong to one of given team IDs type: array required: - client_id - client_secret title: Github Auth integration type: object user_auto_assign_org: example: false title: Auto-assign new users on signup to main organization. Defaults to false type: boolean dataproxy_send_user_header: example: false title: Send 'X-Grafana-User' header to data source type: boolean google_analytics_ua_id: example: UA-123456-4 maxLength: 64 pattern: ^(G|UA|YT|MO)-[a-zA-Z0-9-]+$ title: Google Analytics ID type: string dashboards_versions_to_keep: example: 20 maximum: 100 minimum: 1 title: Dashboard versions to keep per dashboard type: integer editors_can_admin: example: false title: Editors can manage folders, teams and dashboards created by them type: boolean smtp_server: additionalProperties: false properties: from_address: example: yourgrafanauser@yourdomain.example.com maxLength: 319 pattern: ^[A-Za-z0-9_\-\.+'&]+@(([\da-zA-Z])([_\w-]{0,62})\.){0,127}(([\da-zA-Z])[_\w-]{0,61})?([\da-zA-Z]\.((xn\-\-[a-zA-Z\d]+)|([a-zA-Z\d]{2,})))$ title: Address used for sending emails type: string from_name: example: Company Grafana maxLength: 128 nullable: true pattern: ^[^\x00-\x1F]+$ title: Name used in outgoing emails, defaults to Grafana type: string host: example: smtp.example.com maxLength: 255 title: Server hostname or IP type: string password: example: ein0eemeev5eeth3Ahfu maxLength: 255 nullable: true pattern: ^[^\x00-\x1F]+$ title: Password for SMTP authentication type: string port: example: 25 maximum: 65535 minimum: 1 title: SMTP server port type: integer skip_verify: example: 'false' title: Skip verifying server certificate. Defaults to false type: boolean starttls_policy: enum: - OpportunisticStartTLS - MandatoryStartTLS - NoStartTLS example: NoStartTLS title: Either OpportunisticStartTLS, MandatoryStartTLS or NoStartTLS. Default is OpportunisticStartTLS. type: string username: example: smtpuser maxLength: 255 nullable: true pattern: ^[^\x00-\x1F]+$ title: Username for SMTP authentication type: string required: - host - port - from_address title: SMTP server settings type: object auth_gitlab: additionalProperties: false properties: allow_sign_up: example: false title: Automatically sign-up users on successful sign-in type: boolean allowed_groups: items: example: aiven/developers maxLength: 256 pattern: ^[a-z0-9-_/]+$ title: Group or subgroup name type: string maxItems: 50 title: Require users to belong to one of given groups type: array api_url: example: https://gitlab.com/api/v4 maxLength: 2048 title: API URL. This only needs to be set when using self hosted GitLab type: string auth_url: example: https://gitlab.com/oauth/authorize maxLength: 2048 title: Authorization URL. This only needs to be set when using self hosted GitLab type: string client_id: example: b1ba0bf54a4c2c0a1c29 maxLength: 1024 pattern: ^[ -~]+$ title: Client ID from provider type: string client_secret: example: bfa6gea4f129076761dcba8ce5e1e406bd83af7b maxLength: 1024 pattern: ^[ -~]+$ title: Client secret from provider type: string token_url: example: https://gitlab.com/oauth/token maxLength: 2048 title: Token URL. This only needs to be set when using self hosted GitLab type: string required: - client_id - client_secret - allowed_groups title: GitLab Auth integration type: object alerting_nodata_or_nullvalues: enum: - alerting - no_data - keep_state - ok example: ok title: Default value for 'no data or null values' for new alerting rules type: string auth_basic_enabled: example: true title: Enable or disable basic authentication form, used by Grafana built-in login type: boolean date_formats: additionalProperties: false properties: default_timezone: example: Europe/Helsinki maxLength: 64 pattern: ^([a-zA-Z_]+/){1,2}[a-zA-Z_-]+$|^(Etc/)?([Uu][Tt][Cc]|[Gg][Mm][Tt])([+-](\d){1,2})?$|^([Ff][Aa][Cc][Tt][Oo][Rr][Yy])$|^([Bb][Rr][Oo][Ww][Ss][Ee][Rr])$ title: Default time zone for user preferences. Value 'browser' uses browser local time zone. type: string full_date: example: YYYY MM DD maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string for cases where full date is shown type: string interval_day: example: MM/DD maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring day accuracy is shown type: string interval_hour: example: MM/DD HH:mm maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring hour accuracy is shown type: string interval_minute: example: HH:mm maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring minute accuracy is shown type: string interval_month: example: YYYY-MM maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring month accuracy is shown type: string interval_second: example: HH:mm:ss maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring second accuracy is shown type: string interval_year: example: YYYY maxLength: 128 pattern: '^(([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|LTS|LT|LL?L?L?|l{1,4}|[-+/T,;.: ]?)*)$' title: Moment.js style format string used when a time requiring year accuracy is shown type: string title: Grafana date format specifications type: object service_log: description: Store logs for the service so that they are available in the HTTP API and console. example: true nullable: true title: Service logging type: boolean disable_gravatar: example: false title: Set to true to disable gravatar. Defaults to false (gravatar is enabled) type: boolean user_auto_assign_org_role: enum: - Viewer - Admin - Editor example: Viewer title: Set role for new signups. Defaults to Viewer type: string dataproxy_timeout: example: 30 maximum: 90 minimum: 15 title: Timeout for data proxy requests in seconds type: integer viewers_can_edit: example: false title: Users with view-only permission can edit but not save dashboards type: boolean dashboards_min_refresh_interval: description: Signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s, 1h example: 5s maxLength: 16 pattern: ^[0-9]+(ms|s|m|h|d)$ title: Minimum refresh interval type: string auth_google: additionalProperties: false properties: allow_sign_up: example: false title: Automatically sign-up users on successful sign-in type: boolean allowed_domains: items: example: example.com maxLength: 255 title: Domain type: string maxItems: 64 title: Domains allowed to sign-in to this Grafana type: array client_id: example: b1ba0bf54a4c2c0a1c29 maxLength: 1024 pattern: ^[ -~]+$ title: Client ID from provider type: string client_secret: example: bfa6gea4f129076761dcba8ce5e1e406bd83af7b maxLength: 1024 pattern: ^[ -~]+$ title: Client secret from provider type: string required: - client_id - client_secret - allowed_domains title: Google Auth integration type: object oauth_allow_insecure_email_lookup: example: false title: Enforce user lookup based on email instead of the unique ID provided by the IdP type: boolean alerting_max_annotations_to_keep: example: 0 maximum: 1000000 minimum: 0 title: Max number of alert annotations that Grafana stores. 0 (default) keeps all alert annotations. type: integer auth_generic_oauth: additionalProperties: false properties: scopes: items: example: email maxLength: 256 pattern: ^[\S]+$ title: OAuth scope type: string maxItems: 50 title: OAuth scopes type: array allowed_domains: items: example: mycompany.com maxLength: 255 title: Allowed domain type: string maxItems: 50 title: Allowed domains type: array allowed_organizations: items: example: myorg maxLength: 256 pattern: ^[\S]+$ title: Allowed organization type: string maxItems: 50 title: Require user to be member of one of the listed organizations type: array token_url: example: https://yourprovider.com/oauth/token maxLength: 2048 title: Token URL type: string name: example: My authentication maxLength: 128 pattern: ^[a-zA-Z0-9_\- ]+$ title: Name of the OAuth integration type: string auth_url: example: https://yourprovider.com/oauth/authorize maxLength: 2048 title: Authorization URL type: string api_url: example: https://yourprovider.com/api maxLength: 2048 title: API URL type: string auto_login: example: false title: Allow users to bypass the login screen and automatically log in type: boolean client_id: example: b1ba0bf54a4c2c0a1c29 maxLength: 1024 pattern: ^[ -~]+$ title: Client ID from provider type: string client_secret: example: bfa6gea4f129076761dcba8ce5e1e406bd83af7b maxLength: 1024 pattern: ^[ -~]+$ title: Client secret from provider type: string allow_sign_up: example: false title: Automatically sign-up users on successful sign-in type: boolean required: - api_url - auth_url - client_id - client_secret - token_url title: Generic OAuth integration type: object custom_domain: example: grafana.example.org description: Serve the web frontend using a custom CNAME pointing to the Aiven DNS name maxLength: 255 nullable: true title: Custom domain type: string alerting_error_or_timeout: enum: - alerting - keep_state example: alerting title: Default error or timeout setting for new alerting rules type: string title: Grafana settings type: object enum-migration-method: type: string enum: - dump - replication enum-rsyslog-format: type: string enum: - custom - rfc3164 - rfc5424 enum-pg-pool-mode: type: string enum: - transaction - statement - session json-schema-kafka-connect: additionalProperties: false properties: producer_buffer_memory: description: The total bytes of memory the producer can use to buffer records waiting to be sent to the broker (defaults to 33554432). example: 8388608 maximum: 134217728 minimum: 5242880 title: The total bytes of memory the producer can use to buffer records waiting to be sent to the broker type: integer consumer_max_poll_interval_ms: description: The maximum delay in milliseconds between invocations of poll() when using consumer group management (defaults to 300000). example: 300000 maximum: 2147483647 minimum: 1 title: The maximum delay between polls when using consumer group management type: integer producer_compression_type: description: Specify the default compression type for producers. This configuration accepts the standard compression codecs ('gzip', 'snappy', 'lz4', 'zstd'). It additionally accepts 'none' which is the default and equivalent to no compression. enum: - gzip - snappy - lz4 - zstd - none title: The default compression type for producers type: string connector_client_config_override_policy: description: Defines what client configurations can be overridden by the connector. Default is None enum: - None - All title: Client config override policy type: string offset_flush_interval_ms: description: The interval at which to try committing offsets for tasks (defaults to 60000). example: 60000 maximum: 100000000 minimum: 1 title: The interval at which to try committing offsets for tasks type: integer scheduled_rebalance_max_delay_ms: description: The maximum delay that is scheduled in order to wait for the return of one or more departed workers before rebalancing and reassigning their connectors and tasks to the group. During this period the connectors and tasks of the departed workers remain unassigned. Defaults to 5 minutes. example: 300000 maximum: 600000 minimum: 0 title: The maximum delay of rebalancing connector workers type: integer consumer_fetch_max_bytes: description: Records are fetched in batches by the consumer, and if the first record batch in the first non-empty partition of the fetch is larger than this value, the record batch will still be returned to ensure that the consumer can make progress. As such, this is not a absolute maximum. example: 52428800 maximum: 104857600 minimum: 1048576 title: The maximum amount of data the server should return for a fetch request type: integer consumer_max_partition_fetch_bytes: description: 'Records are fetched in batches by the consumer.If the first record batch in the first non-empty partition of the fetch is larger than this limit, the batch will still be returned to ensure that the consumer can make progress. ' example: 1048576 maximum: 104857600 minimum: 1048576 title: The maximum amount of data per-partition the server will return. type: integer offset_flush_timeout_ms: description: Maximum number of milliseconds to wait for records to flush and partition offset data to be committed to offset storage before cancelling the process and restoring the offset data to be committed in a future attempt (defaults to 5000). example: 5000 maximum: 2147483647 minimum: 1 title: Offset flush timeout type: integer consumer_auto_offset_reset: description: What to do when there is no initial offset in Kafka or if the current offset does not exist any more on the server. Default is earliest enum: - earliest - latest title: Consumer auto offset reset type: string producer_max_request_size: description: This setting will limit the number of record batches the producer will send in a single request to avoid sending huge requests. example: 1048576 maximum: 67108864 minimum: 131072 title: The maximum size of a request in bytes type: integer producer_batch_size: description: This setting gives the upper bound of the batch size to be sent. If there are fewer than this many bytes accumulated for this partition, the producer will 'linger' for the linger.ms time waiting for more records to show up. A batch size of zero will disable batching entirely (defaults to 16384). example: 1024 maximum: 5242880 minimum: 0 title: The batch size in bytes the producer will attempt to collect for the same partition before publishing to broker type: integer session_timeout_ms: description: The timeout in milliseconds used to detect failures when using Kafka’s group management facilities (defaults to 10000). example: 10000 maximum: 2147483647 minimum: 1 title: The timeout used to detect failures when using Kafka’s group management facilities type: integer producer_linger_ms: description: 'This setting gives the upper bound on the delay for batching: once there is batch.size worth of records for a partition it will be sent immediately regardless of this setting, however if there are fewer than this many bytes accumulated for this partition the producer will ''linger'' for the specified time waiting for more records to show up. Defaults to 0.' example: 100 maximum: 5000 minimum: 0 title: Wait for up to the given delay to allow batching records together type: integer consumer_isolation_level: description: Transaction read isolation level. read_uncommitted is the default, but read_committed can be used if consume-exactly-once behavior is desired. enum: - read_uncommitted - read_committed title: Consumer isolation level type: string consumer_max_poll_records: description: The maximum number of records returned in a single call to poll() (defaults to 500). example: 500 maximum: 10000 minimum: 1 title: The maximum number of records returned by a single poll type: integer title: Kafka Connect configuration values type: object dbaas-endpoint-rsyslog-input-update: type: object properties: settings: type: object properties: format: $ref: '#/components/schemas/enum-rsyslog-format' description: Message format key: type: string maxLength: 16384 description: PEM encoded client key logline: type: string maxLength: 512 minLength: 1 pattern: ^[ -~\t]+$ description: Custom syslog message format server: type: string maxLength: 255 minLength: 4 description: Rsyslog server IP address or hostname ca: type: string maxLength: 16384 description: PEM encoded CA certificate cert: type: string maxLength: 16384 description: PEM encoded client certificate tls: type: boolean description: Require TLS port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog server port sd: type: string maxLength: 1024 description: Structured data block for log message max-message-size: type: integer format: int64 minimum: 2048 maximum: 2147483647 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog max message size dbaas-pg-database-name: type: string maxLength: 63 minLength: 1 dbaas-valkey-user: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username type: type: string access-control: $ref: '#/components/schemas/dbaas-valkey-user-access-control' required: - username json-schema-pgbouncer: description: System-wide settings for pgbouncer. properties: min_pool_size: default: 0 example: 0 maximum: 10000 minimum: 0 title: Add more server connections to pool if below this number. Improves behavior when usual load comes suddenly back after period of total inactivity. The value is effectively capped at the pool size. type: integer ignore_startup_parameters: example: - extra_float_digits - search_path items: enum: - extra_float_digits - search_path type: string maxItems: 32 title: List of parameters to ignore when given in startup packet type: array server_lifetime: default: 3600 example: 3600 maximum: 86400 minimum: 60 title: The pooler will close an unused server connection that has been connected longer than this. [seconds] type: integer autodb_pool_mode: default: transaction enum: - transaction - session - statement example: session title: PGBouncer pool mode type: string server_idle_timeout: default: 600 example: 600 maximum: 86400 minimum: 0 title: If a server connection has been idle more than this many seconds it will be dropped. If 0 then timeout is disabled. [seconds] type: integer autodb_max_db_connections: example: 0 maximum: 2147483647 minimum: 0 title: Do not allow more than this many server connections per database (regardless of user). Setting it to 0 means unlimited. type: integer max_prepared_statements: default: 100 example: 100 maximum: 3000 minimum: 0 title: PgBouncer tracks protocol-level named prepared statements related commands sent by the client in transaction and statement pooling modes when max_prepared_statements is set to a non-zero value. Setting it to 0 disables prepared statements. max_prepared_statements defaults to 100, and its maximum is 3000. type: integer server_reset_query_always: default: false example: false title: Run server_reset_query (DISCARD ALL) in all pooling modes type: boolean autodb_pool_size: default: 0 example: 0 maximum: 10000 minimum: 0 title: If non-zero then create automatically a pool of that size per user when a pool doesn't exist. type: integer autodb_idle_timeout: default: 3600 example: 3600 maximum: 86400 minimum: 0 title: If the automatically created database pools have been unused this many seconds, they are freed. If 0 then timeout is disabled. [seconds] type: integer title: PGBouncer connection pooling settings type: object enum-kafka-auth-method: type: string enum: - certificate - sasl dbaas-pg-pool-size: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false dbaas-integration-type: type: object properties: type: type: string description: The type of the integration. source-description: type: string description: The description of the source service types. source-service-types: type: array items: type: string description: A list of the source service types the integration supports. dest-description: type: string description: The description of the destination service types. dest-service-types: type: array items: type: string description: A list of the destination service types the integration supports. settings: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: A JSON schema of additional settings of the integration. dbaas-service-kafka: type: object properties: updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) authentication-methods: type: object properties: certificate: type: boolean description: Whether certificate/SSL authentication is enabled sasl: type: boolean description: Whether SASL authentication is enabled description: Kafka authentication methods node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: nodes: type: array items: type: string access-cert: type: string access-key: type: string connect-uri: type: string rest-uri: type: string registry-uri: type: string description: Kafka connection information properties node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node kafka-rest-enabled: type: boolean description: Whether Kafka REST is enabled prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name kafka-connect-enabled: type: boolean description: Whether Kafka Connect is enabled type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' schema-registry-settings: $ref: '#/components/schemas/json-schema-schema-registry' description: Schema Registry configuration backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service kafka-rest-settings: $ref: '#/components/schemas/json-schema-kafka-rest' description: Kafka REST configuration termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications kafka-connect-settings: $ref: '#/components/schemas/json-schema-kafka-connect' description: Kafka Connect configuration values components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component kafka-authentication-method: $ref: '#/components/schemas/enum-kafka-auth-method' description: Kafka authentication method. This is a value specific to the 'kafka' service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings kafka-settings: $ref: '#/components/schemas/json-schema-kafka' description: Kafka-specific settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs schema-registry-enabled: type: boolean description: Whether Schema-Registry is enabled version: type: string description: Kafka version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: type: object properties: type: type: string username: type: string password: type: string access-cert: type: string access-cert-expiry: type: string format: date-time access-key: type: string description: List of service users required: - name - plan - type - prometheus-uri dbaas-service-opensearch: type: object properties: description: type: string description: DbaaS service description max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep before deleting the oldest one updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: uri: type: array items: type: string username: type: string password: type: string dashboard-uri: type: string description: Opensearch connection information properties node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name keep-index-refresh-interval: type: boolean description: Aiven automation resets index.refresh_interval to default value for every index to be sure that indices are always visible to search. If it doesn't fit your case, you can disable this by setting up this flag to true. type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects index-patterns: type: array items: type: object properties: max-index-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Maximum number of indexes to keep sorting-algorithm: type: string enum: - alphabetical - creation_date description: Deletion sorting algorithm pattern: type: string maxLength: 1024 description: fnmatch pattern description: 'Allows you to create glob style patterns and set a max number of indexes matching this pattern you want to keep. Creating indexes exceeding this value will cause the oldest one to get deleted. You could for example create a pattern looking like ''logs.?'' and then create index logs.1, logs.2 etc, it will delete logs.1 once you create logs.6. Do note ''logs.?'' does not apply to logs.10. Note: Setting max_index_count to 0 will do nothing and the pattern gets ignored.' maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings index-template: type: object properties: mapping-nested-objects-limit: type: integer format: int64 minimum: 0 maximum: 100000 exclusiveMinimum: false exclusiveMaximum: false description: The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects. Default is 10000. number-of-replicas: type: integer format: int64 minimum: 0 maximum: 29 exclusiveMinimum: false exclusiveMaximum: false description: The number of replicas each primary shard has. number-of-shards: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: The number of primary shards that an index should have. description: Template settings for all new indexes disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) opensearch-settings: $ref: '#/components/schemas/json-schema-opensearch' description: OpenSearch-specific settings uri-params: type: object description: service_uri parameterized into key-value pairs version: type: string description: OpenSearch version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan opensearch-dashboards: type: object properties: opensearch-request-timeout: type: integer format: int64 minimum: 5000 maximum: 120000 exclusiveMinimum: false exclusiveMaximum: false description: 'Timeout in milliseconds for requests made by OpenSearch Dashboards towards OpenSearch (default: 30000)' enabled: type: boolean description: 'Enable or disable OpenSearch Dashboards (default: true)' max-old-space-size: type: integer format: int64 minimum: 64 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: 'Limits the maximum amount of memory (in MiB) the OpenSearch Dashboards process can use. This sets the max_old_space_size option of the nodejs running the OpenSearch Dashboards. Note: the memory reserved by OpenSearch Dashboards is not available for OpenSearch. (default: 128)' description: OpenSearch Dashboards settings users: type: array items: type: object properties: type: type: string username: type: string password: type: string description: List of service users required: - name - plan - type - prometheus-uri dbaas-endpoint-datadog-input-update: type: object properties: settings: type: object properties: datadog-api-key: type: string maxLength: 256 minLength: 1 pattern: ^[A-Za-z0-9]{1,256}$ description: Datadog API key site: $ref: '#/components/schemas/enum-datadog-site' description: Datadog intake site. Defaults to datadoghq.com datadog-tags: type: array items: $ref: '#/components/schemas/dbaas-datadog-tag' description: Custom tags provided by user disable-consumer-stats: type: boolean description: Disable kafka consumer group metrics. Applies only when attached to kafka services. kafka-consumer-check-instances: type: integer format: int64 minimum: 1 maximum: 100 exclusiveMinimum: false exclusiveMaximum: false description: Number of separate instances to fetch kafka consumer statistics with. Applies only when attached to kafka services. kafka-consumer-stats-timeout: type: integer format: int64 minimum: 2 maximum: 300 exclusiveMinimum: false exclusiveMaximum: false description: Number of seconds that datadog will wait to get consumer statistics from brokers. Applies only when attached to kafka services. max-partition-contexts: type: integer format: int64 minimum: 200 maximum: 200000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of partition contexts to send. Applies only when attached to kafka services. required: - datadog-api-key dbaas-integration: type: object properties: description: type: string description: Description of the integration settings: type: object description: Integration settings type: type: string description: Integration type is-enabled: type: boolean description: Whether the integration is enabled or not source: type: string description: Source service name is-active: type: boolean description: Whether the integration is active or not status: type: string description: Integration status id: type: string format: uuid description: Integration id dest: type: string description: Destination service name dbaas-node-state: type: object properties: name: type: string description: Name of the service node progress-updates: type: array items: $ref: '#/components/schemas/dbaas-node-state-progress-update' description: Extra information regarding the progress for current state role: type: string enum: - standby - master - read-replica description: Role of this node. Only returned for a subset of service types state: type: string enum: - leaving - running - syncing_data - setting_up_vm - unknown description: Current state of the service node required: - name - state description: Automatic maintenance settings dbaas-database-name: type: string maxLength: 40 minLength: 1 dbaas-external-endpoint-datadog-output: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id settings: type: object properties: site: $ref: '#/components/schemas/enum-datadog-site' description: Datadog intake site. Defaults to datadoghq.com datadog-tags: type: array items: $ref: '#/components/schemas/dbaas-datadog-tag' description: Custom tags provided by user disable-consumer-stats: type: boolean description: Disable kafka consumer group metrics. Applies only when attached to kafka services. kafka-consumer-check-instances: type: integer format: int64 minimum: 1 maximum: 100 exclusiveMinimum: false exclusiveMaximum: false description: Number of separate instances to fetch kafka consumer statistics with. Applies only when attached to kafka services. kafka-consumer-stats-timeout: type: integer format: int64 minimum: 2 maximum: 300 exclusiveMinimum: false exclusiveMaximum: false description: Number of seconds that datadog will wait to get consumer statistics from brokers. Applies only when attached to kafka services. max-partition-contexts: type: integer format: int64 minimum: 200 maximum: 200000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of partition contexts to send. Applies only when attached to kafka services. description: External integration DataDog configuration dbaas-node-state-progress-update: type: object properties: completed: type: boolean description: Indicates whether this phase has been completed or not current: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Current progress for this phase. May be missing or null. max: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Maximum progress value for this phase. May be missing or null. May change. min: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Minimum progress value for this phase. May be missing or null. phase: type: string enum: - stream - basebackup - prepare - finalize description: Key identifying this phase unit: type: string description: "Unit for current/min/max values. New units may be added.\n If null should be treated as generic unit" required: - completed - phase description: Extra information regarding the progress for current state operation: type: object properties: id: type: string format: uuid readOnly: true description: Operation ID reason: type: string enum: - incorrect - unknown - unavailable - forbidden - busy - fault - partial - not-found - interrupted - unsupported - conflict readOnly: true description: Operation failure reason reference: type: object properties: id: type: string format: uuid description: Reference ID link: type: string readOnly: true description: Link to the referenced resource command: type: string description: Command name description: Related resource reference readOnly: true message: type: string readOnly: true description: Operation message state: type: string enum: - failure - pending - success - timeout readOnly: true description: Operation status description: Operation enum-service-state: type: string enum: - running - rebuilding - rebalancing - poweroff dbaas-service-update: type: object properties: description: type: string description: Description of the update deadline: type: string format: date-time description: Deadline for installing the update start-after: type: string format: date-time description: The earliest time the update will be automatically applied start-at: type: string format: date-time description: The time when the update will be automatically applied description: Update waiting to be installed dbaas-endpoint-opensearch-input-create: type: object properties: settings: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate url: type: string maxLength: 2048 minLength: 12 description: OpenSearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: OpenSearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: OpenSearch request timeout limit required: - url - index-prefix dbaas-endpoint-elasticsearch-input-create: type: object properties: settings: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate url: type: string maxLength: 2048 minLength: 12 description: Elasticsearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: Elasticsearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: Elasticsearch request timeout limit required: - url - index-prefix dbaas-mysql-database-name: type: string maxLength: 64 minLength: 1 dbaas-endpoint-elasticsearch-output: type: object properties: name: type: string description: External integration endpoint name type: $ref: '#/components/schemas/enum-external-endpoint-types' description: External integration endpoint type id: type: string format: uuid description: External integration endpoint id settings: $ref: '#/components/schemas/dbaas-endpoint-elasticsearch-optional-fields' description: External integration ElasticSearch logs configuration dbaas-service-maintenance: type: object properties: dow: type: string enum: - saturday - tuesday - never - wednesday - sunday - friday - monday - thursday description: Day of week for installing updates time: type: string maxLength: 8 minLength: 8 description: Time for installing updates, UTC updates: type: array items: $ref: '#/components/schemas/dbaas-service-update' description: List of updates waiting to be installed required: - dow - time - updates description: Automatic maintenance settings dbaas-endpoint-rsyslog-optional-fields: type: object properties: server: type: string maxLength: 255 minLength: 4 description: Rsyslog server IP address or hostname port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog server port tls: type: boolean description: Require TLS format: $ref: '#/components/schemas/enum-rsyslog-format' description: Message format logline: type: string maxLength: 512 minLength: 1 pattern: ^[ -~\t]+$ description: Custom syslog message format sd: type: string maxLength: 1024 description: Structured data block for log message max-message-size: type: integer format: int64 minimum: 2048 maximum: 2147483647 exclusiveMinimum: false exclusiveMaximum: false description: Rsyslog max message size dbaas-kafka-acl-id: type: string maxLength: 40 minLength: 1 json-schema-mysql: additionalProperties: false properties: net_write_timeout: description: The number of seconds to wait for a block to be written to a connection before aborting the write. example: 30 maximum: 3600 minimum: 1 title: net_write_timeout type: integer internal_tmp_mem_storage_engine: description: The storage engine for in-memory internal temporary tables. enum: - TempTable - MEMORY example: TempTable title: internal_tmp_mem_storage_engine type: string sql_mode: description: Global SQL mode. Set to empty to use MySQL server defaults. When creating a new service and not setting this field Aiven default SQL mode (strict, SQL standard compliant) will be assigned. example: ANSI,TRADITIONAL maxLength: 1024 pattern: ^[A-Z_]*(,[A-Z_]+)*$ title: sql_mode type: string information_schema_stats_expiry: description: The time, in seconds, before cached statistics expire example: 86400 maximum: 31536000 minimum: 900 title: information_schema_stats_expiry type: integer sort_buffer_size: description: Sort buffer size in bytes for ORDER BY optimization. Default is 262144 (256K) example: 262144 maximum: 1073741824 minimum: 32768 title: sort_buffer_size type: integer innodb_thread_concurrency: description: Defines the maximum number of threads permitted inside of InnoDB. Default is 0 (infinite concurrency - no limit) example: 10 maximum: 1000 minimum: 0 title: innodb_thread_concurrency type: integer innodb_write_io_threads: description: The number of I/O threads for write operations in InnoDB. Default is 4. Changing this parameter will lead to a restart of the MySQL service. example: 10 maximum: 64 minimum: 1 title: innodb_write_io_threads type: integer innodb_ft_min_token_size: description: Minimum length of words that are stored in an InnoDB FULLTEXT index. Changing this parameter will lead to a restart of the MySQL service. example: 3 maximum: 16 minimum: 0 title: innodb_ft_min_token_size type: integer innodb_change_buffer_max_size: description: Maximum size for the InnoDB change buffer, as a percentage of the total size of the buffer pool. Default is 25 example: 30 maximum: 50 minimum: 0 title: innodb_change_buffer_max_size type: integer innodb_flush_neighbors: description: 'Specifies whether flushing a page from the InnoDB buffer pool also flushes other dirty pages in the same extent (default is 1): 0 - dirty pages in the same extent are not flushed, 1 - flush contiguous dirty pages in the same extent, 2 - flush dirty pages in the same extent' example: 0 maximum: 2 minimum: 0 title: innodb_flush_neighbors type: integer tmp_table_size: description: Limits the size of internal in-memory tables. Also set max_heap_table_size. Default is 16777216 (16M) example: 16777216 maximum: 1073741824 minimum: 1048576 title: tmp_table_size type: integer slow_query_log: description: Slow query log enables capturing of slow queries. Setting slow_query_log to false also truncates the mysql.slow_log table. Default is off example: true title: slow_query_log type: boolean connect_timeout: description: The number of seconds that the mysqld server waits for a connect packet before responding with Bad handshake example: 10 maximum: 3600 minimum: 2 title: connect_timeout type: integer log_output: description: The slow log output destination when slow_query_log is ON. To enable MySQL AI Insights, choose INSIGHTS. To use MySQL AI Insights and the mysql.slow_log table at the same time, choose INSIGHTS,TABLE. To only use the mysql.slow_log table, choose TABLE. To silence slow logs, choose NONE. enum: - INSIGHTS - INSIGHTS,TABLE - NONE - TABLE example: INSIGHTS title: log_output type: string net_read_timeout: description: The number of seconds to wait for more data from a connection before aborting the read. example: 30 maximum: 3600 minimum: 1 title: net_read_timeout type: integer innodb_lock_wait_timeout: description: The length of time in seconds an InnoDB transaction waits for a row lock before giving up. Default is 120. example: 50 maximum: 3600 minimum: 1 title: innodb_lock_wait_timeout type: integer wait_timeout: description: The number of seconds the server waits for activity on a noninteractive connection before closing it. example: 28800 maximum: 2147483 minimum: 1 title: wait_timeout type: integer innodb_rollback_on_timeout: description: When enabled a transaction timeout causes InnoDB to abort and roll back the entire transaction. Changing this parameter will lead to a restart of the MySQL service. example: true title: innodb_rollback_on_timeout type: boolean group_concat_max_len: description: The maximum permitted result length in bytes for the GROUP_CONCAT() function. example: 1024 maximum: 18446744073709551615 minimum: 4 title: group_concat_max_len type: integer net_buffer_length: description: Start sizes of connection buffer and result buffer. Default is 16384 (16K). Changing this parameter will lead to a restart of the MySQL service. example: 16384 maximum: 1048576 minimum: 1024 title: net_buffer_length type: integer innodb_print_all_deadlocks: description: When enabled, information about all deadlocks in InnoDB user transactions is recorded in the error log. Disabled by default. example: true title: innodb_print_all_deadlocks type: boolean innodb_online_alter_log_max_size: description: The upper limit in bytes on the size of the temporary log files used during online DDL operations for InnoDB tables. example: 134217728 maximum: 1099511627776 minimum: 65536 title: innodb_online_alter_log_max_size type: integer interactive_timeout: description: The number of seconds the server waits for activity on an interactive connection before closing it. example: 3600 maximum: 604800 minimum: 30 title: interactive_timeout type: integer innodb_log_buffer_size: description: The size in bytes of the buffer that InnoDB uses to write to the log files on disk. example: 16777216 maximum: 4294967295 minimum: 1048576 title: innodb_log_buffer_size type: integer max_allowed_packet: description: Size of the largest message in bytes that can be received by the server. Default is 67108864 (64M) example: 67108864 maximum: 1073741824 minimum: 102400 title: max_allowed_packet type: integer max_heap_table_size: description: Limits the size of internal in-memory tables. Also set tmp_table_size. Default is 16777216 (16M) example: 16777216 maximum: 1073741824 minimum: 1048576 title: max_heap_table_size type: integer innodb_ft_server_stopword_table: description: This option is used to specify your own InnoDB FULLTEXT index stopword list for all InnoDB tables. example: db_name/table_name maxLength: 1024 nullable: true pattern: ^.+/.+$ title: innodb_ft_server_stopword_table type: string innodb_read_io_threads: description: The number of I/O threads for read operations in InnoDB. Default is 4. Changing this parameter will lead to a restart of the MySQL service. example: 10 maximum: 64 minimum: 1 title: innodb_read_io_threads type: integer sql_require_primary_key: description: Require primary key to be defined for new tables or old tables modified with ALTER TABLE and fail if missing. It is recommended to always have primary keys because various functionality may break if any large table is missing them. example: true title: sql_require_primary_key type: boolean default_time_zone: description: Default server time zone as an offset from UTC (from -12:00 to +12:00), a time zone name, or 'SYSTEM' to use the MySQL server default. example: +03:00 maxLength: 100 minLength: 2 pattern: ^([-+][\d:]*|[\w/]*)$ title: default_time_zone type: string long_query_time: description: The slow_query_logs work as SQL statements that take more than long_query_time seconds to execute. Default is 10s example: 10 maximum: 3600 minimum: 0.0 title: long_query_time type: number title: mysql.conf configuration values type: object dbaas-service-pg: type: object properties: pgbouncer-settings: $ref: '#/components/schemas/json-schema-pgbouncer' description: PGBouncer connection pooling settings updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: uri: type: array items: type: string params: type: array items: type: object additionalProperties: type: string standby: type: array items: type: string syncing: type: array items: type: string description: PG connection information properties backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. description: Backup schedule node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name connection-pools: type: array items: type: object properties: connection-uri: type: string description: Connection URI for the DB pool database: $ref: '#/components/schemas/dbaas-database-name' description: Service database name mode: $ref: '#/components/schemas/enum-pg-pool-mode' description: PGBouncer pool mode name: $ref: '#/components/schemas/dbaas-pg-pool-name' description: Connection pool name size: $ref: '#/components/schemas/dbaas-pg-pool-size' description: Size of PGBouncer's PostgreSQL side connection pool username: $ref: '#/components/schemas/dbaas-pg-pool-username' description: Pool username required: - connection-uri - database - mode - name - size - username description: PostgreSQL PGBouncer connection pools type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service timescaledb-settings: $ref: '#/components/schemas/json-schema-timescaledb' description: TimescaleDB extension configuration values databases: type: array items: $ref: '#/components/schemas/dbaas-database-name' description: List of PostgreSQL databases ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects synchronous-replication: $ref: '#/components/schemas/enum-pg-synchronous-replication' description: Synchronous replication type. Note that the service plan also needs to support synchronous replication. pglookout-settings: $ref: '#/components/schemas/json-schema-pglookout' description: PGLookout settings maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs version: type: string description: PostgreSQL version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan work-mem: type: integer format: int64 minimum: 1 maximum: 1024 exclusiveMinimum: false exclusiveMaximum: false description: Sets the maximum amount of memory to be used by a query operation (such as a sort or hash table) before writing to temporary disk files, in MB. Default is 1MB + 0.075% of total RAM (up to 32MB). shared-buffers-percentage: type: integer format: int64 minimum: 20 maximum: 60 exclusiveMinimum: false exclusiveMaximum: false description: Percentage of total RAM that the database server uses for shared memory buffers. Valid range is 20-60 (float), which corresponds to 20% - 60%. This setting adjusts the shared_buffers configuration value. pg-settings: $ref: '#/components/schemas/json-schema-pg' description: PostgreSQL-specific settings max-connections: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Maximum number of connections allowed to an instance users: type: array items: type: object properties: type: type: string description: Account type username: type: string description: Account username password: type: string description: Account password. A missing field indicates a user overridden password. allow-replication: type: boolean required: - type - username description: List of service users description: List of service users required: - name - plan - type - prometheus-uri dbaas-migration-status: type: object properties: error: type: string description: Error message in case that migration has failed method: type: string description: Migration method. Empty in case of multiple methods or error status: type: string description: Migration status details: type: array items: type: object properties: dbname: type: string description: Migrated db name error: type: string description: Error message in case that migration has failed method: type: string description: Migration method status: $ref: '#/components/schemas/enum-migration-status' description: Migration status description: Migration status per database dbaas-service-type-name: type: string maxLength: 64 minLength: 0 dbaas-user-kafka-connect-secrets: type: object properties: username: type: string description: Kafka Connect username password: type: string description: Kafka Connect password description: Kafka Connect secrets dbaas-service-mysql: type: object properties: updated-at: type: string format: date-time description: Service last update timestamp (ISO 8601) node-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of service nodes in the active plan connection-info: type: object properties: uri: type: array items: type: string params: type: array items: type: object additionalProperties: type: string standby: type: array items: type: string description: MySQL connection information properties backup-schedule: type: object properties: backup-hour: type: integer format: int64 minimum: 0 maximum: 23 exclusiveMinimum: false exclusiveMaximum: false description: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. backup-minute: type: integer format: int64 minimum: 0 maximum: 59 exclusiveMinimum: false exclusiveMaximum: false description: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. description: Backup schedule node-cpu-count: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of CPUs for each node prometheus-uri: type: object properties: host: type: string port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Prometheus integration URI integrations: type: array items: $ref: '#/components/schemas/dbaas-integration' description: Service integrations zone: type: string description: The zone where the service is running node-states: type: array items: $ref: '#/components/schemas/dbaas-node-state' description: State of individual service nodes name: $ref: '#/components/schemas/dbaas-service-name' description: Service name type: $ref: '#/components/schemas/dbaas-service-type-name' description: Service type code state: $ref: '#/components/schemas/enum-service-state' description: State of the service databases: type: array items: $ref: '#/components/schemas/dbaas-mysql-database-name' description: List of MySQL databases ip-filter: type: array items: type: string description: Allowed CIDR address blocks for incoming connections backups: type: array items: $ref: '#/components/schemas/dbaas-service-backup' description: List of backups for the service termination-protection: type: boolean description: Service is protected against termination and powering off notifications: type: array items: $ref: '#/components/schemas/dbaas-service-notification' description: Service notifications components: type: array items: type: object properties: component: type: string description: Service component name host: type: string description: DNS name for connecting to the service component port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: $ref: '#/components/schemas/enum-component-route' description: Network access route usage: $ref: '#/components/schemas/enum-component-usage' description: DNS usage name required: - component - host - port - route - usage description: Service component information objects mysql-settings: $ref: '#/components/schemas/json-schema-mysql' description: MySQL-specific settings maintenance: $ref: '#/components/schemas/dbaas-service-maintenance' description: Automatic maintenance settings disk-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT disk space for data storage node-memory: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: TODO UNIT of memory for each node uri: type: string description: URI for connecting to the service (may be absent) uri-params: type: object description: service_uri parameterized into key-value pairs version: type: string description: MySQL version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: type: object properties: type: type: string username: type: string password: type: string authentication: type: string description: List of service users required: - name - plan - type - prometheus-uri dbaas-endpoint-opensearch-input-update: type: object properties: settings: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate url: type: string maxLength: 2048 minLength: 12 description: OpenSearch connection URL index-prefix: type: string maxLength: 1000 minLength: 1 pattern: ^[a-z0-9][a-z0-9-_.]+$ description: OpenSearch index prefix index-days-max: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false description: Maximum number of days of logs to keep timeout: type: integer format: int64 minimum: 10.0 maximum: 120.0 exclusiveMinimum: false exclusiveMaximum: false description: OpenSearch request timeout limit json-schema-pg: additionalProperties: false properties: track_activity_query_size: description: Specifies the number of bytes reserved to track the currently executing command for each active session. Changing this parameter causes a service restart. example: 1024 maximum: 10240 minimum: 1024 title: track_activity_query_size type: integer timezone: description: PostgreSQL service timezone example: Europe/Helsinki maxLength: 64 pattern: ^[\w/]*$ title: timezone type: string track_io_timing: description: Enables timing of database I/O calls. The default is `off`. When on, it will repeatedly query the operating system for the current time, which may cause significant overhead on some platforms. enum: - 'off' - 'on' example: 'off' title: track_io_timing type: string pg_stat_monitor.pgsm_enable_query_plan: description: Enables or disables query plan monitoring. Changing this parameter causes a service restart. Only available for PostgreSQL 13+. example: false title: pg_stat_monitor.pgsm_enable_query_plan type: boolean max_files_per_process: description: PostgreSQL maximum number of files that can be open per process. The default is `1000` (upstream default). Changing this parameter causes a service restart. maximum: 4096 minimum: 1000 title: max_files_per_process type: integer pg_stat_monitor.pgsm_max_buckets: description: Sets the maximum number of buckets. Changing this parameter causes a service restart. Only available for PostgreSQL 13+. example: 10 maximum: 10 minimum: 1 title: pg_stat_monitor.pgsm_max_buckets type: integer io_max_concurrency: default: -1 description: 'EXPERIMENTAL: Controls the maximum number of I/O operations that one process can execute simultaneously. Version 18 and up only. Changing this parameter causes a service restart.' maximum: 1024 minimum: -1 title: io_max_concurrency type: integer wal: properties: max_slot_wal_keep_size: description: PostgreSQL maximum WAL size (MB) reserved for replication slots. If `-1` is specified, replication slots may retain an unlimited amount of WAL files. The default is `-1` (upstream default). wal_keep_size minimum WAL size setting takes precedence over this. maximum: 2147483647 minimum: -1 title: max_slot_wal_keep_size type: integer max_wal_senders: description: PostgreSQL maximum WAL senders. The default is `20`. Changing this parameter causes a service restart. maximum: 256 minimum: 20 title: max_wal_senders type: integer wal_sender_timeout: description: Terminate replication connections that are inactive for longer than this amount of time, in milliseconds. maximum: 10800000 minimum: 0 title: A value of 0 disables the timeout. Otherwise between 5000 and 10800000 millis type: integer wal_writer_delay: description: WAL flush interval in milliseconds. The default is `200`. Setting this parameter to a lower value may negatively impact performance. example: 50 maximum: 200 minimum: 10 title: wal_writer_delay type: integer title: Write-ahead log (WAL) settings type: object default_toast_compression: description: Specifies the default TOAST compression method for values of compressible columns. The default is `lz4`. Only available for PostgreSQL 14+. enum: - lz4 - pglz example: lz4 title: default_toast_compression type: string deadlock_timeout: description: This is the amount of time, in milliseconds, to wait on a lock before checking to see if there is a deadlock condition. The default is `1000` (upstream default). example: 1000 maximum: 1800000 minimum: 500 title: deadlock_timeout type: integer idle_in_transaction_session_timeout: description: Time out sessions with open transactions after this number of milliseconds maximum: 604800000 minimum: 0 title: idle_in_transaction_session_timeout type: integer max_pred_locks_per_transaction: description: PostgreSQL maximum predicate locks per transaction. The default is `64` (upstream default). Changing this parameter causes a service restart. maximum: 5120 minimum: 64 title: max_pred_locks_per_transaction type: integer max_replication_slots: description: PostgreSQL maximum replication slots. The default is `20`. Changing this parameter causes a service restart. maximum: 256 minimum: 8 title: max_replication_slots type: integer max_sync_workers_per_subscription: description: Maximum number of synchronization workers per subscription. The default is `2`. maximum: 8 minimum: 2 title: max_sync_workers_per_subscription type: integer autovacuum: properties: log_autovacuum_min_duration: description: Causes each action executed by autovacuum to be logged if it ran for at least the specified number of milliseconds. Setting this to zero logs all autovacuum actions. Minus-one disables logging autovacuum actions. The default is `1000`. maximum: 2147483647 minimum: -1 title: log_autovacuum_min_duration type: integer autovacuum_vacuum_cost_limit: description: Specifies the cost limit value that will be used in automatic VACUUM operations. If `-1` is specified, the regular vacuum_cost_limit value will be used. The default is `-1` (upstream default). maximum: 10000 minimum: -1 title: autovacuum_vacuum_cost_limit type: integer autovacuum_max_workers: description: Specifies the maximum number of autovacuum processes (other than the autovacuum launcher) that may be running at any one time. The default is `3`. Changing this parameter causes a service restart. maximum: 20 minimum: 1 title: autovacuum_max_workers type: integer autovacuum_vacuum_threshold: description: Specifies the minimum number of updated or deleted tuples needed to trigger a VACUUM in any one table. The default is `50`. maximum: 2147483647 minimum: 0 title: autovacuum_vacuum_threshold type: integer autovacuum_naptime: description: Specifies the minimum delay between autovacuum runs on any given database. The delay is measured in seconds. The default is `60`. maximum: 86400 minimum: 1 title: autovacuum_naptime type: integer autovacuum_vacuum_scale_factor: description: Specifies a fraction of the table size to add to autovacuum_vacuum_threshold when deciding whether to trigger a VACUUM (e.g. `0.2` for 20% of the table size). The default is `0.2`. maximum: 1.0 minimum: 0.0 title: autovacuum_vacuum_scale_factor type: number autovacuum_vacuum_cost_delay: description: Specifies the cost delay value that will be used in automatic VACUUM operations. If `-1` is specified, the regular vacuum_cost_delay value will be used. The default is `2` (upstream default). maximum: 100 minimum: -1 title: autovacuum_vacuum_cost_delay type: integer autovacuum_analyze_scale_factor: description: Specifies a fraction of the table size to add to autovacuum_analyze_threshold when deciding whether to trigger an ANALYZE (e.g. `0.2` for 20% of the table size). The default is `0.2`. maximum: 1.0 minimum: 0.0 title: autovacuum_analyze_scale_factor type: number autovacuum_analyze_threshold: description: Specifies the minimum number of inserted, updated or deleted tuples needed to trigger an ANALYZE in any one table. The default is `50`. maximum: 2147483647 minimum: 0 title: autovacuum_analyze_threshold type: integer autovacuum_freeze_max_age: description: Specifies the maximum age (in transactions) that a table's pg_class.relfrozenxid field can attain before a VACUUM operation is forced to prevent transaction ID wraparound within the table. The system launches autovacuum processes to prevent wraparound even when autovacuum is otherwise disabled. Changing this parameter causes a service restart. example: 200000000 maximum: 1500000000 minimum: 200000000 title: autovacuum_freeze_max_age type: integer title: Autovacuum settings type: object max_parallel_workers_per_gather: description: Sets the maximum number of workers that can be started by a single Gather or Gather Merge node. The default is `2` (upstream default). maximum: 96 minimum: 0 title: max_parallel_workers_per_gather type: integer io_combine_limit: default: 16 description: 'EXPERIMENTAL: Controls the largest I/O size in operations that combine I/O in 8kB units. Version 17 and up only.' maximum: 32 minimum: 1 title: io_combine_limit type: integer password_encryption: description: Chooses the algorithm for encrypting passwords. enum: - md5 - scram-sha-256 example: scram-sha-256 nullable: true title: password_encryption type: string io_workers: default: 3 description: 'EXPERIMENTAL: Number of IO worker processes, for io_method=worker. Version 18 and up only. Changing this parameter causes a service restart.' maximum: 32 minimum: 1 title: io_max_concurrency type: integer pg_partman_bgw.interval: description: Sets the time interval in seconds to run pg_partman's scheduled tasks. The default is `3600`. example: 3600 maximum: 604800 minimum: 3600 title: pg_partman_bgw.interval type: integer log_line_prefix: description: Choose from one of the available log formats. enum: - '''pid=%p,user=%u,db=%d,app=%a,client=%h ''' - '''pid=%p,user=%u,db=%d,app=%a,client=%h,txid=%x,qid=%Q ''' - '''%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h ''' - '''%m [%p] %q[user=%u,db=%d,app=%a] ''' title: log_line_prefix type: string log_temp_files: description: Log statements for each temporary file created larger than this number of kilobytes, -1 disables maximum: 2147483647 minimum: -1 title: log_temp_files type: integer max_locks_per_transaction: description: PostgreSQL maximum locks per transaction. Changing this parameter causes a service restart. maximum: 6400 minimum: 64 title: max_locks_per_transaction type: integer track_commit_timestamp: description: Record commit time of transactions. Changing this parameter causes a service restart. enum: - 'off' - 'on' example: 'off' title: track_commit_timestamp type: string track_functions: description: Enables tracking of function call counts and time used. enum: - all - pl - none title: track_functions type: string io_max_combine_limit: default: 16 description: 'EXPERIMENTAL: Controls the largest I/O size in operations that combine I/O in 8kB units, and silently limits the user-settable parameter io_combine_limit. Version 18 and up only. Changing this parameter causes a service restart.' maximum: 128 minimum: 1 title: io_max_combine_limit type: integer io_method: default: worker description: 'EXPERIMENTAL: Controls the maximum number of I/O operations that one process can execute simultaneously. Version 18 and up only. Changing this parameter causes a service restart.' enum: - worker - sync - io_uring title: io_method type: string max_stack_depth: description: Maximum depth of the stack in bytes. The default is `2097152` (upstream default). maximum: 6291456 minimum: 2097152 title: max_stack_depth type: integer max_parallel_workers: description: Sets the maximum number of workers that the system can support for parallel queries. The default is `8` (upstream default). maximum: 96 minimum: 0 title: max_parallel_workers type: integer pg_partman_bgw.role: description: Controls which role to use for pg_partman's scheduled background tasks. example: myrolename maxLength: 64 pattern: ^[_A-Za-z0-9][-._A-Za-z0-9]{0,63}$ title: pg_partman_bgw.role type: string max_logical_replication_workers: description: PostgreSQL maximum logical replication workers (taken from the pool of max_parallel_workers). The default is `4` (upstream default). Changing this parameter causes a service restart. maximum: 256 minimum: 4 title: max_logical_replication_workers type: integer max_prepared_transactions: description: PostgreSQL maximum prepared transactions. The default is `0`. Changing this parameter causes a service restart. maximum: 10000 minimum: 0 title: max_prepared_transactions type: integer max_worker_processes: description: Sets the maximum number of background processes that the system can support. The default is `8`. Changing this parameter causes a service restart. maximum: 288 minimum: 8 title: max_worker_processes type: integer pg_stat_statements.track: description: Controls which statements are counted. Specify top to track top-level statements (those issued directly by clients), all to also track nested statements (such as statements invoked within functions), or none to disable statement statistics collection. The default is `top`. enum: - all - top - none title: pg_stat_statements.track type: string temp_file_limit: description: PostgreSQL temporary file limit in KiB, -1 for unlimited example: 5000000 maximum: 2147483647 minimum: -1 title: temp_file_limit type: integer log_error_verbosity: description: Controls the amount of detail written in the server log for each message that is logged. enum: - TERSE - DEFAULT - VERBOSE title: log_error_verbosity type: string log_min_duration_statement: description: Log statements that take more than this number of milliseconds to run, -1 disables maximum: 86400000 minimum: -1 title: log_min_duration_statement type: integer max_standby_streaming_delay: description: Max standby streaming delay in milliseconds. The default is `30000` (upstream default). maximum: 43200000 minimum: 1 title: max_standby_streaming_delay type: integer jit: description: Controls system-wide use of Just-in-Time Compilation (JIT). example: true title: jit type: boolean max_standby_archive_delay: description: Max standby archive delay in milliseconds. The default is `30000` (upstream default). maximum: 43200000 minimum: 1 title: max_standby_archive_delay type: integer bg-writer: properties: bgwriter_delay: description: Specifies the delay between activity rounds for the background writer in milliseconds. The default is `200`. example: 200 maximum: 10000 minimum: 10 title: bgwriter_delay type: integer bgwriter_flush_after: description: Whenever more than bgwriter_flush_after bytes have been written by the background writer, attempt to force the OS to issue these writes to the underlying storage. Specified in kilobytes. Setting of 0 disables forced writeback. The default is `512`. example: 512 maximum: 2048 minimum: 0 title: bgwriter_flush_after type: integer bgwriter_lru_maxpages: description: In each round, no more than this many buffers will be written by the background writer. Setting this to zero disables background writing. The default is `100`. example: 100 maximum: 1073741823 minimum: 0 title: bgwriter_lru_maxpages type: integer bgwriter_lru_multiplier: description: The average recent need for new buffers is multiplied by bgwriter_lru_multiplier to arrive at an estimate of the number that will be needed during the next round, (up to bgwriter_lru_maxpages). 1.0 represents a “just in time” policy of writing exactly the number of buffers predicted to be needed. Larger values provide some cushion against spikes in demand, while smaller values intentionally leave writes to be done by server processes. The default is `2.0`. example: 2.0 maximum: 10 minimum: 0 title: bgwriter_lru_multiplier type: number title: Background (BG) writer settings type: object title: postgresql.conf configuration values type: object dbaas-kafka-topic-acl-entry: type: object properties: id: $ref: '#/components/schemas/dbaas-kafka-acl-id' description: Kafka ACL ID username: type: string maxLength: 64 minLength: 1 description: Kafka username or username pattern topic: type: string maxLength: 249 minLength: 1 description: Kafka topic name or pattern permission: type: string enum: - admin - read - readwrite - write description: Kafka permission required: - username - topic - permission x-topics: - title: API Request Signature content: ' In order to authenticate legitimate users, the Exoscale API requires incoming requests to be signed using valid Exoscale API account credentials with the following mechanism. ## Signature Mechanism The *message* (i.e. content) to sign contains several segments concatenated using a line return character (`\n`). All segments must be included and in the described order. For cases where a segment doesn''t fit the context of the request (e.g. no request body) **an empty line must be used instead**. * Request method and request URL (path only), separated by a space character * Request body * Request URL parameters (Query String) values, concatenated without separator. The matching parameter names have to be specified in the resulting signature header `signed-query-args=` pragma, separated by semicolons (e.g. `p1;p2;pN`). * Request header values, concatenated without separator (none at the moment, leave empty) * Request expiration date in UNIX timestamp format Example *message* to sign for `GET /v2/resource/a02baf5a-a3e4-49a0-857b-8a08d276c1c0?p1=v1&p2=v2`: ``` GET /v2/resource/a02baf5a-a3e4-49a0-857b-8a08d276c1c0 v1v2 1599140767 ``` The two blank lines above are due to the absence of a request body and signed headers. Example *message* to [create a security group](https://community.exoscale.com/reference/api/compute/security-group/#create-security-group) ``` POST /v2/security-group {"name": "my-security-group"} 1599140767 ``` The two blank lines above are due to the absence of query parameters and signed headers. The request signature consists of the base64-encoded [HMAC](https://en.wikipedia.org/wiki/HMAC) hash of the UTF-8 encoded *message* and the Exoscale API secret using the SHA265 function: ``` signature = BASE64_ENCODE(HMAC_SHA256(Exoscale API secret, message)) ``` Finally, the computed signature must be added to the API request in a `Authorization` header such as: ``` Authorization: EXO2-HMAC-SHA256 credential=,expires=,signature= ``` Example API query: ``` GET /v2/resource/a02baf5a-a3e4-49a0-857b-8a08d276c1c0?p1=v1&p2=v2 HTTP/1.1 Host: api-ch-gva-2.exoscale.com Authorization: EXO2-HMAC-SHA256 credential=EXO29147e9f89102b7ac1e88514,signed-query-args=p1;p2,expires=1599140767,signature=2AOBQsbElQb4FpKT/FM/9T4NobjlmZkSGvvdUth/xlY= ``` ## Reference Implementations You can look up the following existing reference implementations: * Go: [github.com/exoscale/egoscale/api/v2 > `SecurityProviderExoscale.signRequest`](https://github.com/exoscale/egoscale/blob/master/v2/api/security.go) * Python: [requests-exoscale-auth > `ExoscaleV2Auth`](https://github.com/exoscale/requests-exoscale-auth/blob/master/exoscale_auth.py) ' - title: Zone local resources content: ' The API is deployed across all Exoscale zones. When performing a compute call, you should use the relevant zone for your resource. For example: https://api-de-fra-1.exoscale.com/v2/instance would return only the instances from `de-fra-1`, https://api-ch-gva-2.exoscale.com/v2/instance from `ch-gva-2`. To obtain a list of all instances across all zones, you would need to do the corresponding request for each zone. '