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 API description: Infrastructure automation API, allowing programmatic access to all Exoscale products and services. tags: - description: IAM roles lets you define logical sets of policies to grant to users and API keys. parent: iam externalDocs: description: Read more url: https://community.exoscale.com/product/iam/operation/role-mgmt/ name: role x-display-name: Role x-weight: 820 x-icon: exo-iam - description: MySQL, the popular open-source, object-relational database. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/mysql/ name: dbaas-mysql x-display-name: DBaaS Mysql x-weight: 420 x-icon: exo-db-mysql - description: '[BETA] Operations for KMS External Key Store management.' parent: kms name: key-store x-display-name: External Key Store x-weight: 1135 - description: API keys for accessing inference deployments. parent: ai externalDocs: description: Read more url: https://www.exoscale.com/ai-cloud-infrastructure/managed-inference/ name: ai-api-key x-display-name: AI API Key x-weight: 940 x-icon: exo-license - description: "" externalDocs: description: Read more url: https://community.exoscale.com/product/networking/ name: networking x-display-name: Networking x-weight: 150 x-icon: exo-network - description: Elastic IPs are additional public IPv4/6 addresses that can be attached to Compute instances, with optional healthcheck support. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/product/networking/eip/ name: elastic-ip x-display-name: Elastic IP x-weight: 170 x-icon: exo-eip - description: Reverse DNS lets you record PTR records for Compute instance public IP addresses or Elastic IPs. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/product/compute/instances/ name: reverse-dns x-display-name: Reverse DNS x-weight: 210 x-icon: exo-dns - description: Clusters are managed Kubernetes control planes. parent: sks externalDocs: description: Read more url: https://community.exoscale.com/documentation/sks/ name: cluster x-display-name: Cluster x-weight: 310 x-icon: exo-sks - description: |- Instances are the virtual machines at the core of the Exoscale Compute service. parent: compute externalDocs: description: Read more url: https://www.exoscale.com/compute/ name: instance x-display-name: Instance x-weight: 110 x-icon: exo-vm - description: Kafka is a distributed, open-source data platform for optimized real-time processing of streaming data. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/kafka/ name: dbaas-kafka x-display-name: DBaaS Kafka x-weight: 440 x-icon: exo-db-kafka - description: |- A Zone represents an independent datacenter in which Exoscale infrastructure is deployed into. parent: general externalDocs: description: Read more url: https://www.exoscale.com/datacenters/ name: zone x-display-name: Zone x-weight: 1110 x-icon: exo-network - 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 - description: Exoscale AI services provide GPU-powered infrastructure for running machine learning workloads and large language models. externalDocs: description: Read more url: https://www.exoscale.com/ai-cloud-infrastructure/ name: ai x-display-name: AI x-weight: 900 x-icon: exo-ai-prod - description: Anti-affinity groups let you define placement constraints for your Compute instances. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/product/compute/instances/how-to/anti-affinity/ name: anti-affinity-group x-display-name: Anti-Affinity Group x-weight: 220 x-icon: exo-gpu - description: |- Operations describe the current state of an asynchronous operation. parent: general externalDocs: description: Read more url: https://community.exoscale.com/ name: operation x-display-name: Operation x-weight: 1100 x-icon: exo-logo - description: Host anything from simple applications to complex architectures. Start a compute instance in seconds and scale as your infrastructure grows. externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/ name: compute x-display-name: Compute x-weight: 100 x-icon: exo-vm - description: External integrations allow you to connect your Exoscale DBaaS services with third-party monitoring, logging, or analytics tools. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/how-to/external-integrations/ name: dbaas-external-endpoints x-display-name: DBaaS External Endpoints x-weight: 490 x-icon: exo-dbaas - description: |- An Instance Type is a resource describing the amount of CPU, RAM and GPUs allocated to a Compute instance. parent: compute externalDocs: description: Read more url: https://www.exoscale.com/pricing/ name: instance-type x-display-name: Instance Type x-weight: 200 x-icon: exo-gpu - description: Thanos is a large-scale metrics management system. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/thanos/ name: dbaas-thanos x-display-name: DBaaS Thanos x-weight: 470 x-icon: exo-db-thanos - description: |- Templates contain the OS and the initial setup of a Compute instance. parent: compute externalDocs: description: Read more url: https://www.exoscale.com/templates/ name: template x-display-name: Template x-weight: 140 x-icon: exo-template - description: |- A Network Load Balancer (NLB) is a Layer 4 (TCP/UDP) load balancer that distributes incoming traffic to Compute instances managed by an Instance Pool. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/network-load-balancer/ name: network-load-balancer x-display-name: Network Load Balancer x-weight: 180 x-icon: exo-nlb - description: Valkey, the open-source key-value store with a RedisĀ®-compatible interface. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/valkey/ name: dbaas-valkey x-display-name: DBaaS Valkey x-weight: 460 x-icon: exo-db-valkey - description: View the impact of your past usage, and estimate the impact of future usage. parent: general externalDocs: description: Read more url: https://community.exoscale.com/platform/environmental-impact/ name: environmental-impact x-display-name: Environmental Impact x-weight: 1150 x-icon: exo-logo - description: Operations for KMS Key lifecycle management. parent: kms externalDocs: description: Read more url: https://community.exoscale.com/documentation/security/kms/overview name: kms-key x-display-name: KMS Key x-weight: 1130 x-icon: exo-license - description: SSH Keypairs parent: compute externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/ssh-keypairs/ name: ssh-key x-display-name: SSH Key x-weight: 160 x-icon: exo-cli - description: |- Instance Pools is an Exoscale service allowing users to provision managed groups of identical Compute instances automatically. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/instance-pools/ name: instance-pool x-display-name: Instance Pool x-weight: 120 x-icon: exo-vmpool - description: PostgreSQL, open-source database known for its wide range of features and popularity with developers. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/postgresql/ name: dbaas-postgresql x-display-name: DBaaS Postgresql x-weight: 410 x-icon: exo-db-postgresql - description: Exoscale Simple Object Storage (SOS) is an S3-compatible object storage service. externalDocs: description: Read more url: https://community.exoscale.com/product/storage/object-storage/ name: sos x-display-name: Object Storage x-weight: 500 x-icon: exo-object-storage - description: '[BETA] Create and manipulate routing rules' parent: vpc externalDocs: description: Read more url: https://community.exoscale.com/product/networking/vpc name: vpc-route x-display-name: VPC Routes x-weight: 198 x-icon: exo-vpc - description: |- Snapshots provide a way to get point-in-time recovery for your Compute instance. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/snapshots/ name: snapshot x-display-name: Snapshot x-weight: 130 x-icon: exo-snapshot - description: |- Security Groups are groups of firewall rules that regulate network traffic to and from your Compute instances. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/documentation/compute/security-groups/ name: security-group x-display-name: Security Group x-weight: 150 x-icon: exo-vpc - description: |- Events form the basis of the Exoscale audit-trail, a mechanism to query past events performing mutations on resources which happened on an organization. parent: audit-trail externalDocs: description: Read more url: https://community.exoscale.com/platform/audit-trail/ name: event x-display-name: Event x-weight: 1010 x-icon: exo-license - description: |- Exoscale's Block Storage offers persistent externally attached volumes for your Compute instances. externalDocs: description: Read more url: https://community.exoscale.com/documentation/block-storage/ name: block-storage x-display-name: Block Storage x-weight: 600 x-icon: exo-block-storage - description: Deploy Target lets you spin up Compute instances on dedicated hypervisors. parent: compute externalDocs: description: Read more url: https://www.exoscale.com/virtual-private-cloud/ name: deploy-target x-display-name: Deploy Target x-weight: 230 x-icon: exo-gpu - description: '[BETA] Virtual Private Cloud (VPC) provides isolated virtual network environments for your Exoscale resources.' parent: networking externalDocs: description: Read more url: https://community.exoscale.com/product/networking/vpc name: vpc x-display-name: VPC x-weight: 195 x-icon: exo-vpc - description: 'Operational management for DBaaS services: logs, metrics, service types and lifecycle.' parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/ name: dbaas-management x-display-name: DBaaS Management x-weight: 480 x-icon: exo-dbaas - description: DNS zone records management. parent: dns externalDocs: description: Read more url: https://community.exoscale.com/product/networking/dns/overview/ name: record x-display-name: Record x-weight: 720 x-icon: exo-dns - description: DNS zone hosting and records management. externalDocs: description: Read more url: https://community.exoscale.com/product/networking/dns/ name: dns x-display-name: DNS x-weight: 700 x-icon: exo-dns - description: Deployments are loaded model instances ready for inference. parent: dedicated-inference externalDocs: description: Read more url: https://www.exoscale.com/ai-cloud-infrastructure/dedicated-inference/ name: deployment x-display-name: Deployment x-weight: 930 x-icon: exo-gpu - description: The Exoscale audit-trail provides a mechanism to query past events performing mutations on resources which happened on an organization. externalDocs: description: Read more url: https://community.exoscale.com/platform/audit-trail/ name: audit-trail x-display-name: Audit Trail x-weight: 1000 x-icon: exo-license - description: A suite of cryptographic primitives offered by the Exoscale KMS. parent: kms externalDocs: description: Read more url: https://community.exoscale.com/documentation/security/kms/overview name: crypto x-display-name: Cryptographic Operations x-weight: 1140 x-icon: exo-ipv6 - description: Nodepools are groups of compute instances managed by SKS, serving as worker nodes in your Kubernetes cluster. parent: sks externalDocs: description: Read more url: https://community.exoscale.com/documentation/sks/ name: nodepool x-display-name: Nodepool x-weight: 320 x-icon: exo-vmpool - description: Grafana, the open-source software that lets you query and visualize metrics, logs and traces from any storage source. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/grafana/ name: dbaas-grafana x-display-name: DBaaS Grafana x-weight: 430 x-icon: exo-db-grafana - description: 'Identity and Access Management: roles, users, policies and credentials for accessing the Exoscale API.' externalDocs: description: Read more url: https://community.exoscale.com/product/iam/ name: iam x-display-name: IAM x-weight: 800 x-icon: exo-iam - description: DNS zone management. parent: dns externalDocs: description: Read more url: https://community.exoscale.com/product/networking/dns/quick-start/ name: domain x-display-name: Domain x-weight: 710 x-icon: exo-dns - description: Private Network provides private L2 networking functionality between Compute instances. parent: compute externalDocs: description: Read more url: https://community.exoscale.com/product/networking/private-network/ name: private-network x-display-name: Private Network x-weight: 190 x-icon: exo-network - description: Exoscale Key Management Service is a managed security service that lets you create, control and manage the lifecycle of cryptographic keys. externalDocs: description: Read more url: https://community.exoscale.com/documentation/security/kms/ name: kms x-display-name: KMS x-weight: 1120 x-icon: exo-secgrp - description: Deploy and run AI models on dedicated GPUs. parent: ai externalDocs: description: Read more url: https://www.exoscale.com/ai-cloud-infrastructure/dedicated-inference/ name: dedicated-inference x-display-name: Dedicated Inference x-weight: 905 x-icon: exo-ai-prod - description: Opensearch, the popular open-source search and analytics database. parent: dbaas externalDocs: description: Read more url: https://community.exoscale.com/product/dbaas/service-specific/opensearch/ name: dbaas-opensearch x-display-name: DBaaS Opensearch x-weight: 450 x-icon: exo-db-opensearch - description: IAM users map to humans empowered with access to Exoscale resources. parent: iam externalDocs: description: Read more url: https://community.exoscale.com/product/iam/operation/users-keys/ name: user x-display-name: User x-weight: 830 x-icon: exo-iam - description: '[BETA] Create and manipulate VPCs' parent: vpc externalDocs: description: Read more url: https://community.exoscale.com/product/networking/vpc name: vpc-management x-display-name: VPC x-weight: 196 x-icon: exo-vpc - description: Nodepool templates are Exoscale-managed instance templates for SKS worker nodes. parent: sks externalDocs: description: Read more url: https://community.exoscale.com/documentation/sks/ name: nodepool-template x-display-name: Nodepool Template x-weight: 330 x-icon: exo-template - description: |- SKS is Exoscale's scalable Kubernetes service which provides managed Kubernetes control planes with integrated support for Exoscale instance pools ands network load balancers. externalDocs: description: Read more url: https://community.exoscale.com/documentation/sks/ name: sks x-display-name: SKS x-weight: 300 x-icon: exo-sks - description: '[BETA] Configure VPC subnets and attach instances to them' parent: vpc externalDocs: description: Read more url: https://community.exoscale.com/product/networking/vpc name: vpc-subnet x-display-name: VPC Subnets x-weight: 197 x-icon: exo-vpc - description: The Organization Policy is an IAM policy that applies as a first layer across your entire Exoscale organization. parent: iam externalDocs: description: Read more url: https://community.exoscale.com/product/iam/operation/roles-policies/ name: organization-policy x-display-name: Organization Policy x-weight: 840 x-icon: exo-iam - description: API keys are credentials for programmatic access to Exoscale APIs and services. parent: iam externalDocs: description: Read more url: https://community.exoscale.com/product/iam/how-to/key-mgmt/ name: api-key x-display-name: API Key x-weight: 810 x-icon: exo-iam - description: Lifecycle of AI Models. parent: dedicated-inference externalDocs: description: Read more url: https://www.exoscale.com/ai-cloud-infrastructure/dedicated-inference/ name: model x-display-name: AI Model x-weight: 920 x-icon: exo-ai-prod components: schemas: 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 env-impact-indicator: type: object properties: value: type: string description: Value amount: type: number description: Amount unit: type: string description: Unit details: type: array items: $ref: '#/components/schemas/env-impact-detail' description: Details 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 reserved-resources: type: object properties: cpu: type: string description: 'CPU reservation, e.g., "200m" ' memory: type: string description: 'Memory reservation, e.g., "512Mi" ' ephemeral-storage: type: string description: 'Ephemeral storage reservation, e.g., "1Gi" ' required: - cpu description: Resources reserved for kube or system components. dbaas-service-clickhouse: 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 mysql-uri: type: string arrowflight-uri: type: string description: ClickHouse 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 clickhouse-settings: $ref: '#/components/schemas/json-schema-clickhouse' description: ClickHouse-specific settings 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. By default endpoints are always encrypted and 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: ClickHouse version created-at: type: string format: date-time description: Service creation timestamp (ISO 8601) plan: type: string description: Subscription plan users: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user' description: List of ClickHouse users required: - name - plan - type - prometheus-uri encrypt-response: type: object required: - ciphertext - encryption-algorithm properties: ciphertext: type: string format: byte description: The resulting Base64-encoded ciphertext after encryption. encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm that was used to encrypt this plaintext. private-network-ref: type: object properties: id: type: string format: uuid description: Private network ID description: Private network reference sks-audit-endpoint: type: string maxLength: 2000 minLength: 1 schedule-kms-key-deletion-response: type: object properties: delete-at: type: string description: Timestamp of the key deletion format: date-time get-deployment-logs-response: description: Deployment logs properties: logs: description: List of log entries type: array items: $ref: '#/components/schemas/get-deployment-logs-entry' type: object required: - logs 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 dbaas-endpoint-opensearch: 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 required: - url - index-prefix resource: type: object properties: id: type: string format: uuid description: Resource ID name: type: string description: Resource name description: Resource 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 instance-state: type: string enum: - expunging - starting - destroying - running - stopping - stopped - migrating - error - destroyed verify-request: type: object required: - message - signature - signing-algorithm properties: message: type: string format: byte minLength: 1 maxLength: 5464 description: The Base64-encoded message to verify (1-4096 decoded bytes), with the same semantics as `sign`'s `message` field. message-type: type: string enum: - raw - digest default: raw description: How `message` should be interpreted, with the same semantics as `sign`'s `message-type` field. signature: type: string format: byte minLength: 1 maxLength: 8192 description: The Base64-encoded signature to verify against `message` (1-6144 decoded bytes). signing-algorithm: type: string enum: - RSASSA_PSS_SHA_256 - RSASSA_PSS_SHA_384 - RSASSA_PSS_SHA_512 - ECDSA_SHA_256 - ECDSA_SHA_384 - ECDSA_SHA_512 - EDDSA_ED25519 - ED25519_PH_SHA_512 - ML_DSA_SHAKE_256 description: The signing algorithm `signature` was produced with. Must match the family implied by the key's `key-spec`, with the same semantics as `sign`'s `signing-algorithm` field. enum-external-endpoint-types: type: string enum: - prometheus - opensearch - rsyslog - datadog - elasticsearch cpu-manager-config: type: object properties: cpu-manager-policy: type: string enum: - static - none description: CPU management policy used by the kubelet. The "static" policy grants exclusive CPUs to Guaranteed pods requesting integer CPU limits. When set to "static", a CPU reservation must be provided via kube-reserved or system-reserved cpu-manager-policy-options: type: array items: type: string enum: - distribute-cpus-across-numa - full-pcpus-only - strict-cpu-reservation - align-by-socket - prefer-align-cpus-by-uncorecache - distribute-cpus-across-cores uniqueItems: true description: CPU manager policy options used by the kubelet. They refine the behavior of the "static" cpu-manager-policy and are only valid when the policy is "static" kube-reserved: $ref: '#/components/schemas/reserved-resources' description: Resources reserved for node components system-reserved: $ref: '#/components/schemas/reserved-resources' description: Resources reserved for system components cpu-manager-reconcile-period: type: string description: CPU manager reconcile period used by the kubelet, as a duration string (for example "10s"). description: CPU manager config get-confederatio-usage-response: description: GPU usage for all organizations properties: organizations-usages: additionalProperties: $ref: '#/components/schemas/organization-usage' type: object type: object required: - organizations-usages model-ref: description: Model reference. Provide either id or name. properties: name: description: Associated model name type: string minLength: 1 id: description: Associated model ID format: uuid type: string type: object minProperties: 1 dbaas-clickhouse-users: type: object properties: users: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user' dbaas-pg-pool-size: type: integer format: int64 minimum: 1 maximum: 10000 exclusiveMinimum: false exclusiveMaximum: false key-store-health: type: object properties: status: type: string enum: - healthy - unhealthy - unknown description: Latest normalized XKS proxy health status. status-reason: type: string description: Normalized reason for the latest status. checked-at: type: string format: date-time description: Timestamp of the latest completed health check. metadata-json: type: string format: byte description: Base64-encoded raw successful AWS GetHealthStatus JSON metadata. error-detail: type: string description: Normalized error detail for unhealthy observations. json-schema-clickhouse: properties: server_settings: additionalProperties: false description: ClickHouse server settings, which can be found in the `system.server_settings` table. properties: vector_similarity_index_cache_size: default: 0.07 description: Fraction of total server memory allocated to the vector similarity index cache. 0 disables the cache. Default is 0.07 (7% of server memory). Only effective on ClickHouse 25.8+. example: 0.07 maximum: 0.5 minimum: 0 title: vector_similarity_index_cache_size type: number title: ClickHouse server settings type: object tiered_storage_move_factor: default: 0.2 description: The percentage of free disk space required on local storage before data is moved to object storage. A value of 0.2 means data is moved when local storage has less than 20% free space. example: 0.2 maximum: 1 minimum: 0 title: Tiered storage move factor type: number title: ClickHouse settings type: object block-storage-snapshot-ref: type: object properties: id: type: string format: uuid description: Block storage snapshot ID description: Target block storage snapshot security-group-rule: type: object properties: description: type: string maxLength: 255 description: Security Group rule description start-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Start port of the range protocol: type: string enum: - tcp - esp - all - icmp - udp - gre - ah - ipip - icmpv6 description: Network protocol icmp: type: object properties: code: type: integer format: int64 minimum: -1 maximum: 254 exclusiveMinimum: false exclusiveMaximum: false type: type: integer format: int64 minimum: -1 maximum: 254 exclusiveMinimum: false exclusiveMaximum: false description: ICMP details end-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: End port of the range security-group: $ref: '#/components/schemas/security-group-resource' description: Security Group allowed id: type: string format: uuid readOnly: true description: Security Group rule ID network: type: string description: CIDR-formatted network allowed flow-direction: type: string enum: - ingress - egress description: Network flow direction to match description: Security Group rule generate-data-key-request: type: object properties: key-spec: type: string enum: - AES-256 bytes-count: type: integer minimum: 1 maximum: 1024 encryption-context: type: string format: byte nullable: true description: Base64-encoded Additional Authenticated Data binding key generation parameters securely to operational scope. recompute-bundle-response: description: Response from bundle recompute operation properties: message: description: Status message describing the result type: string type: object required: - message 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 sks-nodepool-labels: type: object additionalProperties: type: string enum-component-route: type: string enum: - dynamic - private - public - privatelink get-deployment-logs-entry: description: A single log entry properties: time: description: Timestamp of the log entry format: date-time type: string node: description: Node identifier type: string message: description: Log message content type: string type: object required: - time - message - node anti-affinity-group-ref: type: object properties: id: type: string format: uuid description: Anti-affinity group ID description: Anti-affinity group reference create-ai-api-key-response: description: Create AI API key response properties: updated-at: format: date-time type: string readOnly: true all-models: description: True when the key has access to all public models. type: boolean name: type: string value: description: Plaintext AI API key value type: string all-deployments: description: True when the key has access to all deployments of the organization. type: boolean deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' id: format: uuid type: string readOnly: true revoked-at: description: Last update timestamp format: date-time type: - string - "null" readOnly: true created-at: format: date-time type: string readOnly: true type: object required: - id - name - models - all-models - deployments - all-deployments - created-at - updated-at - value sks-audit-bearer-token: type: string maxLength: 2000 minLength: 1 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-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 get-inference-engine-help-response: description: List of allowed inference-engine parameters properties: parameters: type: array items: $ref: '#/components/schemas/inference-engine-parameter-entry' type: object required: - parameters subnet: type: object properties: description: type: string maxLength: 4096 description: Subnet description labels: $ref: '#/components/schemas/labels' description: Resource labels name: type: string maxLength: 255 minLength: 1 description: Subnet name ipv4-block: type: string description: Subnet ipv4 CIDR addressfamily: type: string enum: - inet4 - dual description: Subnet address family address-space: type: string enum: - private description: Subnet address space instances: type: array items: type: object properties: id: type: string format: uuid description: Instance uuid name: type: string description: Instance name ipv4: type: string format: ipv4 description: Instance Ipv4 address description: Subnet attachements description: Instances attached to the subnet id: type: string format: uuid description: Subnet ID created-at: type: string format: date-time description: Subnet creation date description: Subnet zone-impact: type: object description: Hierarchical breakdown of impact in a given zone required: - impact - resources properties: impact: type: object additionalProperties: $ref: '#/components/schemas/impact-value-with-unit' resources: type: object additionalProperties: $ref: '#/components/schemas/impact-resource-tree-node' 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-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-user-clickhouse-secrets: type: object properties: username: type: string description: ClickHouse username password: type: string description: ClickHouse password description: ClickHouse User secrets 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 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 delete-model-conflict-response: description: 'Model is in use: deletion forbidden' properties: deployments: description: Deployments using models type: array items: type: string type: object 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-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 list-ai-api-keys-response-entry: description: AI API key list entry properties: updated-at: format: date-time type: string readOnly: true all-models: description: True when the key has access to all public models. type: boolean readOnly: true name: type: string all-deployments: description: True when the key has access to all deployments of the organization. type: boolean readOnly: true deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' id: format: uuid type: string readOnly: true revoked-at: description: Revocation timestamp. Null when the API key is active. format: date-time type: - string - "null" readOnly: true created-at: format: date-time type: string readOnly: true type: object required: - id - name - models - all-models - deployments - all-deployments - created-at - updated-at - revoked-at private-network: type: object properties: description: type: string maxLength: 255 description: Private Network description labels: $ref: '#/components/schemas/labels' description: Resource labels name: type: string maxLength: 255 minLength: 1 description: Private Network name start-ip: type: string format: ipv4 description: Private Network start IP address leases: type: array items: $ref: '#/components/schemas/private-network-lease' readOnly: true description: Private Network leased IP addresses id: type: string format: uuid readOnly: true description: Private Network ID vni: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Private Network VXLAN ID netmask: type: string format: ipv4 description: Private Network netmask options: $ref: '#/components/schemas/private-network-options' description: DHCP options end-ip: type: string format: ipv4 description: Private Network end IP address description: Private Network dbaas-clickhouse-user-privilege: type: object properties: access-type: type: string column: type: string database: type: string grant-option: type: boolean partial-revoke: type: boolean table: type: string dbaas-endpoint-rsyslog: 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 required: - server - port - tls - format enum-component-usage: type: string enum: - primary - replica json-schema-pgaudit: description: System-wide settings for the pgaudit extension. properties: role: description: Specifies the master role to use for object audit logging. maxLength: 64 pattern: ^[_A-Za-z0-9][-._A-Za-z0-9]{0,63}$ title: Role type: string log_parameter: default: false description: Specifies that audit logging should include the parameters that were passed with the statement. title: Log Parameter type: boolean log_rows: default: false title: Log Rows type: boolean log_level: default: log description: Specifies the log level that will be used for log entries. enum: - debug1 - debug2 - debug3 - debug4 - debug5 - info - notice - warning - log title: Log level type: string log_relation: default: false description: |- Specifies whether session audit logging should create a separate log entry for each relation (TABLE, VIEW, etc.) referenced in a SELECT or DML statement. title: Log Relation type: boolean log_statement_once: default: false description: |- Specifies whether logging will include the statement text and parameters with the first log entry for a statement/substatement combination or with every entry. title: Log Statement Once type: boolean log_max_string_length: default: -1 description: |- Crop parameters representation and whole statements if they exceed this threshold. A (default) value of -1 disable the truncation. maximum: 102400 minimum: -1 title: Log Max String Length type: integer log_catalog: default: true description: |- Specifies that session logging should be enabled in the case where all relations in a statement are in pg_catalog. title: Log Catalog type: boolean log_nested_statements: default: true description: |- This GUC allows to turn off logging nested statements, that is, statements that are executed as part of another ExecutorRun. title: Log Nested Statements type: boolean log_statement: default: true description: Specifies whether logging will include the statement text and parameters (if enabled). title: Log Statement type: boolean log_client: default: false description: Specifies whether log messages will be visible to a client process such as psql. title: Log Client type: boolean feature_enabled: default: false description: Enable pgaudit extension. When enabled, pgaudit extension will be automatically installed.Otherwise, extension will be uninstalled but auditing configurations will be preserved. title: Enable pgaudit extension. type: boolean log: description: Specifies which classes of statements will be logged by session audit logging. items: enum: - all - ddl - function - misc - misc_set - read - role - write type: string title: Log type: array log_parameter_max_size: default: 0 description: |- Specifies that parameter values longer than this setting (in bytes) should not be logged, but replaced with . title: Log Parameter Max Size type: integer title: PGAudit settings type: object 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:*.' list-subnet-entry: type: object properties: id: type: string format: uuid description: Subnet ID name: type: string maxLength: 255 minLength: 1 description: Subnet name description: type: string maxLength: 4096 description: Subnet description created-at: type: string format: date-time description: Subnet creation date addressfamily: type: string enum: - inet4 - dual description: Subnet address family address-space: type: string enum: - private description: Subnet address space ipv4-block: type: string description: Subnet ipv4 CIDR labels: $ref: '#/components/schemas/labels' description: Resource labels description: Subnet 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 set-org-consumption-quota-request: description: Request to set per-org Unit Of Measurement (UOM) consumption quota properties: quota-uom-per-minute: description: Per-org Unit Of Measurement (UOM) consumption quota (UOM/min). Pass null to remove the limit. UOM represents weighted units across different AI workloads (e.g., tokens for LLMs, minutes for TTS, pages for OCR). type: - integer - "null" minimum: 0 type: object vpc: type: object properties: id: type: string format: uuid description: VPC ID name: type: string maxLength: 255 minLength: 1 description: VPC name description: type: string maxLength: 4096 description: VPC description created-at: type: string format: date-time description: VPC creation date default: type: boolean description: Indicates if this is the organization's default VPC labels: $ref: '#/components/schemas/labels' description: Resource labels dhcp-options: $ref: '#/components/schemas/vpc-dhcp-options' description: DHCP options description: VPC 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 instance-password: type: object properties: password: type: string readOnly: true description: Password description: Instance password load-balancer: type: object properties: description: type: string maxLength: 255 description: Load Balancer description labels: $ref: '#/components/schemas/labels' description: Load Balancer Labels ip: type: string format: ip readOnly: true description: Load Balancer public IP name: type: string maxLength: 255 minLength: 1 description: Load Balancer name state: type: string enum: - creating - migrated - deleting - running - migrating - error readOnly: true description: Load Balancer state addressfamily: type: string enum: - inet4 - inet6 readOnly: true description: Load Balancer address family id: type: string format: uuid readOnly: true description: Load Balancer ID created-at: type: string format: date-time readOnly: true description: Load Balancer creation date services: type: array items: $ref: '#/components/schemas/load-balancer-service' description: Load Balancer Services description: Load Balancer sks-cluster-deprecated-resource: type: object properties: group: type: string version: type: string resource: type: string subresource: type: string removed-release: type: string dbaas-clickhouse-user: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username uuid: type: string format: uuid required: type: boolean required: - username api-key-usage-entry: description: Usage breakdown for one API key, grouped by product-name properties: product-names: description: Map of product-name to accumulated counters. Keys are product names. additionalProperties: $ref: '#/components/schemas/model-usage-counters' type: object organization-id: description: Organization that owns this API key format: uuid type: string type: object required: - organization-id - product-names enable-kms-key-rotation-request: type: object properties: rotation-period: type: integer minimum: 90 maximum: 2560 default: 365 description: The number of days between each automatic key rotation. elastic-ip: type: object properties: id: type: string format: uuid readOnly: true x-go-findable: "1" description: Elastic IP ID ip: type: string readOnly: true x-go-findable: "2" description: Elastic IP address addressfamily: type: string enum: - inet4 - inet6 readOnly: true description: Elastic IP address family cidr: type: string readOnly: true description: Elastic IP cidr description: type: string maxLength: 255 description: Elastic IP description healthcheck: $ref: '#/components/schemas/elastic-ip-healthcheck' description: Elastic IP healthcheck labels: $ref: '#/components/schemas/labels' description: Resource labels description: Elastic IP domain-name: type: string maxLength: 253 minLength: 1 focus-report: type: object properties: presigned_url: type: string description: Focus report presigned URL expires_in: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: URL expiration in seconds description: Focus report download URL create-model-request: description: AI model properties: name: description: Model name type: string minLength: 1 huggingface-token: description: Huggingface Token type: string type: object required: - name inference-engine-version: description: Inference engine version enum: - 0.12.0 - 0.15.1 - 0.16.0 - 0.17.0 - 0.18.0 - 0.18.1 - 0.19.0 - 0.19.1 - 0.20.0 - 0.20.1 - 0.20.2 - 0.21.0 - 0.22.0 - 0.22.1 - 0.23.0 - 0.24.0 - 0.25.0 - 0.25.1 - 0.26.0 - 0.27.0 - 0.27.1 - 0.28.0 - 0.29.0 - 0.30.0 - 0.31.0 default: 0.31.0 type: string dbaas-user-opensearch-secrets: type: object properties: username: type: string description: Opensearch username password: type: string description: Opensearch password description: Opensearch User secrets access-key-resource: type: object properties: domain: type: string enum: - partner - sos description: Resource domain resource-type: type: string enum: - product - bucket description: Resource type resource-name: type: string description: Resource name description: Access key resource reveal-deployment-api-key-response: description: AI deployment inference endpoint authentication key properties: api-key: description: Inference endpoint authentication key type: string type: object required: - api-key replicate-kms-key-request: type: object required: - zone properties: zone: description: The targeted cloud zone where the KMS key should be replicated. type: string 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 nvidia-mig-profiles: type: object properties: a30.24gb: $ref: '#/components/schemas/nvidia-mig-profile-a30.24gb' description: Nvidia A30 MIG Profile rtxpro6000.96gb: $ref: '#/components/schemas/nvidia-mig-profile-rtxpro6000.96gb' description: Nvidia RTXPRO6000 MIG Profile b300.269gb: $ref: '#/components/schemas/nvidia-mig-profile-b300.269gb' description: Nvidia B300 MIG Profile description: Nvidia MIG Profiles enabled key-store-proxy-response: type: object properties: endpoint: type: string format: uri description: Public URL used to route communication to the customer-managed XKS proxy. auth: $ref: '#/components/schemas/key-store-proxy-auth-response' 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 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 dns-domain: type: object properties: id: type: string format: uuid readOnly: true x-go-findable: "1" description: DNS domain ID created-at: type: string format: date-time readOnly: true description: DNS domain creation date unicode-name: type: string maxLength: 255 minLength: 1 x-go-findable: "2" description: DNS domain unicode name description: DNS domain sks-kubeconfig-request: type: object properties: ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: 'Validity in seconds of the Kubeconfig user certificate (default: 30 days)' user: type: string description: User name in the generated Kubeconfig. The certificate present in the Kubeconfig will also have this name set for the CN field. groups: type: array items: type: string description: List of roles. The certificate present in the Kubeconfig will have these roles set in the Org field. required: - user - groups description: Kubeconfig request for a SKS cluster 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 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 nvidia-mig-profile-rtxpro6000.96gb: type: string enum: - 1g.24gb - 1g.24gb+me - 1g.24gb+gfx - 1g.24gb+me.all - 1g.24gb-me - 2g.48gb - 2g.48gb+gfx - 2g.48gb+me.all - 2g.48gb-me - 4g.96gb - 4g.96gb+gfx x-go-enum-varnames: - 1G24Gb - 1G24GbMe - 1G24GbGfx - 1G24GbMeAll - 1G24GbNoMe - 2G48Gb - 2G48GbGfx - 2G48GbMeAll - 2G48GbNoMe - 4G96Gb - 4G96GbGfx dbaas-pg-database-name: type: string maxLength: 63 minLength: 1 dbaas-pg-target-versions: type: string enum: - "14" - "17" - "15" - "18" - "13" - "16" instance-type: type: object properties: id: type: string format: uuid readOnly: true description: Instance type ID size: type: string enum: - large - huge - jumbo - medium - mega - small - extra-large - titan48c - titan - micro - colossus - tiny readOnly: true description: Instance type size family: type: string enum: - gpu3 - gpua30 - gpu3080ti - gpu2 - gpu - memory - gpua5000 - gpub300 - gpurtx6000pro - storage - standard - colossus - cpu readOnly: true description: Instance type family cpus: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: CPU count gpus: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: GPU count authorized: type: boolean readOnly: true description: Requires authorization or publicly available memory: type: integer format: int64 minimum: 0 exclusiveMinimum: true readOnly: true description: Available memory zones: type: array items: $ref: '#/components/schemas/zone-name' readOnly: true description: Instance Type available zones description: Compute instance type 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 load-balancer-server-status: type: object properties: public-ip: type: string format: ip description: Backend server public IP status: type: string enum: - failure - success description: Status of the instance's healthcheck description: Load Balancer Service status user: type: object properties: sso: type: boolean description: SSO enabled two-factor-authentication: type: boolean description: Two Factor Authentication enabled email: type: string readOnly: true description: User Email id: type: string format: uuid readOnly: true description: User ID role: $ref: '#/components/schemas/iam-role' description: IAM Role pending: type: boolean readOnly: true description: True if the user has not yet created an Exoscale account required: - email - role description: User 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 binlog-retention-period: type: integer format: int64 minimum: 0 exclusiveMinimum: true 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: - name - plan - type - prometheus-uri create-key-store-request: type: object required: - name - proxy properties: name: type: string minLength: 1 maxLength: 256 description: A human-readable display name uniquely identifying the key store within the organization. description: type: string maxLength: 1024 description: An optional detailed description providing additional context about the key store's intended use case. type: type: string enum: - external-key-store default: external-key-store description: The key store type. Only external key stores are supported for this API version. proxy: $ref: '#/components/schemas/key-store-proxy' 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 route: type: object properties: id: type: string format: uuid description: Route ID kind: type: string enum: - Subnet - Vpc description: Route kind description: type: string maxLength: 4096 description: Route description destination: type: string description: Route destination CIDR target: type: string description: Route target description: Route env-impact-detail: type: object properties: value: type: string description: Value amount: type: number description: Amount unit: type: string description: Unit 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 frequent_snapshots: default: true description: When enabled, Valkey will create frequent local RDB snapshots. When disabled, Valkey will only take RDB snapshots when a backup is created, based on the backup schedule. This setting is ignored when `valkey_persistence` is set to `off`. title: Frequent RDB snapshots type: boolean 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 active_expire_effort: default: 1 description: Valkey reclaims expired keys both when accessed and in the background. The background process scans for expired keys to free memory. Increasing the active-expire-effort setting (default 1, max 10) uses more CPU to reclaim expired keys faster, reducing memory usage but potentially increasing latency. maximum: 10 minimum: 1 title: Active expire effort 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 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 sign-request: type: object required: - message - signing-algorithm properties: message: type: string format: byte minLength: 1 maxLength: 5464 description: The Base64-encoded message to sign (1-4096 decoded bytes). Its meaning depends on `message-type`, either the raw plaintext message or an already-hashed digest. message-type: type: string enum: - raw - digest default: raw description: How `message` should be interpreted. signing-algorithm: type: string enum: - RSASSA_PSS_SHA_256 - RSASSA_PSS_SHA_384 - RSASSA_PSS_SHA_512 - ECDSA_SHA_256 - ECDSA_SHA_384 - ECDSA_SHA_512 - EDDSA_ED25519 - ED25519_PH_SHA_512 - ML_DSA_SHAKE_256 description: The signing algorithm to use. Must match the family implied by the key's `key-spec`. instance-ref: type: object properties: id: type: string format: uuid description: Instance ID description: Target Instance dbaas-user-password: type: string maxLength: 256 minLength: 8 disable-kms-key-rotation-response: type: object required: - rotation properties: rotation: $ref: '#/components/schemas/key-rotation-config' dbaas-clickhouse-role-privilege: type: object properties: name: $ref: '#/components/schemas/dbaas-user-username' description: Access type database: type: string description: Database table: type: string description: Table grant-option: type: boolean column: type: string description: Column is-partial-revoke: type: boolean required: - name replica-failure: type: object required: - attempted-watermark - error - failed-at properties: attempted-watermark: type: integer description: The target sync sequence watermark that triggered the replication failure. error: type: string description: A descriptive message containing error logs or system details regarding the sync failure. failed-at: type: string format: date-time description: The UTC timestamp showing exactly when the replication sync window failed. env-product: type: object properties: value: type: string description: Value metadata: type: array items: $ref: '#/components/schemas/env-metadata-entry' description: Metadata impacts: type: array items: $ref: '#/components/schemas/env-impact-indicator' description: Impacts quota: type: object properties: resource: type: string description: Resource Name usage: type: integer format: int64 description: Resource Usage limit: type: integer format: int64 description: Resource Limit. -1 for Unlimited description: Organization Quota sks-audit-initial-backoff: type: string maxLength: 10 minLength: 1 dbaas-pg-pool-name: type: string maxLength: 63 minLength: 1 enum-datadog-site: type: string enum: - us3.datadoghq.com - ddog-gov.com - datadoghq.eu - us5.datadoghq.com - ap1.datadoghq.com - datadoghq.com private-network-lease: type: object properties: ip: type: string format: ipv4 readOnly: true description: Private Network IP address instance-id: type: string format: uuid readOnly: true description: Attached instance ID description: Private Network leased IP address template-ref: type: object properties: id: type: string format: uuid description: Template ID description: Template reference sks-nodepool-taint: type: object properties: value: type: string maxLength: 255 minLength: 1 description: Nodepool taint value effect: type: string enum: - NoExecute - NoSchedule - PreferNoSchedule description: Nodepool taint effect required: - value - effect description: Nodepool taint deploy-target: type: object properties: id: type: string format: uuid description: Deploy Target ID name: type: string maxLength: 255 minLength: 1 description: Deploy Target name type: type: string enum: - edge - dedicated description: Deploy Target type description: type: string maxLength: 255 description: Deploy Target description required: - id description: Deploy target revision-stamp: type: object required: - at - seq properties: at: type: string format: date-time description: The timestamp recording exactly when this specific revision iteration occurred. seq: type: integer minimum: 0 description: Monotonically increasing sequencing value utilized for optimistic concurrency control locks. snapshot: type: object properties: id: type: string format: uuid readOnly: true description: Snapshot ID name: type: string maxLength: 255 minLength: 1 description: Snapshot name created-at: type: string format: date-time readOnly: true description: Snapshot creation date state: type: string enum: - snapshotting - deleted - exporting - ready - deleting - error - exported description: Snapshot state size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false readOnly: true description: Snapshot size in GiB export: type: object properties: presigned-url: type: string description: Exported snapshot disk file pre-signed URL md5sum: type: string description: Exported snapshot disk file MD5 checksum description: Exported snapshot information instance: $ref: '#/components/schemas/instance' description: Compute Instance snapshotted application-consistent: type: boolean readOnly: true description: Indicates whether the snapshot was taken using an application-consistent method description: Snapshot dbaas-clickhouse-roles: type: object properties: roles: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-role' list-vpc-entry: type: object properties: id: type: string format: uuid description: VPC ID name: type: string maxLength: 255 minLength: 1 description: VPC name description: type: string maxLength: 4096 description: VPC description created-at: type: string format: date-time description: VPC creation date default: type: boolean description: Indicates if this is the organization's default VPC labels: $ref: '#/components/schemas/labels' description: Resource labels dhcp-options: $ref: '#/components/schemas/vpc-dhcp-options' description: DHCP options description: VPC dbaas-endpoint-rsyslog-secrets: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate cert: type: string maxLength: 16384 description: PEM encoded client certificate key: type: string maxLength: 16384 description: PEM encoded client key 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-endpoint-prometheus-secrets: type: object properties: basic-auth-password: type: string maxLength: 64 minLength: 8 description: Prometheus basic authentication password event: type: object properties: iam-user: $ref: '#/components/schemas/user' description: Details about the IAM User request-id: type: string description: Operation unique identifier iam-role: $ref: '#/components/schemas/iam-role' description: Details about the IAM Role zone: type: string description: Operation targeted zone get-params: type: object description: Query string parameters (free form map) body-params: type: object description: Body parameters (free form map) status: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Operation HTTP status source-ip: type: string description: Client IP address iam-api-key: $ref: '#/components/schemas/iam-api-key' description: Details about the IAM API Key uri: type: string description: Operation request URI elapsed-ms: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Operation processing time timestamp: type: string format: date-time description: Time at which the event happened, millisecond resolution path-params: type: object description: URI path parameters (free form map) handler: type: string description: Operation handler name message: type: string description: Operation message description: A notable Mutation Event which happened on the infrastructure iam-api-key: type: object properties: name: type: string x-go-findable: "1" description: IAM API Key name key: type: string x-go-findable: "2" description: IAM API Key role-id: type: string format: uuid description: IAM API Key Role ID created-at: type: string format: date-time description: IAM API Key creation timestamp description: IAM API Key public-ip-assignment: type: string enum: - inet4 - dual - none impact-breakdown: type: object required: - impact - zones properties: impact: type: object additionalProperties: $ref: '#/components/schemas/impact-value-with-unit' zones: type: object additionalProperties: $ref: '#/components/schemas/zone-impact' elastic-ip-healthcheck: type: object properties: strikes-ok: type: integer format: int64 minimum: 1 maximum: 20 exclusiveMinimum: false exclusiveMaximum: false description: 'Number of attempts before considering the target healthy (default: 2)' tls-skip-verify: type: boolean description: Skip TLS verification tls-sni: type: string maxLength: 255 minLength: 1 description: An optional domain or subdomain to check TLS against strikes-fail: type: integer format: int64 minimum: 1 maximum: 20 exclusiveMinimum: false exclusiveMaximum: false description: 'Number of attempts before considering the target unhealthy (default: 3)' mode: type: string enum: - tcp - http - https description: Health check mode port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Health check port uri: type: string maxLength: 255 minLength: 1 description: An endpoint to use for the health check, for example '/status' interval: type: integer format: int64 minimum: 5 maximum: 300 exclusiveMinimum: false exclusiveMaximum: false description: 'Interval between the checks in seconds (default: 10)' timeout: type: integer format: int64 minimum: 2 maximum: 60 exclusiveMinimum: false exclusiveMaximum: false description: 'Health check timeout value in seconds (default: 2)' required: - mode - port description: Elastic IP address healthcheck 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 enum-mysql-authentication-plugin: type: string enum: - caching_sha2_password - mysql_native_password load-balancer-service-healthcheck: type: object properties: mode: type: string enum: - tcp - http - https description: Healthcheck mode interval: type: integer format: int64 minimum: 5 maximum: 300 exclusiveMinimum: false exclusiveMaximum: false description: 'Healthcheck interval (default: 10). Must be greater than or equal to Timeout' uri: type: string maxLength: 255 minLength: 1 description: An endpoint to use for the HTTP healthcheck, e.g. '/status' port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Healthcheck port timeout: type: integer format: int64 minimum: 2 maximum: 60 exclusiveMinimum: false exclusiveMaximum: false description: 'Healthcheck timeout value (default: 2). Must be lower than or equal to Interval' retries: type: integer format: int64 minimum: 1 maximum: 20 exclusiveMinimum: false exclusiveMaximum: false description: Number of retries before considering a Service failed tls-sni: type: string maxLength: 255 minLength: 1 description: SNI domain for HTTPS healthchecks description: Load Balancer Service healthcheck generate-data-key-response: type: object required: - plaintext - ciphertext properties: plaintext: type: string format: byte description: The Base64-encoded raw symmetric data key payload. Expose only securely during active application setups. ciphertext: type: string format: byte description: The identical symmetric data key, returned safely wrapped/encrypted using the designated root parent KMS key. xks-proxy-error-detail: type: object required: - error-name properties: error-name: type: string description: XKS proxy `errorName` from a valid proxy error envelope. error-message: type: string description: Optional bounded XKS proxy `errorMessage`. access-key-operation: type: object properties: operation: type: string description: Name of the operation tags: type: array items: type: string description: Tags associated with the operation description: Access key operation impact-value-with-unit: type: object required: - unit - value properties: unit: type: string value: type: number format: double ssh-key: type: object properties: name: type: string maxLength: 255 minLength: 1 x-go-findable: "1" description: SSH key name fingerprint: type: string readOnly: true x-go-findable: "2" description: SSH key fingerprint description: SSH key load-balancer-service: type: object properties: description: type: string maxLength: 255 description: Load Balancer Service description protocol: type: string enum: - tcp - udp description: Network traffic protocol name: type: string maxLength: 255 minLength: 1 description: Load Balancer Service name state: type: string enum: - creating - deleting - running - updating - error readOnly: true description: Load Balancer Service state target-port: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Port on which the network traffic will be forwarded to on the receiving instance port: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Port exposed on the Load Balancer's public IP instance-pool: $ref: '#/components/schemas/instance-pool' description: Instance Pool to forward network traffic to strategy: type: string enum: - round-robin - maglev-hash - source-hash description: Load balancing strategy healthcheck: $ref: '#/components/schemas/load-balancer-service-healthcheck' description: Healthcheck configuration id: type: string format: uuid readOnly: true description: Load Balancer Service ID healthcheck-status: type: array items: $ref: '#/components/schemas/load-balancer-server-status' readOnly: true description: Healthcheck status per backend server description: Load Balancer Service access-key: type: object properties: name: type: string description: IAM Access Key name key: type: string description: IAM Access Key secret: type: string readOnly: true description: IAM Access Key Secret type: type: string enum: - restricted - unrestricted readOnly: true description: IAM Access Key type version: type: string enum: - v2 - v1 description: IAM Access Key version tags: type: array items: type: string description: IAM Access Key tags operations: type: array items: type: string description: IAM Access Key operations resources: type: array items: $ref: '#/components/schemas/access-key-resource' description: IAM Access Key Resources description: IAM Access Key dbaas-clickhouse-user-role: type: object properties: default: type: boolean name: type: string uuid: type: string format: uuid with-admin-option: type: boolean list-ai-api-keys-response: description: List of AI API keys properties: ai-api-keys: type: array items: $ref: '#/components/schemas/list-ai-api-keys-response-entry' type: object example: ai-api-keys: - updated-at: "2026-03-25T10:00:00Z" all-models: true name: default-public-key all-deployments: false deployments: [] models: [] id: 11111111-1111-1111-1111-111111111111 revoked-at: "2026-03-25T10:00:00Z" created-at: "2026-03-25T10:00:00Z" - updated-at: "2026-03-25T10:00:00Z" all-models: false name: restricted-key all-deployments: false deployments: - id: 33333333-3333-3333-3333-333333333333 - id: 44444444-4444-4444-4444-444444444444 models: - GLM 5.2 - Kimi 2.7 id: 22222222-2222-2222-2222-222222222222 revoked-at: "" created-at: "2026-03-25T10:00:00Z" required: - ai-api-keys dbaas-clickhouse-user-acl-config: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username uuid: type: string format: uuid roles: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user-role' privileges: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user-privilege' required: - username list-ai-instance-types-response: description: List of available instance types with authorization status properties: instance-types: type: array items: $ref: '#/components/schemas/instance-type-entry' type: object required: - instance-types dbaas-endpoint-opensearch-secrets: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate 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 error-response: type: object description: RFC 9457 Problem Details error response required: - type - title - status - detail properties: type: type: string format: uri-reference description: An absolute or relative URI reference pointing to human-readable documentation concerning the specific problem type encountered. title: type: string description: A brief summary defining the class of failure, optimal for quick user interface groupings. status: type: integer minimum: 100 maximum: 599 detail: type: string description: A highly contextual, readable explanation breaking down explicitly what triggered this error scenario. xks-proxy-error: $ref: '#/components/schemas/xks-proxy-error-detail' enum-kafka-auth-method: type: string enum: - certificate - sasl xks-key: type: object required: - external-key-id - xks-id properties: external-key-id: type: string minLength: 1 maxLength: 128 pattern: ^[a-zA-Z0-9_.-]+$ description: The identifier of the key as known to the external key store, used to reference the key material outside of Exoscale. xks-id: type: string format: uuid description: The Exoscale-generated id of the external key store resource that this key is associated with. 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 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 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 labels: type: object additionalProperties: type: string dbaas-mysql-database-name: type: string maxLength: 64 minLength: 1 success-response: type: object required: - status properties: status: type: string enum: - success - target-registered - already-applied default: success elastic-ip-ref: type: object properties: id: type: string format: uuid description: Elastic IP ID description: Elastic IP reference org-consumption-quota-response: description: Per-org Unit Of Measurement (UOM) consumption quota response properties: quota-uom-per-minute: description: Per-org Unit Of Measurement (UOM) consumption quota (UOM/min). Null means unlimited. UOM represents weighted units across different AI workloads (e.g., tokens for LLMs, minutes for TTS, pages for OCR). type: - integer - "null" minimum: 0 type: object 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 ssh-key-ref: type: object properties: name: type: string maxLength: 255 minLength: 1 description: SSH key name description: SSH key reference sks-audit-update: type: object properties: endpoint: $ref: '#/components/schemas/sks-audit-endpoint' description: Target Webserver URL bearer-token: $ref: '#/components/schemas/sks-audit-bearer-token' description: Bearer token initial-backoff: $ref: '#/components/schemas/sks-audit-initial-backoff' description: Initial backoff (default '10s') enabled: type: boolean description: Enable or Disable Kubernetes Audit description: Kubernetes Audit parameters update-deployment-request: description: Update AI deployment properties: inference-engine-version: $ref: '#/components/schemas/inference-engine-version' name: description: Deployment name type: string minLength: 1 inference-engine-parameters: description: Optional extra inference engine server CLI args type: array items: type: string type: object enum-service-state: type: string enum: - running - rebuilding - rebalancing - poweroff 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' verify-response: type: object required: - signature-valid - key-id - key-spec properties: signature-valid: type: boolean description: Whether `signature` is a valid signature over `message` produced by this KMS key. key-id: type: string format: uuid description: The UUID of the KMS key used to verify the signature. key-spec: type: string description: The cryptographic key specification used to verify the signature. snapshot-ref: type: object properties: id: type: string format: uuid description: Snapshot ID description: Snapshot reference impact-resource-tree-node: type: object description: Hierarchical breakdown of impact for a given level in the catalog tree required: - impact - usage - resources properties: impact: type: object additionalProperties: $ref: '#/components/schemas/impact-value-with-unit' usage: $ref: '#/components/schemas/impact-value-with-unit' resources: type: object additionalProperties: $ref: '#/components/schemas/impact-resource-tree-node' rate-limited: type: object properties: error: type: string description: The error message retry_after: type: number description: The time in seconds to wait before the next request description: Rate Limit key-rotation-config: type: object required: - manual-count - automatic - rotation-period - next-at properties: manual-count: type: integer description: Total running tally of manual key rotation tasks executed by users over this key resource's lifecycle. automatic: type: boolean description: When set to true, dictates that the system automatically rotates material periodically. rotation-period: type: integer description: The set frequency period (measured in days) for triggers monitoring auto-rotation loops. next-at: type: string format: date-time description: Scheduled deadline calculation pinpointing the next automated rotational iteration target date. private-network-options: type: object properties: routers: type: array items: type: string format: ipv4 description: Routers dns-servers: type: array items: type: string format: ipv4 description: DNS Servers ntp-servers: type: array items: type: string format: ipv4 description: NTP Servers domain-search: type: array items: type: string description: Domain search list, limited to 255 octets description: Private Network DHCP Options 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 pgaudit-settings: $ref: '#/components/schemas/json-schema-pgaudit' description: PGAudit settings 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 encrypt-request: type: object required: - plaintext properties: encryption-context: type: string format: byte nullable: true description: Base64-encoded bytes to be used as the Additional Authenticated Data (AAD) for encryption integrity. encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm this key must use. Validated against the key's actual cryptographic profile. Required for asymmetric keys. Symmetric keys use AES_256 when it is omitted. plaintext: type: string format: byte description: The Base64-encoded plaintext data you wish to encrypt. 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 iam-system-role: type: object properties: description: type: string maxLength: 255 minLength: 1 description: IAM System Role description labels: $ref: '#/components/schemas/labels' description: IAM System Role Labels permissions: type: array items: type: string enum: - bypass-governance-retention - reset-iam-organization-policy uniqueItems: true description: IAM System Role permissions assume-role-policy: $ref: '#/components/schemas/iam-assume-role-policy' description: IAM Assume System Role Policy editable: type: boolean description: IAM System Role mutability name: type: string maxLength: 255 minLength: 1 description: IAM System Role name max-session-ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Maximum TTL requester is allowed to ask for when assuming a system role policy: $ref: '#/components/schemas/iam-policy' description: IAM System Role Policy id: type: string format: uuid readOnly: true description: IAM System Role ID description: IAM System Role env-impact-report: type: object properties: metadata: type: array items: $ref: '#/components/schemas/env-metadata-entry' description: Metadata products: type: array items: $ref: '#/components/schemas/env-product' description: Products security-group-ref: type: object properties: id: type: string format: uuid description: Security group ID description: Security group reference sks-oidc: type: object properties: client-id: type: string maxLength: 255 minLength: 1 description: OpenID client ID issuer-url: type: string maxLength: 255 minLength: 1 description: OpenID provider URL username-claim: type: string maxLength: 255 minLength: 1 description: JWT claim to use as the user name username-prefix: type: string maxLength: 255 minLength: 1 description: Prefix prepended to username claims groups-claim: type: string maxLength: 255 minLength: 1 description: JWT claim to use as the user's group groups-prefix: type: string maxLength: 255 minLength: 1 description: Prefix prepended to group claims required-claim: type: object additionalProperties: type: string description: A key value map that describes a required claim in the ID Token required: - client-id - issuer-url description: SKS Cluster OpenID config map 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-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 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 dbaas-clickhouse-granted-role: type: object properties: name: type: string description: Granted role name uuid: type: string is-default: type: boolean with-admin-option: type: boolean required: - name iam-api-key-created: type: object properties: name: type: string description: IAM API Key name key: type: string description: IAM API Key secret: type: string readOnly: true description: IAM API Key Secret role-id: type: string format: uuid description: IAM API Key Role ID created-at: type: string format: date-time description: IAM API Key creation timestamp description: IAM API Key get-deployment-response: description: AI deployment properties: gpu-count: description: Number of GPUs format: int64 type: integer minimum: 1 updated-at: description: Update time format: date-time type: string readOnly: true deployment-url: description: Deployment inference endpoint URL type: string service-level: description: Service level type: string minLength: 1 inference-engine-version: $ref: '#/components/schemas/inference-engine-version' name: description: Deployment name type: string minLength: 1 state: description: Deployment state enum: - ready - creating - preparing - error - deploying - scaling - updating type: string gpu-type: description: GPU type family type: string minLength: 1 id: description: Deployment ID format: uuid type: string readOnly: true replicas: description: Number of replicas (>=0) format: int64 type: integer minimum: 0 state-details: description: Deployment state details type: string created-at: description: Creation time format: date-time type: string readOnly: true inference-engine-parameters: description: Optional extra inference engine server CLI args type: array items: type: string model: $ref: '#/components/schemas/model-ref' type: object required: - name - state - deployment-url - model list-route-entry: type: object properties: id: type: string format: uuid description: Route ID kind: type: string enum: - Subnet - Vpc description: Route kind description: type: string maxLength: 4096 description: Route description destination: type: string description: Route destination CIDR target: type: string description: Route target description: Route iam-policy: type: object properties: default-service-strategy: type: string enum: - allow - deny description: IAM default service strategy services: type: object additionalProperties: $ref: '#/components/schemas/iam-service-policy' description: IAM services required: - default-service-strategy - services description: Policy live-balance: type: object properties: balance: type: number readOnly: true description: Organization live balance currency: type: string readOnly: true description: Organization currency description: Live balance replica-state: type: object required: - zone - last-applied-watermark properties: zone: type: string description: The destination target zone tracking this specific replica instance. last-applied-watermark: type: integer description: The latest logical sequence number or state watermark successfully synced to this regional replica. last-failure: $ref: '#/components/schemas/replica-failure' reverse-dns-record: type: object properties: domain-name: $ref: '#/components/schemas/domain-name' security-group-resource: type: object properties: id: type: string format: uuid readOnly: true description: Security Group ID name: type: string maxLength: 255 minLength: 1 description: Security Group name visibility: type: string enum: - private - public description: |- Whether this points to a public security group. This is only valid when in the context of a rule addition which uses a public security group as a source or destination. description: Security Group 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 get-key-store-response: type: object properties: description: type: string description: An optional detailed description providing additional context about the key store's intended use case. name: type: string description: The display name assigned to the key store. type: type: string enum: - external-key-store description: The key store type. proxy: $ref: '#/components/schemas/key-store-proxy-response' status: type: string enum: - connected - disconnected description: The current connection status of the key store. status-since: type: string format: date-time description: The timestamp indicating when the current key store status last transitioned. id: type: string format: uuid description: The globally unique identifier assigned to the key store. health: $ref: '#/components/schemas/key-store-health' created-at: type: string format: date-time description: The creation timestamp. re-encrypt-response: type: object required: - ciphertext - source-encryption-algorithm - destination-encryption-algorithm properties: ciphertext: type: string format: byte description: The new Base64-encoded ciphertext block safely wrapped by the chosen destination key parameters. source-encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm that was used to decrypt the source ciphertext. destination-encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm that was used to encrypt the destination ciphertext. decrypt-request: type: object required: - ciphertext properties: encryption-context: type: string format: byte nullable: true description: The exact Base64-encoded Additional Authenticated Data (AAD) used during encryption to verify data integrity. encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm this key must use. Validated against the key's actual cryptographic profile. Required for asymmetric keys. Symmetric keys use AES_256 when it is omitted. ciphertext: type: string format: byte description: The Base64-encoded ciphertext payload to be decrypted. enum-pg-pool-mode: type: string enum: - transaction - statement - session update-ai-api-key-request: description: Update the models and/or deployments accessible by an AI API key. Omitted properties are left unchanged. properties: all-models: description: Grant or remove access to all public models. Takes precedence over the models array, which is ignored when set. type: boolean all-deployments: description: Grant or remove access to all deployments of the organization. Takes precedence over the deployments array, which is ignored when set. type: boolean deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' additionalProperties: false type: object minProperties: 1 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. By default endpoints are always encrypted and 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-endpoint-elasticsearch: 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 required: - url - index-prefix dbaas-clickhouse-user-role-input: type: object properties: uuid: type: string format: uuid description: Role UUID required: - uuid decrypt-response: type: object required: - plaintext - encryption-algorithm properties: plaintext: type: string format: byte description: The recovered Base64-encoded original plaintext payload. encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm that was used to decrypt this ciphertext. schedule-kms-key-deletion-request: type: object properties: delay-days: type: integer description: Number of days to wait until deletion is final. minimum: 7 maximum: 30 default: 30 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 list-models-response: description: AI model list properties: models: type: array items: $ref: '#/components/schemas/list-models-response-entry' type: object required: - models instance-pool-ref: type: object properties: id: type: string format: uuid description: Instance Pool ID description: Target Instance Pool sos-bucket-usage: type: object properties: name: type: string description: SOS Bucket name created-at: type: string format: date-time readOnly: true description: SOS Bucket creation date zone-name: $ref: '#/components/schemas/zone-name' readOnly: true description: SOS Bucket zone size: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: SOS Bucket size in B description: SOS Bucket usage instance: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Indicates if the instance will take application-consistent snapshots anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' description: Instance Anti-affinity Groups public-ip-assignment: $ref: '#/components/schemas/public-ip-assignment' description: Instance public IP assignment labels: $ref: '#/components/schemas/labels' description: Resource labels security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' description: Instance Security Groups elastic-ips: type: array items: $ref: '#/components/schemas/elastic-ip-ref' description: Instance Elastic IPs name: type: string maxLength: 255 minLength: 1 description: Instance name instance-type: $ref: '#/components/schemas/instance-type' description: Instance Type private-networks: type: array items: type: object properties: id: type: string format: uuid description: Private Network ID mac-address: type: string description: Private Network MAC address description: Private Network description: Instance Private Networks template: $ref: '#/components/schemas/template' description: Instance Template state: $ref: '#/components/schemas/instance-state' readOnly: true description: Instance state secureboot-enabled: type: boolean description: Indicates if the instance has secure boot enabled ssh-key: $ref: '#/components/schemas/ssh-key' description: Instance SSH Key user-data: type: string minLength: 1 description: Instance Cloud-init user-data (base64 encoded) mac-address: type: string readOnly: true description: Instance MAC address manager: $ref: '#/components/schemas/manager' readOnly: true description: Instance manager tpm-enabled: type: boolean description: Indicates if the instance has tpm enabled deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Instance Deploy Target ipv6-address: type: string readOnly: true description: Instance IPv6 address vpc: type: object properties: id: type: string format: uuid description: VPC ID name: type: string description: VPC name subnets: type: array items: type: object properties: id: type: string format: uuid description: VPC subnet ID name: type: string description: VPC subnet name ipv4: type: string format: ipv4 description: Instance Subnet ipv4 address description: VPC subnet description: Instances attached to the subnet description: VPC id: type: string format: uuid readOnly: true description: Instance ID snapshots: type: array items: $ref: '#/components/schemas/snapshot-ref' description: Instance Snapshots disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instance disk size in GiB ip-forwarding: type: boolean description: VPC ip forwarding disk-encrypted: type: boolean readOnly: true description: Indicates if the root volume of the instance is encrypted ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key' description: Instance SSH Keys created-at: type: string format: date-time readOnly: true description: Instance creation date public-ip: type: string format: ipv4 readOnly: true description: Instance public IPv4 address description: Instance kubelet-image-gc: type: object properties: high-threshold: type: integer format: int64 minimum: 0 exclusiveMinimum: false low-threshold: type: integer format: int64 minimum: 0 exclusiveMinimum: false min-age: type: string description: Kubelet image GC options 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-pg-pool-username: type: string maxLength: 64 minLength: 1 create-kms-key-request: type: object required: - name properties: name: type: string description: A human-readable display name uniquely identifying the KMS key within the tenant space. description: type: string description: An optional detailed description providing additional context about the key's intended use case. usage: type: string enum: - encrypt-decrypt - sign-verify default: encrypt-decrypt key-spec: type: string enum: - AES_256 - ECC_NIST_P256 - ECC_NIST_P384 - ECC_NIST_P521 - ECC_EDWARDS25519 - RSA_3072 - RSA_4096 - ML_DSA_65 - ML_DSA_87 default: AES_256 description: The cryptographic key specification defining the key's algorithm and, for asymmetric keys, its curve or modulus size. multi-zone: type: boolean default: false description: True if this is a multi-zone key. source: type: string enum: - exoscale-kms - external-key-store default: exoscale-kms description: Indicates the source of the key material, either generated and held within Exoscale KMS, or backed by an external key store. xks: $ref: '#/components/schemas/xks-key' inference-engine-parameter-entry: description: inference-engine parameter definition properties: description: description: Parameter description type: string allowed-values: description: Allowed values type: array items: type: string default: description: Default value if nothing is specified type: string name: description: Parameter name type: string section: description: Section type: string type: description: Parameter type type: string flags: description: Flag name type: array items: type: string type: object dbaas-user-mysql-secrets: type: object properties: username: type: string description: MySQL username password: type: string description: MySQL password description: MySQL User secrets 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-service-name: type: string maxLength: 63 minLength: 0 list-deployments-response-entry: description: AI deployment properties: gpu-count: description: Number of GPUs format: int64 type: integer minimum: 1 updated-at: description: Update time format: date-time type: string readOnly: true deployment-url: description: Deployment inference endpoint URL type: string service-level: description: Service level type: string minLength: 1 name: description: Deployment name type: string minLength: 1 state: description: Deployment state enum: - ready - creating - preparing - error - deploying - scaling - updating type: string gpu-type: description: GPU type family type: string minLength: 1 id: description: Deployment ID format: uuid type: string readOnly: true replicas: description: Number of replicas (>=0) format: int64 type: integer minimum: 0 created-at: description: Creation time format: date-time type: string readOnly: true model: $ref: '#/components/schemas/model-ref' type: object required: - name - state - deployment-url - model dbaas-endpoint-elasticsearch-secrets: type: object properties: ca: type: string maxLength: 16384 description: PEM encoded CA certificate networking: type: object properties: cluster-cidr: type: string description: |- CIDR Range for Pods in cluster. This must not overlap with any IP ranges assigned to pods. Max of two, comma-separated, dual-stack CIDRs is allowed. If not specified, defaults to 192.168.0.0/16. service-cluster-ip-range: type: string description: |- CIDR range for service cluster IPs. This must not overlap with any IP ranges assigned to nodes or pods. Max of two, comma-separated, dual-stack CIDRs is allowed. The IPv6 range must be no larger than a /108 (upstream Kubernetes apiserver limit). If not specified, defaults to 10.96.0.0/12. node-cidr-mask-size-ipv4: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Mask size for node cidr in cluster. It must be larger than, and at most 16 bits longer than, the Pod CIDR subnet mask. Defaults to 24 node-cidr-mask-size-ipv6: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Mask size for node cidr in cluster. It must be larger than, and at most 16 bits longer than, the Pod CIDR subnet mask. Defaults to 64 description: 'EXPERIMENTAL: Cluster networking configuration.' dbaas-user-grafana-secrets: type: object properties: username: type: string description: Grafana username password: type: string description: Grafana password description: Grafana User secrets sks-cluster: type: object properties: description: type: string maxLength: 255 description: Cluster description labels: $ref: '#/components/schemas/sks-cluster-labels' description: Cluster labels karpenter-feature-gates: type: array items: type: string description: A list of Karpenter controller feature gates to enable for the Karpenter controller binary cni: type: string enum: - calico - cilium description: Cluster CNI auto-upgrade: type: boolean description: Enable auto upgrade of the control plane to the latest patch version available oidc: $ref: '#/components/schemas/sks-oidc' nullable: true description: Cluster OpenID configmap name: type: string maxLength: 255 minLength: 1 description: Cluster name enable-operators-ca: type: boolean description: Indicates whether to add operators certificate authority (CA) as part of trusted CAs for the API server. default-security-group-id: type: string format: uuid nullable: true readOnly: true description: Cluster default Security Group ID state: type: string enum: - rotating-csi-credentials - rotating-ccm-credentials - creating - upgrading - deleting - running - suspending - updating - error - rotating-karpenter-credentials - resuming readOnly: true description: Cluster state enable-kube-proxy: type: boolean description: Indicates whether to deploy the Kubernetes network proxy. nodepools: type: array items: $ref: '#/components/schemas/sks-nodepool' uniqueItems: true maxItems: 16 readOnly: true description: Cluster Nodepools level: type: string enum: - starter - pro description: Cluster level feature-gates: type: array items: type: string description: A list of Kubernetes-only Alpha features to enable for API server component addons: type: array items: type: string enum: - exoscale-cloud-controller - exoscale-container-storage-interface - metrics-server - karpenter uniqueItems: true description: Cluster addons id: type: string format: uuid readOnly: true description: Cluster ID audit: $ref: '#/components/schemas/sks-audit' description: Kubernetes Audit version: type: string description: Control plane Kubernetes version created-at: type: string format: date-time readOnly: true description: Cluster creation date endpoint: type: string readOnly: true description: Cluster endpoint allowed-networks: $ref: '#/components/schemas/sks-cluster-allowed-networks' description: 'EXPERIMENTAL: List of ranges of allowed IPs using CIDR notation.' description: SKS Cluster dbaas-clickhouse-role: type: object properties: name: $ref: '#/components/schemas/dbaas-user-username' description: Role name uuid: type: string privileges: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-role-privilege' granted-roles: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-granted-role' required: - name dbaas-valkey-users: type: object properties: users: type: array items: $ref: '#/components/schemas/dbaas-valkey-user' instance-pool: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Enable application consistent snapshots anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' description: Instance Pool Anti-affinity Groups description: type: string maxLength: 255 minLength: 1 description: Instance Pool description public-ip-assignment: $ref: '#/components/schemas/public-ip-assignment' description: Instance Pool public IP assignment labels: $ref: '#/components/schemas/labels' description: Instance Pool Labels security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' description: Instance Pool Security Groups elastic-ips: type: array items: $ref: '#/components/schemas/elastic-ip-ref' description: Instances Elastic IPs name: type: string maxLength: 255 minLength: 1 description: Instance Pool name instance-type: $ref: '#/components/schemas/instance-type-ref' description: Instances type min-available: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Minimum number of running instances private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' description: Instance Pool Private Networks template: $ref: '#/components/schemas/template-ref' description: Instances template state: type: string enum: - scaling-up - scaling-down - destroying - creating - suspended - running - updating - error readOnly: true description: Instance Pool state size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Number of instances ssh-key: $ref: '#/components/schemas/ssh-key-ref' description: Instances SSH key instance-prefix: type: string maxLength: 30 minLength: 1 description: 'The instances created by the Instance Pool will be prefixed with this value (default: pool)' user-data: type: string minLength: 1 description: Instances Cloud-init user-data manager: $ref: '#/components/schemas/manager' readOnly: true description: Instance Pool manager instances: type: array items: $ref: '#/components/schemas/instance-ref' readOnly: true description: Instances error-reason: type: object properties: cause: type: string description: Error cause type: type: string description: Error type job-id: type: string description: Job ID at the origin of error description: Instance Pool Error Reason deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Instance Pool Deploy Target ipv6-enabled: type: boolean description: Enable IPv6 for instances id: type: string format: uuid readOnly: true description: Instance Pool ID disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instances disk size in GiB ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key-ref' description: Instances SSH keys description: Instance Pool organization-usage: description: Organization usage properties: gpu3: description: GPU3 count format: int64 type: integer minimum: 0 gpua30: description: GPUA30 count format: int64 type: integer minimum: 0 gpu3080ti: description: GPU3080TI count format: int64 type: integer minimum: 0 ai-api-key: description: Count of active AI API keys format: int64 type: integer minimum: 0 gpua5000: description: GPUA5000 count format: int64 type: integer minimum: 0 gpurtx6000pro: description: GPURTX6000PRO count format: int64 type: integer minimum: 0 type: object required: [] block-storage-volume-ref: type: object properties: id: type: string format: uuid description: Block storage volume ID description: Target block storage volume nvidia-mig-profile-b300.269gb: type: string enum: - 1g.34gb - 1g.34gb+me - 1g.67gb - 2g.67gb - 3g.135gb - 4g.135gb - 7g.269gb x-go-enum-varnames: - 1G34Gb - 1G34GbMe - 1G67Gb - 2G67Gb - 3G135Gb - 4G135Gb - 7G269Gb scale-deployment-request: description: Scale AI deployment properties: replicas: description: Number of replicas (>=0) format: int64 type: integer minimum: 0 type: object required: - replicas 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-endpoint-datadog-common: type: object properties: 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. deploy-target-ref: type: object properties: id: type: string format: uuid description: Deploy target ID description: Deploy target reference list-kms-keys-response-entry: type: object required: - id - name - usage - key-spec - source - status - status-since - material - rotation - multi-zone - origin-zone - created-at - revision properties: description: type: string description: An optional detailed description providing additional context about the key's intended use case. xks: $ref: '#/components/schemas/xks-key' rotation: $ref: '#/components/schemas/key-rotation-config' revision: $ref: '#/components/schemas/revision-stamp' delete-at: type: string format: date-time name: type: string description: The display name of the KMS key. multi-zone: type: boolean description: True if this is a multi-zone key. source: type: string enum: - exoscale-kms - external-key-store description: Indicates the source of the key material, either generated and held within Exoscale KMS, or backed by an external key store. key-spec: type: string description: The cryptographic key specification used to generate the key, defining its algorithm and, for asymmetric keys, its curve or modulus size. usage: type: string description: The cryptographic operation constraints allowed on this key. status: type: string enum: - enabled - disabled - pending-deletion status-since: type: string format: date-time description: The precise time when the key entered its current configuration phase. id: type: string format: uuid description: The globally unique identifier (UUID) tracking this key entity. replicas: type: array items: type: string description: Array tracking target zones currently maintaining copies of this item. material: $ref: '#/components/schemas/key-material' origin-zone: type: string description: The creation zone of the KMS key. created-at: type: string format: date-time description: The UTC timestamp showing when the KMS key was originally provisioned. sks-nodepool: type: object properties: anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true maxItems: 8 description: Nodepool Anti-affinity Groups description: type: string maxLength: 255 description: Nodepool description public-ip-assignment: type: string enum: - inet4 - dual description: |- Nodepool public IP assignment of the Instances: * IPv4 (`inet4`) addressing only; * IPv4 and IPv6 (`dual`) addressing. labels: $ref: '#/components/schemas/sks-nodepool-labels' description: Nodepool labels taints: $ref: '#/components/schemas/sks-nodepool-taints' description: Nodepool taints security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true maxItems: 16 description: Nodepool Security Groups name: type: string maxLength: 255 minLength: 1 description: Nodepool name instance-type: $ref: '#/components/schemas/instance-type-ref' description: Nodepool Instances type private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' uniqueItems: true maxItems: 16 description: Nodepool Private Networks template: $ref: '#/components/schemas/template-ref' readOnly: true description: Nodepool Instance template state: type: string enum: - renewing-token - creating - deleting - running - degraded - scaling - updating - error readOnly: true description: Nodepool state size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of instances kubelet-image-gc: $ref: '#/components/schemas/kubelet-image-gc' description: Kubelet image GC options instance-pool: $ref: '#/components/schemas/instance-pool-ref' readOnly: true description: Instance Pool managed by the Nodepool instance-prefix: type: string maxLength: 30 minLength: 1 description: 'The instances created by the Nodepool will be prefixed with this value (default: pool)' deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Instance Pool Deploy Target kubelet-max-pods: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: Maximum number of pods per node. Set to use a value other than the kubelet default. addons: type: array items: type: string enum: - storage-lvm uniqueItems: true description: Nodepool addons id: type: string format: uuid readOnly: true description: Nodepool ID cpu-manager-config: $ref: '#/components/schemas/cpu-manager-config' description: CPU manager config disk-size: type: integer format: int64 minimum: 20 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Nodepool instances disk size in GiB version: type: string readOnly: true description: Nodepool version nvidia-mig-profiles: $ref: '#/components/schemas/nvidia-mig-profiles' description: Nvidia MIG Profiles created-at: type: string format: date-time readOnly: true description: Nodepool creation date description: SKS Nodepool iam-assume-role-policy: type: object properties: rules: type: array items: $ref: '#/components/schemas/iam-service-policy-rule' description: IAM Assume Role Policy rules description: Assume Role Policy 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 sks-cluster-labels: type: object additionalProperties: type: string vpc-dhcp-options: type: object properties: dns-servers: type: array items: type: string format: ipv4 description: DNS Servers ntp-servers: type: array items: type: string format: ipv4 description: NTP Servers domain-search: type: array items: type: string description: Domain search list, limited to 255 octets post RFC3397 compression description: VPC DHCP options instance-type-entry: description: Instance type with authorization status properties: family: description: GPU family name type: string authorized: description: Whether this instance type is authorized based on server availability type: boolean type: object required: - family - authorized enum-integration-types: type: string enum: - datasource - logs - metrics 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. template: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Template with Qemu Guest Agent installed for application consistent snapshot maintainer: type: string readOnly: true description: Template maintainer description: type: string maxLength: 255 description: Template description ssh-key-enabled: type: boolean description: Enable SSH key-based login family: type: string readOnly: true description: Template family name: type: string maxLength: 255 minLength: 1 description: Template name default-user: type: string maxLength: 255 minLength: 1 description: Template default user size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Template size password-enabled: type: boolean description: Enable password-based login build: type: string readOnly: true description: Template build checksum: type: string description: Template MD5 checksum boot-mode: type: string enum: - legacy - uefi description: 'Boot mode (default: legacy)' id: type: string format: uuid readOnly: true description: Template ID url: type: string description: Template source URL version: type: string readOnly: true description: Template version created-at: type: string format: date-time readOnly: true description: Template creation date visibility: type: string enum: - private - public readOnly: true description: Template visibility description: Instance template 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 enum-migration-status: type: string enum: - running - syncing - failed - done instance-type-ref: type: object properties: id: type: string format: uuid description: Instance type ID description: Instance type reference sign-response: type: object required: - signature - key-spec - signing-algorithm properties: signature: type: string format: byte description: The resulting Base64-encoded signature. key-spec: type: string description: The cryptographic key specification used to produce the signature. signing-algorithm: type: string description: The signing algorithm used to produce the signature, echoing the request's `signing-algorithm`. enum-opensearch-rule-permission: type: string enum: - admin - read - deny - readwrite - write list-key-stores-response-entry: type: object properties: id: type: string format: uuid description: The globally unique identifier assigned to the key store. name: type: string description: The display name assigned to the key store. description: type: string description: An optional detailed description providing additional context about the key store's intended use case. type: type: string enum: - external-key-store description: The key store type. status: type: string enum: - connected - disconnected description: The current connection status of the key store. proxy: $ref: '#/components/schemas/key-store-proxy-response' created-at: type: string format: date-time description: The creation timestamp. status-since: type: string format: date-time description: The timestamp indicating when the current key store status last transitioned. security-group: type: object properties: id: type: string format: uuid readOnly: true description: Security Group ID name: type: string maxLength: 255 minLength: 1 description: Security Group name description: type: string maxLength: 255 description: Security Group description external-sources: type: array items: type: string uniqueItems: true description: Security Group external sources rules: type: array items: $ref: '#/components/schemas/security-group-rule' uniqueItems: true writeOnly: true description: Security Group rules description: Security Group zone: type: object properties: name: $ref: '#/components/schemas/zone-name' readOnly: true x-go-findable: "1" description: Zone short name api-endpoint: type: string readOnly: true x-go-type: Endpoint x-go-findable: "2" description: Zone API endpoint sos-endpoint: type: string readOnly: true x-go-type: Endpoint description: Zone SOS endpoint description: Zone dbaas-mysql-user-password: type: string maxLength: 256 minLength: 8 pattern: ^[a-zA-Z0-9!#%^*_+={}()<>|.,;~?-]+$ 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 ai-api-key-deployment-ref: properties: id: description: Deployment ID format: uuid type: string additionalProperties: false type: object required: - id 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. For some services, like PostgreSQL, this is the interval at which full snapshots are taken and continuous incremental backup stream is maintained in addition to that. recovery-mode: type: string readOnly: true description: |- Mechanism how backups can be restored. 'regular' means a backup is restored as is so that the system is restored to the state it was when the backup was generated. '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-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 ingest-metering-request: description: 'Router flush payload: the router''s full in-memory usage map with flush identity fields' properties: flush-id: description: UUID identifying this flush; used for idempotent deduplication format: uuid type: string usage: description: Map of api-key-uuid to usage entry. Keys are API key UUIDs. Mirrors the router's in-memory accumulator structure directly. additionalProperties: $ref: '#/components/schemas/api-key-usage-entry' type: object timestamp: description: ISO-8601 UTC timestamp when the flush snapshot was created (truncated to minute boundary for bucketing) format: date-time type: string router-id: description: Router instance identifier that produced this flush type: string minLength: 1 type: object required: - flush-id - router-id - timestamp - usage create-ai-api-key-request: description: Request to create a new AI API key. properties: all-models: description: Grant access to all public models. Takes precedence over the models array, which is ignored when set. default: false type: boolean name: description: Human-readable name for the AI API key type: string minLength: 1 maxLength: 50 pattern: ^[A-Za-z0-9](?:[A-Za-z0-9 _'()-]*[A-Za-z0-9])?$ all-deployments: description: Grant access to all deployments of the organization. Takes precedence over the deployments array, which is ignored when set. default: false type: boolean deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' type: object required: - name ingest-metering-response: description: Result of a metering ingest operation properties: duplicate: description: True if flush-id was already processed (idempotent retry) type: boolean upserted: description: Number of rows affected (inserted or updated) in usage_minutely; 0 if duplicate flush-id type: integer type: object required: - upserted zone-name: type: string enum: - ch-dk-2 - de-muc-1 - ch-gva-2 - at-vie-1 - de-fra-1 - bg-sof-1 - at-vie-2 - es-mad-1 - hr-zag-1 dbaas-endpoint-datadog-settings: type: object properties: 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-kafka-acl-id: type: string maxLength: 40 minLength: 1 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 get-ai-api-key-response: description: Get AI API key response properties: updated-at: description: Last update timestamp format: date-time type: string readOnly: true all-models: description: True when the key has access to all public models. type: boolean readOnly: true name: description: Human-readable name for the AI API key type: string all-deployments: description: True when the key has access to all deployments of the organization. type: boolean readOnly: true deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' id: description: AI API key ID format: uuid type: string readOnly: true revoked-at: description: Revocation timestamp. Null when the API key is active. format: date-time type: - string - "null" readOnly: true created-at: description: Creation timestamp format: date-time type: string readOnly: true type: object required: - id - name - models - all-models - deployments - all-deployments - created-at - updated-at - revoked-at update-key-store-proxy: type: object description: New customer-managed XKS proxy settings. properties: endpoint: type: string format: uri description: New public URL used to route communication to the customer-managed XKS proxy. auth: $ref: '#/components/schemas/key-store-proxy-auth' manager: type: object properties: id: type: string format: uuid description: Manager ID type: type: string enum: - sks-nodepool - instance-pool description: Manager type description: Resource manager 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. If null should be treated as generic unit required: - completed - phase description: Extra information regarding the progress for current state sks-nodepool-taints: type: object additionalProperties: $ref: '#/components/schemas/sks-nodepool-taint' enum-master-link-status: type: string enum: - up - down sks-cluster-ref: type: object properties: id: type: string format: uuid description: SKS cluster ID description: SKS cluster reference update-key-store-request: type: object properties: description: type: string maxLength: 1024 description: A new detailed description providing additional context about the key store's intended use case. proxy: $ref: '#/components/schemas/update-key-store-proxy' list-deployments-response: description: AI deployment list properties: deployments: type: array items: $ref: '#/components/schemas/list-deployments-response-entry' type: object required: - deployments sks-cluster-allowed-networks: type: array items: type: string uniqueItems: true minItems: 0 maxItems: 16 key-material: type: object required: - version - created-at - automatic properties: version: type: integer description: The incremental index tracing internal key rotation cycles for the key material. created-at: type: string format: date-time description: The UTC date-time indicating when this particular generation of physical cryptographic material was seeded. automatic: type: boolean description: Flag stating whether an automation run handled this historic mutation or if manual actor keys initiated it. anti-affinity-group: type: object properties: id: type: string format: uuid readOnly: true description: Anti-affinity Group ID name: type: string maxLength: 255 minLength: 1 description: Anti-affinity Group name description: type: string maxLength: 255 description: Anti-affinity Group description instances: type: array items: $ref: '#/components/schemas/instance' readOnly: true description: Anti-affinity Group instances description: Anti-affinity Group block-storage-snapshot: type: object properties: id: type: string format: uuid readOnly: true description: Snapshot ID name: type: string maxLength: 255 minLength: 1 description: Snapshot name size: type: integer format: int64 minimum: 1 exclusiveMinimum: false description: Snapshot size volume-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Original Volume size created-at: type: string format: date-time readOnly: true description: Snapshot creation date state: type: string enum: - partially-destroyed - destroying - creating - created - promoting - error - destroyed - allocated readOnly: true description: Snapshot state labels: $ref: '#/components/schemas/labels' description: Resource labels block-storage-volume: $ref: '#/components/schemas/block-storage-volume-ref' description: Referenced volume description: Block storage snapshot 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 get-model-response: description: AI model properties: updated-at: description: Update time format: date-time type: string readOnly: true name: description: Model name type: string minLength: 1 lifecycle-status: description: Model lifecycle state enum: - preview - active - deprecated - eol - null type: - string - "null" state: description: Model state enum: - ready - creating - downloading - error - created type: string id: description: Model ID format: uuid type: string readOnly: true deprecation-date: description: Model deprecation date format: date-time type: - string - "null" readOnly: true model-size: description: Model size in bytes format: int64 type: integer minimum: 0 created-at: description: Creation time format: date-time type: string readOnly: true visibility: description: Model visibility enum: - private - public type: string type: object required: - id - name - state - model-size - created-at - updated-at 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-user-postgres-secrets: type: object properties: username: type: string description: Postgres username password: type: string description: Postgres password description: Postgres User secrets ai-api-key-models: description: Allowlist of public model names. An empty array denies access to all public models. Grant access to all public models with all-models instead. uniqueItems: true type: array items: type: string minLength: 1 key-store-proxy-auth: type: object required: - key - secret properties: key: type: string description: Access key used to sign requests sent to the XKS proxy. secret: type: string description: Secret key used to sign requests sent to the XKS proxy. This value is never returned by the API. key-store-proxy-auth-response: type: object properties: key: type: string description: Access key used to sign requests sent to the XKS proxy. dbaas-clickhouse-acl-config: type: object properties: users: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user-acl-config' list-kms-key-rotations-response-entry: type: object required: - version - rotated-at - automatic properties: version: type: integer description: The absolute increment index referencing this specific historical structural material setup. rotated-at: type: string format: date-time description: The UTC timestamp tracking precisely when this historical adjustment pass finished processing. automatic: type: boolean description: Flag stating whether an automation run handled this historic mutation or if manual actor keys initiated it. impact-error-response: type: object description: Error response required: - title - status - detail properties: title: type: string status: type: integer minimum: 100 maximum: 599 detail: type: string 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 list-models-response-entry: description: AI model properties: updated-at: description: Update time format: date-time type: string readOnly: true name: description: Model name type: string minLength: 1 lifecycle-status: description: Model lifecycle state enum: - preview - active - deprecated - eol - null type: - string - "null" state: description: Model state enum: - ready - creating - downloading - error - created type: string id: description: Model ID format: uuid type: string readOnly: true model-size: description: Model size in bytes format: int64 type: integer minimum: 0 created-at: description: Creation time format: date-time type: string readOnly: true visibility: description: Model visibility enum: - private - public type: string type: object required: - id - name - state - model-size - created-at - updated-at 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 nvidia-mig-profile-a30.24gb: type: string enum: - 1g.6gb - 1g.6gb+me - 2g.12gb - 2g.12gb+me - 4g.24gb x-go-enum-varnames: - 1G6Gb - 1G6GbMe - 2G12Gb - 2G12GbMe - 4G24Gb list-key-stores-response: type: object properties: key-stores: type: array items: $ref: '#/components/schemas/list-key-stores-response-entry' description: The key stores configured for the organization. get-kms-key-response: type: object required: - id - name - usage - key-spec - source - status - status-since - material - rotation - multi-zone - origin-zone - created-at - revision properties: description: type: string description: An optional detailed description providing additional context about the key's intended use case. xks: $ref: '#/components/schemas/xks-key' rotation: $ref: '#/components/schemas/key-rotation-config' revision: $ref: '#/components/schemas/revision-stamp' delete-at: type: string format: date-time name: type: string description: The display name of the KMS key. multi-zone: type: boolean description: True if this is a multi-zone key. source: type: string enum: - exoscale-kms - external-key-store description: Indicates the source of the key material, either generated and held within Exoscale KMS, or backed by an external key store. key-spec: type: string description: The cryptographic key specification used to generate the key, defining its algorithm and, for asymmetric keys, its curve or modulus size. usage: type: string description: The cryptographic operation constraints allowed on this key. replicas-status: type: array items: $ref: '#/components/schemas/replica-state' description: Detailed synchronization metrics for each regional replica mirror. status: type: string enum: - enabled - disabled - pending-deletion status-since: type: string format: date-time description: The timestamp indicating exactly when the current key status was last transitioned. id: type: string format: uuid description: The globally unique identifier (UUID) of the retrieved KMS key. replicas: type: array items: type: string description: A list of availability zones where this specific key has active replica mirrors. material: $ref: '#/components/schemas/key-material' origin-zone: type: string description: The creation zone of the KMS key. created-at: type: string format: date-time description: The UTC timestamp showing when the KMS key was originally provisioned. model-usage-counters: description: Accumulated Unit Of Measurement (UOM) counters for one model over a flush window properties: output-uom: description: Total completion/output Unit Of Measurement (UOM) across all calls in this flush window (e.g., tokens for LLMs, minutes for TTS, pages for OCR) type: integer minimum: 0 input-uom: description: Total prompt/input Unit Of Measurement (UOM) across all calls in this flush window (e.g., tokens for LLMs, minutes for TTS, pages for OCR) type: integer minimum: 0 call-count: description: Number of inference calls in this flush window type: integer minimum: 1 type: object required: - input-uom - output-uom - call-count create-kms-key-response: type: object required: - id - name - usage - key-spec - source - status - status-since - multi-zone - origin-zone - created-at - revision properties: description: type: string description: An optional detailed description providing additional context about the key's intended use case. xks: $ref: '#/components/schemas/xks-key' rotation: $ref: '#/components/schemas/key-rotation-config' revision: $ref: '#/components/schemas/revision-stamp' name: type: string description: The display name assigned to the KMS key. multi-zone: type: boolean description: True if this is a multi-zone key. source: type: string enum: - exoscale-kms - external-key-store description: Indicates the source of the key material, either generated and held within Exoscale KMS, or backed by an external key store. key-spec: type: string description: The cryptographic key specification used to generate the key, defining its algorithm and, for asymmetric keys, its curve or modulus size. usage: type: string description: The cryptographic operation constraints allowed on this key. status: type: string enum: - enabled - disabled - pending-deletion status-since: type: string format: date-time description: The timestamp indicating exactly when the current key status was last transitioned. id: type: string format: uuid description: The globally unique identifier (UUID) assigned to the newly created KMS key. origin-zone: type: string description: The creation zone of the KMS key. created-at: type: string format: date-time description: The UTC timestamp showing when the KMS key was originally provisioned. get-public-key-response: type: object properties: key-id: type: string format: uuid description: The UUID of the KMS key the public key material belongs to. key-spec: type: string description: The cryptographic key specification of the key pair, defining its algorithm and curve. usage: type: string description: The usage of the key pair, either `encrypt-decrypt` or `sign-verify`. public-key: type: string format: byte description: The Base64-encoded X.509 SubjectPublicKeyInfo (SPKI) DER encoding of the key's public key. dbaas-service-type-name: type: string maxLength: 64 minLength: 0 iam-service-policy-rule: type: object properties: action: type: string enum: - allow - deny expression: type: string resources: type: array items: type: string iam-role: type: object properties: description: type: string maxLength: 255 minLength: 1 description: IAM Role description labels: $ref: '#/components/schemas/labels' description: IAM Role Labels permissions: type: array items: type: string enum: - bypass-governance-retention - reset-iam-organization-policy uniqueItems: true description: IAM Role permissions assume-role-policy: $ref: '#/components/schemas/iam-assume-role-policy' description: IAM Assume Role Policy editable: type: boolean description: IAM Role mutability name: type: string maxLength: 255 minLength: 1 description: IAM Role name max-session-ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Maximum TTL requester is allowed to ask for when assuming a role policy: $ref: '#/components/schemas/iam-policy' description: IAM Role Policy id: type: string format: uuid readOnly: true description: IAM Role ID description: IAM Role 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-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. By default endpoints are always encrypted and 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 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-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 snapshot-export: type: object properties: id: type: string format: uuid readOnly: true description: Snapshot export ID presigned-url: type: string description: Snapshot export presigned url md5sum: type: string description: Snapshot export md5 checksum description: Snapshot export information. This data is transient. 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 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 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 dns-domain-record: type: object properties: updated-at: type: string format: date-time readOnly: true description: DNS domain record update date content: type: string description: DNS domain record content name: type: string description: DNS domain record name type: type: string enum: - NS - CAA - NAPTR - POOL - A - HINFO - CNAME - SOA - SSHFP - SRV - AAAA - MX - TXT - ALIAS - URL - SPF description: DNS domain record type ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: DNS domain record TTL priority: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: DNS domain record priority id: type: string format: uuid readOnly: true description: DNS domain record ID created-at: type: string format: date-time readOnly: true description: DNS domain record creation date system-record: type: boolean readOnly: true description: DNS domain record system status description: DNS domain record organization: type: object properties: id: type: string format: uuid readOnly: true description: Organization ID name: type: string readOnly: true description: Organization name address: type: string readOnly: true description: Organization address postcode: type: string readOnly: true description: Organization postcode city: type: string readOnly: true description: Organization city country: type: string readOnly: true description: Organization country balance: type: number readOnly: true deprecated: true description: 'Organization balance. DEPRECATED: use the dedicated `live-balance` endpoint' currency: type: string readOnly: true description: Organization currency description: Organization enable-kms-key-rotation-response: type: object required: - rotation properties: rotation: $ref: '#/components/schemas/key-rotation-config' rotate-kms-key-response: type: object required: - rotation properties: rotation: $ref: '#/components/schemas/key-rotation-config' dbaas-service-components: 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 path: type: string description: Path component of the service URL (useful only if service component is HTTP or HTTPS endpoint) port: type: integer format: int64 minimum: 0 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port number for connecting to the service component route: type: string enum: - dynamic - private - public - privatelink description: Network access route ssl: type: boolean description: |- Whether the endpoint is encrypted or accepts plaintext. By default endpoints are always encrypted and this property is only included for service components that may disable encryption. usage: type: string enum: - primary - replica description: DNS usage name required: - component - host - port - route - usage description: Service component information objects 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 search.insights.top_queries: additionalProperties: false properties: cpu: additionalProperties: false properties: enabled: default: false description: Enable or disable top N query monitoring by the metric title: Enable or disable top N query monitoring by the metric type: boolean top_n_size: minimum: 1 title: Specify the value of N for the top N queries by the metric type: integer window_size: description: Configure the window size of the top N queries. The value should be a time value with unit, e.g. 1m, 5s, 1h. pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The window size of the top N queries by the metric type: string title: Top N queries monitoring by CPU type: object latency: additionalProperties: false properties: enabled: default: false description: Enable or disable top N query monitoring by the metric title: Enable or disable top N query monitoring by the metric type: boolean top_n_size: minimum: 1 title: Specify the value of N for the top N queries by the metric type: integer window_size: description: Configure the window size of the top N queries. The value should be a time value with unit, e.g. 1m, 5s, 1h. pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The window size of the top N queries by the metric type: string title: Top N queries monitoring by latency type: object memory: additionalProperties: false properties: enabled: default: false description: Enable or disable top N query monitoring by the metric title: Enable or disable top N query monitoring by the metric type: boolean top_n_size: minimum: 1 title: Specify the value of N for the top N queries by the metric type: integer window_size: description: Configure the window size of the top N queries. The value should be a time value with unit, e.g. 1m, 5s, 1h. pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The window size of the top N queries by the metric type: string title: Top N queries monitoring by memory type: object type: object 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 remote_store: additionalProperties: false properties: segment.pressure.bytes_lag.variance_factor: description: The variance factor that is used together with the moving average to calculate the dynamic bytes lag threshold for activating remote segment backpressure. Defaults to 10. example: 10 minimum: 1 title: The variance factor that is used to calculate the dynamic bytes lag threshold type: number segment.pressure.consecutive_failures.limit: description: The minimum consecutive failure count for activating remote segment backpressure. Defaults to 5. example: 5 maximum: 2147483647 minimum: 1 title: The minimum consecutive failure count for activating remote segment backpressure type: integer segment.pressure.enabled: description: Enables remote segment backpressure. Default is `true` example: true title: Enables remote segment backpressure type: boolean segment.pressure.time_lag.variance_factor: description: The variance factor that is used together with the moving average to calculate the dynamic time lag threshold for activating remote segment backpressure. Defaults to 10. example: 10 minimum: 1 title: The variance factor that is used to calculate the dynamic bytes lag threshold type: number type: object 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 enable_remote_backed_storage: example: true title: Enable remote-backed storage type: boolean cluster: additionalProperties: false properties: cluster.filecache.remote_data_ratio: description: Defines a limit of how much total remote data can be referenced as a ratio of the size of the disk reserved for the file cache. This is designed to be a safeguard to prevent oversubscribing a cluster. Defaults to 0. example: 5 maximum: 100 minimum: 0 nullable: true title: The limit of how much total remote data can be referenced type: number cluster.remote_store: additionalProperties: false properties: state.global_metadata.upload_timeout: description: The amount of time to wait for the cluster state upload to complete. Defaults to 20s. example: 20s pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The amount of time to wait for the cluster state upload to complete type: string state.metadata_manifest.upload_timeout: description: The amount of time to wait for the manifest file upload to complete. The manifest file contains the details of each of the files uploaded for a single cluster state, both index metadata files and global metadata files. Defaults to 20s. example: 20s pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The amount of time to wait for the manifest file upload to complete type: string translog.buffer_interval: description: The default value of the translog buffer interval used when performing periodic translog updates. This setting is only effective when the index setting `index.remote_store.translog.buffer_interval` is not present. Defaults to 650ms. example: 650ms pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: The default value of the translog buffer interval type: string translog.max_readers: description: Sets the maximum number of open translog files for remote-backed indexes. This limits the total number of translog files per shard. After reaching this limit, the remote store flushes the translog files. Default is 1000. The minimum required is 100. example: 1000 maximum: 2147483647 minimum: 100 title: The maximum number of open translog files for remote-backed indexes type: integer type: object cluster.routing.allocation.balance.prefer_primary: description: When set to true, OpenSearch attempts to evenly distribute the primary shards between the cluster nodes. Enabling this setting does not always guarantee an equal number of primary shards on each node, especially in the event of a failover. Changing this setting to false after it was set to true does not invoke redistribution of primary shards. Default is false. example: false title: cluster.routing.allocation.balance.prefer_primary type: boolean cluster.search.request.slowlog: additionalProperties: false properties: level: default: trace enum: - debug - info - trace - warn title: Log level type: string threshold: additionalProperties: false properties: debug: pattern: ^[^\r\n]*$ title: Debug threshold for total request took time. The value should be in the form count and unit, where unit one of (s,m,h,d,nanos,ms,micros) or -1. Default is -1 type: string info: pattern: ^[^\r\n]*$ title: Info threshold for total request took time. The value should be in the form count and unit, where unit one of (s,m,h,d,nanos,ms,micros) or -1. Default is -1 type: string trace: pattern: ^[^\r\n]*$ title: Trace threshold for total request took time. The value should be in the form count and unit, where unit one of (s,m,h,d,nanos,ms,micros) or -1. Default is -1 type: string warn: pattern: ^[^\r\n]*$ title: Warning threshold for total request took time. The value should be in the form count and unit, where unit one of (s,m,h,d,nanos,ms,micros) or -1. Default is -1 type: string type: object type: object title: Cluster settings type: object 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 enable_snapshot_api: description: Enable/Disable snapshot API for custom repositories, this requires security management to be enabled example: false title: Enable/Disable snapshot API type: boolean segrep: additionalProperties: false properties: pressure.checkpoint.limit: default: 4 description: The maximum number of indexing checkpoints that a replica shard can fall behind when copying from primary. Once `segrep.pressure.checkpoint.limit` is breached along with `segrep.pressure.time.limit`, the segment replication backpressure mechanism is initiated. Default is 4 checkpoints. example: 4 minimum: 0 title: segrep.pressure.checkpoint.limit type: integer pressure.enabled: default: false description: Enables the segment replication backpressure mechanism. Default is false. example: false title: segrep.pressure.enabled type: boolean pressure.replica.stale.limit: default: 0.5 description: The maximum number of stale replica shards that can exist in a replication group. Once `segrep.pressure.replica.stale.limit` is breached, the segment replication backpressure mechanism is initiated. Default is .5, which is 50% of a replication group. example: 0.5 maximum: 1 minimum: 0 title: segrep.pressure.replica.stale.limit type: number pressure.time.limit: default: 5m description: The maximum amount of time that a replica shard can take to copy from the primary shard. Once segrep.pressure.time.limit is breached along with segrep.pressure.checkpoint.limit, the segment replication backpressure mechanism is initiated. Default is 5 minutes. example: 5m pattern: ^\d+\s*(?:[dhms]|ms|micros|nanos)$ title: segrep.pressure.time.limit type: string title: Segment Replication Backpressure Settings type: object 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 node.search.cache.size: description: Defines a limit of how much total remote data can be referenced as a ratio of the size of the disk reserved for the file cache. This is designed to be a safeguard to prevent oversubscribing a cluster. Defaults to 5gb. Requires restarting all OpenSearch nodes. example: 5gb pattern: \d+(?:b|kb|mb|gb|tb) nullable: true title: The limit of how much total remote data can be referenced type: string 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 disk_watermarks: additionalProperties: false properties: flood_stage: description: The flood stage watermark for disk usage. example: 95 title: Flood stage watermark (percentage) type: integer high: description: The high watermark for disk usage. example: 90 title: High watermark (percentage) type: integer low: description: The low watermark for disk usage. example: 85 title: Low watermark (percentage) type: integer required: - low - high - flood_stage title: Watermark settings type: object enable_searchable_snapshots: example: true title: Enable searchable snapshots 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 ml-commons: additionalProperties: false properties: ml_commons_model_access_control_enabled: description: Enable or disable model access control for ML Commons. When enabled, access to ML models is controlled by security permissions. Defaults to false. example: false title: plugins.ml_commons.model_access_control.enabled type: boolean ml_commons_native_memory_threshold: description: Native memory threshold percentage for ML Commons. Controls the maximum percentage of native memory that can be used by ML Commons operations. Defaults to 90%. example: 90 maximum: 100 minimum: 1 title: plugins.ml_commons.native_memory_threshold type: integer ml_commons_only_run_on_ml_node: description: Enable or disable running ML Commons tasks only on ML nodes. When enabled, ML tasks will only execute on nodes designated as ML nodes. Defaults to true. example: false title: plugins.ml_commons.only_run_on_ml_node type: boolean title: ML Commons settings type: object 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 env-metadata-entry: type: object properties: value: type: string description: Value amount: type: number description: Amount unit: type: string description: Unit list-kms-key-rotations-response: type: object required: - rotations properties: rotations: type: array items: $ref: '#/components/schemas/list-kms-key-rotations-response-entry' description: A chronologically ordered collection tracking historical rotation lifecycle occurrences for this resource. sks-audit: type: object properties: endpoint: $ref: '#/components/schemas/sks-audit-endpoint' description: Target Webserver URL enabled: type: boolean description: Enabled initial-backoff: $ref: '#/components/schemas/sks-audit-initial-backoff' description: Initial Backoff (default '10s') description: Kubernetes Audit parameters 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 dbaas-database-name: type: string maxLength: 40 minLength: 1 dbaas-user-username: type: string maxLength: 64 minLength: 1 enum-pg-synchronous-replication: type: string enum: - quorum - "off" block-storage-volume: type: object properties: labels: $ref: '#/components/schemas/labels' description: Resource labels instance: $ref: '#/components/schemas/instance-ref' description: Volume attached instance, if any name: type: string maxLength: 255 minLength: 1 description: Volume name state: type: string enum: - snapshotting - deleted - creating - detached - deleting - attaching - error - attached - detaching readOnly: true description: Volume state size: type: integer format: int64 minimum: 1 exclusiveMinimum: false description: Volume size blocksize: type: integer format: int64 minimum: 0 exclusiveMinimum: false readOnly: true description: Volume block size block-storage-snapshots: type: array items: $ref: '#/components/schemas/block-storage-snapshot-ref' description: Volume snapshots, if any id: type: string format: uuid readOnly: true description: Volume ID encrypted: type: boolean readOnly: true description: Indicates if the block-storage volume is encrypted created-at: type: string format: date-time readOnly: true description: Volume creation date description: Block storage volume re-encrypt-request: type: object required: - source - destination properties: source: type: object required: - key - ciphertext properties: key: type: string format: uuid description: The ID of the source key currently protecting the data payload. encryption-context: type: string format: byte description: Optional Base64-encoded encryption context originally appended to the AAD to confirm package validation rules. nullable: true encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm the source key must use. Validated against the key's actual cryptographic profile. Required for asymmetric keys. Symmetric keys use AES_256 when it is omitted. ciphertext: type: string format: byte description: The Base64-encoded encrypted payload package ready to undergo source-side key decryption. destination: type: object required: - key properties: key: type: string format: uuid description: The ID of the target key chosen to encapsulate the newly shifted data translation. encryption-context: type: string format: byte description: Optional new Base64-encoded encryption context to apply under the target destination envelope. nullable: true encryption-algorithm: type: string enum: - AES_256 - RSAES_OAEP_SHA_256 description: The encryption algorithm the destination key must use. Validated against the key's actual cryptographic profile. Required for asymmetric keys. Symmetric keys use AES_256 when it is omitted. create-deployment-request: description: Deploy an AI model onto a set of GPUs properties: gpu-count: description: Number of GPUs (1-8) format: int64 type: integer minimum: 1 inference-engine-version: $ref: '#/components/schemas/inference-engine-version' name: description: Deployment name type: string minLength: 1 gpu-type: description: GPU type family (e.g., gpua5000, gpu3080ti) type: string product-name: description: Billing identifier for this deployment. Used by the Router for usage counters and Kafka events. type: string minLength: 1 replicas: description: Number of replicas (>=1) format: int64 type: integer minimum: 1 inference-engine-parameters: description: Optional extra inference engine server CLI args type: array items: type: string model: $ref: '#/components/schemas/model-ref' type: object required: - model - name - gpu-type - gpu-count - replicas enum-migration-method: type: string enum: - dump - replication enum-sort-order: type: string enum: - desc - asc enum-pg-variant: type: string enum: - timescale - aiven sks-audit-create: type: object properties: endpoint: $ref: '#/components/schemas/sks-audit-endpoint' description: Target Webserver URL bearer-token: $ref: '#/components/schemas/sks-audit-bearer-token' description: Bearer token initial-backoff: $ref: '#/components/schemas/sks-audit-initial-backoff' description: Initial backoff (default '10s') required: - endpoint - bearer-token description: Kubernetes Audit parameters update-ai-api-key-response: properties: updated-at: format: date-time type: string all-models: description: True when the key has access to all public models. type: boolean name: type: string all-deployments: description: True when the key has access to all deployments of the organization. type: boolean deployments: $ref: '#/components/schemas/ai-api-key-deployments' models: $ref: '#/components/schemas/ai-api-key-models' id: format: uuid type: string created-at: format: date-time type: string type: object required: - id - name - models - all-models - deployments - all-deployments - created-at - updated-at key-store-proxy: type: object required: - endpoint - auth properties: endpoint: type: string format: uri description: Public URL used to route communication to the customer-managed XKS proxy. auth: $ref: '#/components/schemas/key-store-proxy-auth' dbaas-user-thanos-secrets: type: object properties: username: type: string description: Thanos username password: type: string description: Thanos password description: Thanos User secrets enum-rsyslog-format: type: string enum: - custom - rfc3164 - rfc5424 list-kms-keys-response: type: object required: - kms-keys properties: kms-keys: type: array items: $ref: '#/components/schemas/list-kms-keys-response-entry' description: An array containing metadata entries for all available keys for your organization in the requested zone. 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, in bytes tiered-storage-data-size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Amount of tiered storage data in bytes referenced by this backup required: - backup-name - backup-time - data-size description: List of backups for the service dbaas-endpoint-prometheus: type: object properties: basic-auth-username: type: string maxLength: 32 minLength: 5 pattern: ^[a-z0-9\-@_]{5,32}$ description: Prometheus basic authentication username iam-service-policy: type: object properties: type: type: string enum: - rules - allow - deny rules: type: array items: $ref: '#/components/schemas/iam-service-policy-rule' ai-api-key-deployments: description: Allowlist of deployments. An empty array denies access to all deployments. Grant access to all deployments with all-deployments instead. uniqueItems: true type: array items: $ref: '#/components/schemas/ai-api-key-deployment-ref' 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 - es-mad-1 paths: /load-balancer/{id}/service/{service-id}: delete: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: service-id schema: type: string format: uuid summary: Delete a Load Balancer Service operationId: delete-load-balancer-service put: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: service-id schema: type: string format: uuid summary: Update a Load Balancer Service requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 nullable: true description: Load Balancer Service name description: type: string maxLength: 255 nullable: true description: Load Balancer Service description protocol: type: string enum: - tcp - udp nullable: true description: Network traffic protocol strategy: type: string enum: - round-robin - maglev-hash - source-hash nullable: true description: Load balancing strategy port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: Port exposed on the Load Balancer's public IP target-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: Port on which the network traffic will be forwarded to on the receiving instance healthcheck: $ref: '#/components/schemas/load-balancer-service-healthcheck' description: Healthcheck configuration operationId: update-load-balancer-service get: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/load-balancer-service' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: service-id schema: type: string format: uuid summary: Retrieve Load Balancer Service details operationId: get-load-balancer-service /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 /instance-pool/{id}:scale: put: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Scale an Instance Pool requestBody: required: true content: application/json: schema: type: object properties: size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of managed Instances required: - size operationId: scale-instance-pool /instance/{id}:create-snapshot: post: tags: - instance - snapshot responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Create a Snapshot of a Compute instance operationId: create-snapshot /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 /reverse-dns/elastic-ip/{id}: get: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/reverse-dns-record' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Query the PTR DNS records for an elastic IP operationId: get-reverse-dns-elastic-ip post: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update/Create the PTR DNS record for an elastic IP requestBody: required: true content: application/json: schema: type: object properties: domain-name: type: string maxLength: 253 minLength: 1 operationId: update-reverse-dns-elastic-ip delete: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete the PTR DNS record for an elastic IP operationId: delete-reverse-dns-elastic-ip /anti-affinity-group: get: tags: - anti-affinity-group responses: "200": description: "200" content: application/json: schema: type: object properties: anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group' description: "" parameters: [] summary: List Anti-affinity Groups operationId: list-anti-affinity-groups post: tags: - anti-affinity-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create an Anti-affinity Group requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Anti-affinity Group name description: type: string maxLength: 255 description: Anti-affinity Group description required: - name operationId: create-anti-affinity-group /key-store/{id}/disconnect: post: tags: - key-store responses: "200": description: Disconnected the External Key Store content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Not Found: The request was rejected because no key store with the given id exists in the organization. Bad Request: The request was rejected because of an invalid path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Disconnects an External Key Store and suspends periodic proxy health checks; keys backed by this store remain intact but cannot be used for cryptographic operations until it is reconnected. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Disconnect Key Store' operationId: disconnect-key-store /usage-report: get: tags: - organization responses: "200": description: "200" content: application/json: schema: type: object properties: usage: type: array items: type: object properties: from: type: string readOnly: true description: Period Start Date to: type: string readOnly: true description: Period End Date product: type: string readOnly: true description: Product variable: type: string readOnly: true description: Variable description: type: string readOnly: true description: Description quantity: type: string readOnly: true description: Quantity unit: type: string readOnly: true description: Unit description: Usage description: Returns aggregated usage reports for an organization parameters: - in: query required: false name: period schema: type: string summary: Retrieve organization usage reports operationId: get-usage-report /event: get: tags: - event responses: "200": description: "200" content: application/json: schema: type: array items: $ref: '#/components/schemas/event' description: |- Retrieve Mutation Events for a given date range. Defaults to retrieving Events for the past 24 hours. Both a `from` and `to` arguments can be specified to filter Events over a specific period. Events will be the the most descriptive possible but not all fields are mandatory parameters: - in: query required: false name: from schema: type: string format: date-time - in: query required: false name: to schema: type: string format: date-time summary: List Events operationId: list-events /security-group/{id}/rules/{rule-id}: delete: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: rule-id schema: type: string format: uuid summary: Delete a Security Group rule operationId: delete-rule-from-security-group /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 /kms-key/{id}/disable-key-rotation: post: tags: - kms-key responses: "200": description: Key rotation disabled content: application/json: schema: $ref: '#/components/schemas/disable-kms-key-rotation-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Not on Default: The request was rejected because the operation is not allowed on the default key. Not on Replica: The request was rejected because the operation is not allowed on a replica. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Key is Disabled: The request was rejected because the specified KMS key is disabled. Invalid Usage: The request was rejected because the operation is only allowed on symmetric keys with usage "encrypt-decrypt". Conflict: The request was rejected because the automatic rotation is already enabled for this KMS Key. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Disable the periodic rotation of a KMS Key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Disable Key Rotation operationId: disable-kms-key-rotation /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 /ai/help/inference-engine-parameters: get: tags: - deployment responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/get-inference-engine-help-response' description: Get list of allowed inference engine parameters with their descriptions and allowed values parameters: - in: query required: false name: version schema: type: string summary: Get inference-engine Help operationId: get-inference-engine-help /ai/api-key/{id}/revoke: post: tags: - ai-api-key responses: "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/error-response' "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' description: Revoke an AI API key. Key will be deleted after 30 days of retention parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Revoke AI API Key' operationId: revoke-ai-api-key /load-balancer: post: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create a Load Balancer requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 255 description: Load Balancer description addressfamily: type: string enum: - inet4 - inet6 description: 'Load Balancer address family (default: :inet4)' name: type: string maxLength: 255 minLength: 1 description: Load Balancer name labels: $ref: '#/components/schemas/labels' description: Load balancer labels required: - name operationId: create-load-balancer get: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: type: object properties: load-balancers: type: array items: $ref: '#/components/schemas/load-balancer' description: "" parameters: [] summary: List Load Balancers operationId: list-load-balancers /security-group: post: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create a Security Group requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Security Group name description: type: string maxLength: 255 description: Security Group description required: - name operationId: create-security-group get: tags: - security-group responses: "200": description: "200" content: application/json: schema: type: object properties: security-groups: type: array items: $ref: '#/components/schemas/security-group' description: |- Lists security groups. When visibility is set to public, lists public security groups. Public security groups are objects maintained by Exoscale which contain source addresses for relevant services hosted by Exoscale. They can be used a source in ingress rules and as a destination in egress rules. parameters: - in: query required: false name: visibility schema: type: string enum: - private - public summary: List Security Groups. operationId: list-security-groups /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: 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. 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 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 version: type: string description: MySQL version plan: type: string maxLength: 128 minLength: 1 description: Subscription plan 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. 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 /private-network/{id}:attach: put: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Attach a Compute instance to a Private Network requestBody: required: true content: application/json: schema: type: object properties: ip: type: string format: ipv4 description: Static IP address lease for the corresponding network interface instance: type: object properties: id: type: string format: uuid description: Instance ID description: Compute instance required: - instance operationId: attach-instance-to-private-network /iam-role/{id}/assume: post: tags: - role responses: "200": description: "200" content: application/json: schema: type: object properties: key: type: string name: type: string org-id: type: string role-id: type: string secret: type: string expires-at: type: string description: '[BETA] Request generation of key/secret that allow caller to assume target role' parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Request generation of key/secret that allow caller to assume target role' requestBody: required: true content: application/json: schema: type: object properties: ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: TTL in seconds for the generated access key (cannot exceed the max TTL defined in the targeted assume role) org-id: type: string format: uuid description: Organization ID target of the assume role action required: - ttl operationId: assume-iam-role /vpc/{vpc-id}/subnet/{subnet-id}/attach: put: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: subnet-id schema: type: string format: uuid summary: '[BETA] Attach a Compute instance to a Subnet' requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance-ref' description: Compute instance ipv4: type: string format: ipv4 description: Instance IPv4 required: - instance operationId: attach-instance-to-subnet /kms-key/{id}: get: tags: - kms-key responses: "200": description: KMS Key Details content: application/json: schema: $ref: '#/components/schemas/get-kms-key-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Retrieve KMS Key details. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Get KMS Key operationId: get-kms-key /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 /ai/model: post: tags: - model responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' description: |- Model files will be downloaded from Huggingface. Name must be the exact name of the model on huggingface (ex: openai/gpt-oss-120b or ggml-org/gpt-oss-120b-GGUF). If the model is under a license then you must provide a Huggingface access token for an account that signed the license agreement parameters: [] summary: Create Model requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/create-model-request' operationId: create-model get: tags: - model responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/list-models-response' description: List Models parameters: - in: query required: false name: visibility schema: type: string summary: List Models operationId: list-models /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 /ai/deployment/{id}/scale: post: tags: - deployment responses: "412": description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/error-response' "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "409": description: Conflict content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' description: Scale Deployment parameters: - in: path required: true name: id schema: type: string format: uuid summary: Scale Deployment requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/scale-deployment-request' operationId: scale-deployment /instance-type/{id}: get: tags: - instance-type responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/instance-type' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Instance Type details operationId: get-instance-type /dbaas-clickhouse/{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 ClickHouse service operationId: delete-dbaas-service-clickhouse get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-service-clickhouse' description: null parameters: - in: path required: true name: name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get a DBaaS ClickHouse service operationId: get-dbaas-service-clickhouse 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 ClickHouse 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 version: type: string minLength: 1 description: ClickHouse major version ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' clickhouse-settings: $ref: '#/components/schemas/json-schema-clickhouse' description: ClickHouse-specific 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-clickhouse 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 ClickHouse 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 version: type: string minLength: 1 description: ClickHouse major version ip-filter: type: array items: type: string description: Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' clickhouse-settings: $ref: '#/components/schemas/json-schema-clickhouse' description: ClickHouse-specific settings operationId: update-dbaas-service-clickhouse /instance/{id}:password: get: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/instance-password' description: |- Reveal the password used during instance creation or the latest password reset. This is only available for VMs created against templates having the `password-enabled` property set to `true`. Passwords are transiently stored for at most 24 hours and intended to be retrieved shortly after creation or resets. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Reveal the password used during instance creation or the latest password reset. operationId: reveal-instance-password /sks-template/{kube-version}/{variant}: get: tags: - nodepool-template responses: "200": description: "200" content: application/json: schema: type: object properties: active-template: type: string format: uuid description: Get the active template for a given kube version and variant (standard | nvidia) parameters: - in: path required: true name: kube-version schema: type: string - in: path required: true name: variant schema: type: string enum: - standard - nvidia summary: "" operationId: get-active-nodepool-template /instance/{id}:resize-disk: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: 'This operation resizes a Compute instance''s disk volume. Note: the disk can only grow, cannot be shrunk.' parameters: - in: path required: true name: id schema: type: string format: uuid summary: Resize a Compute instance disk requestBody: required: true content: application/json: schema: type: object properties: disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instance disk size in GiB required: - disk-size operationId: resize-instance-disk /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 /elastic-ip: post: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create an Elastic IP requestBody: required: true content: application/json: schema: type: object properties: addressfamily: type: string enum: - inet4 - inet6 description: 'Elastic IP address family (default: :inet4)' description: type: string maxLength: 255 description: Elastic IP description healthcheck: $ref: '#/components/schemas/elastic-ip-healthcheck' description: Elastic IP healthcheck labels: $ref: '#/components/schemas/labels' description: Resource labels operationId: create-elastic-ip get: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: type: object properties: elastic-ips: type: array items: $ref: '#/components/schemas/elastic-ip' description: "" parameters: [] summary: List Elastic IPs operationId: list-elastic-ips /zone: get: tags: - zone responses: "200": description: "200" content: application/json: schema: type: object properties: zones: type: array items: $ref: '#/components/schemas/zone' description: "" parameters: [] summary: List Zones operationId: list-zones /instance-pool: get: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: type: object properties: instance-pools: type: array items: $ref: '#/components/schemas/instance-pool' description: "" parameters: [] summary: List Instance Pools operationId: list-instance-pools post: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create an Instance Pool requestBody: required: true content: application/json: schema: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Enable application consistent snapshots anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true description: Instance Pool Anti-affinity Groups description: type: string maxLength: 255 description: Instance Pool description public-ip-assignment: type: string enum: - inet4 - dual - none description: Determines public IP assignment of the Instances. Type `none` is final and can't be changed later on. labels: $ref: '#/components/schemas/labels' description: Instance Pool Labels security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true description: Instance Pool Security Groups elastic-ips: type: array items: $ref: '#/components/schemas/elastic-ip-ref' uniqueItems: true description: Instances Elastic IPs name: type: string maxLength: 255 minLength: 1 description: Instance Pool name instance-type: $ref: '#/components/schemas/instance-type-ref' description: Instances type min-available: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Minimum number of running Instances private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' uniqueItems: true description: Instance Pool Private Networks template: $ref: '#/components/schemas/template-ref' description: Instances template size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Number of Instances ssh-key: $ref: '#/components/schemas/ssh-key-ref' description: Instances SSH key instance-prefix: type: string maxLength: 30 minLength: 1 description: 'Prefix to apply to Instances names (default: pool)' user-data: type: string maxLength: 32768 minLength: 1 description: Instances Cloud-init user-data deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Deploy Target to deploy Instances on ipv6-enabled: type: boolean description: 'Enable IPv6. DEPRECATED: use `public-ip-assignments`.' disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instances disk size in GiB ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key-ref' uniqueItems: true description: Instances SSH Keys required: - name - size - instance-type - template - disk-size operationId: create-instance-pool /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 /sks-cluster-kubeconfig/{id}: post: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: kubeconfig: type: string description: This operation returns a Kubeconfig file encoded in base64. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Generate a new Kubeconfig file for a SKS cluster requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/sks-kubeconfig-request' operationId: generate-sks-cluster-kubeconfig /dns-domain/{domain-id}/record: get: tags: - record responses: "200": description: "200" content: application/json: schema: type: object properties: dns-domain-records: type: array items: $ref: '#/components/schemas/dns-domain-record' description: "" parameters: - in: path required: true name: domain-id schema: type: string format: uuid summary: List DNS domain records operationId: list-dns-domain-records post: tags: - record responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: domain-id schema: type: string format: uuid summary: Create DNS domain record requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: DNS domain record name type: type: string enum: - NS - CAA - NAPTR - POOL - A - HINFO - CNAME - SSHFP - SRV - AAAA - MX - TXT - ALIAS - URL description: DNS domain record type content: type: string description: DNS domain record content ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: DNS domain record TTL priority: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: DNS domain record priority required: - name - type - content operationId: create-dns-domain-record /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 /environmental-impact/estimate: post: tags: - environmental-impact responses: "200": description: Impact estimate content: application/json: schema: type: object required: - impact properties: impact: type: object description: Map of SKUs to their different impact indicators additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/impact-value-with-unit' "400": description: Invalid request (e.g. product does not exist) content: application/json: schema: $ref: '#/components/schemas/impact-error-response' "500": description: Internal server error content: application/json: schema: $ref: '#/components/schemas/impact-error-response' description: '[BETA] Returns an estimate of the impact of a unit of usage of one or more products, e.g. the impact of using a standard medium instance for one hour in ch-gva-2' parameters: [] summary: '[BETA] Get an estimate of the impact of using products' requestBody: required: true content: application/json: schema: type: object required: - sku properties: sku: type: string description: Product SKU, e.g. compute:ch-gva-2:instance:standard:medium; can also include wildcards, e.g. compute:\*:instance:standard:\* for all standard instances in all zones metadata: type: object description: Product-specific configuration details operationId: get-impact-estimate /deploy-target: get: tags: - deploy-target responses: "200": description: "200" content: application/json: schema: type: object properties: deploy-targets: type: array items: $ref: '#/components/schemas/deploy-target' description: "" parameters: [] summary: List Deploy Targets operationId: list-deploy-targets /instance-type: get: tags: - instance-type responses: "200": description: "200" content: application/json: schema: type: object properties: instance-types: type: array items: $ref: '#/components/schemas/instance-type' description: "" parameters: [] summary: List Compute instance Types operationId: list-instance-types /ai/deployment: post: tags: - deployment responses: "412": description: 412 (probably insufficient GPUs) content: application/json: schema: $ref: '#/components/schemas/error-response' "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: Deploy a model on an inference server parameters: [] summary: Create Deployment requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/create-deployment-request' operationId: create-deployment get: tags: - deployment responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/list-deployments-response' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: List Deployments parameters: [] summary: List Deployments operationId: list-deployments /live-balance: get: tags: - organization responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/live-balance' "429": description: "429" content: application/json: schema: $ref: '#/components/schemas/rate-limited' description: '[BETA] Returns the live-balance of the current organization.' parameters: [] summary: '[BETA] Retrieve the live-balance' operationId: get-live-balance /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-clickhouse/{service-name}/role: get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-clickhouse-roles' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: List DBaaS ClickHouse roles operationId: list-dbaas-clickhouse-roles /block-storage/{id}:attach: put: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Attach block storage volume to an instance requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance-ref' description: Instance to attach to, this can only be done if the volume is not currently attached required: - instance operationId: attach-block-storage-volume-to-instance /kms-key/{id}/enable: post: tags: - kms-key responses: "200": description: Key enabled content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Enables a KMS Key by setting its state to "enabled". It restores the ability to fully use the KMS key for cryptographic operations and key lifecycle operations. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Enable KMS Key operationId: enable-kms-key /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 /instance/{id}:reset-password: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Reset a compute instance password operationId: reset-instance-password /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 /focus-report/{period}: get: tags: - organization responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/focus-report' description: '[BETA] Returns a presigned URL for the organization''s focus report for the period' parameters: - in: path required: true name: period schema: type: string summary: '[BETA] Retrieve organization focus report download URL' operationId: get-focus-report /private-network/{id}:update-ip: put: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update the IP address of an instance attached to a managed private network requestBody: required: true content: application/json: schema: type: object properties: ip: type: string format: ipv4 description: Static IP address lease for the corresponding network interface instance: type: object properties: id: type: string format: uuid description: Instance ID required: - id operationId: update-private-network-instance-ip /vpc/{vpc-id}/route: get: tags: - vpc-route responses: "200": description: "200" content: application/json: schema: type: object properties: routes: type: array items: $ref: '#/components/schemas/list-route-entry' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid summary: '[BETA] List VPC routes' operationId: list-vpc-routes /sks-cluster/{id}/nodepool/{sks-nodepool-id}: put: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: sks-nodepool-id schema: type: string format: uuid summary: Update an SKS Nodepool requestBody: required: true content: application/json: schema: type: object properties: anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true maxItems: 8 description: Nodepool Anti-affinity Groups description: type: string maxLength: 255 description: Nodepool description public-ip-assignment: type: string enum: - inet4 - dual description: |- Configures public IP assignment of the Instances with: * IPv4 (`inet4`) addressing only; * both IPv4 and IPv6 (`dual`) addressing. labels: $ref: '#/components/schemas/sks-nodepool-labels' description: Nodepool labels taints: $ref: '#/components/schemas/sks-nodepool-taints' description: Nodepool taints security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true maxItems: 16 description: Nodepool Security Groups name: type: string maxLength: 255 minLength: 1 description: Nodepool name, lowercase only instance-type: $ref: '#/components/schemas/instance-type-ref' description: Nodepool instances type private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' uniqueItems: true maxItems: 16 description: Nodepool Private Networks kubelet-image-gc: $ref: '#/components/schemas/kubelet-image-gc' description: Kubelet image GC options instance-prefix: type: string maxLength: 30 minLength: 1 description: 'Prefix to apply to managed instances names (default: pool), lowercase only' deploy-target: $ref: '#/components/schemas/deploy-target-ref' nullable: true description: Nodepool Deploy Target kubelet-max-pods: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: Maximum number of pods per node (kubelet setting) cpu-manager-config: $ref: '#/components/schemas/cpu-manager-config' nullable: true description: CPU manager config disk-size: type: integer format: int64 minimum: 20 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Nodepool instances disk size in GiB nvidia-mig-profiles: $ref: '#/components/schemas/nvidia-mig-profiles' nullable: true description: Nvidia MIG Profiles operationId: update-sks-nodepool get: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/sks-nodepool' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: sks-nodepool-id schema: type: string format: uuid summary: Retrieve SKS Nodepool details operationId: get-sks-nodepool delete: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: sks-nodepool-id schema: type: string format: uuid summary: Delete an SKS Nodepool operationId: delete-sks-nodepool /block-storage-snapshot/{id}: delete: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a block storage snapshot, data will be unrecoverable operationId: delete-block-storage-snapshot put: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update block storage volume snapshot requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 nullable: true description: Snapshot name labels: $ref: '#/components/schemas/labels' nullable: true description: Resource labels operationId: update-block-storage-snapshot get: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/block-storage-snapshot' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve block storage snapshot details operationId: get-block-storage-snapshot /kms-key/{id}/list-key-rotations: get: tags: - kms-key responses: "200": description: The list of all historical rotations for the requested KMS key. content: application/json: schema: $ref: '#/components/schemas/list-kms-key-rotations-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. content: application/json: schema: $ref: '#/components/schemas/error-response' description: List all the key material versions of a KMS Key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: List KMS Key Rotations operationId: list-kms-key-rotations /key-store/{id}/update: post: tags: - key-store responses: "200": description: Updated the External Key Store content: application/json: schema: $ref: '#/components/schemas/get-key-store-response' "400": description: | Errors Not Found: The request was rejected because no key store with the given id exists in the organization. Bad Request: The request was rejected because of an invalid path parameter. Conflict: The request was rejected because the key store was concurrently modified. Retry with the latest state. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Updates an External Key Store with a new description, endpoint, or credentials. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Update Key Store' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/update-key-store-request' operationId: update-key-store /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 /instance-pool/{id}: delete: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete an Instance Pool operationId: delete-instance-pool get: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/instance-pool' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Instance Pool details operationId: get-instance-pool put: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update an Instance Pool requestBody: required: true content: application/json: schema: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Enable application consistent snapshots anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true nullable: true description: Instance Pool Anti-affinity Groups description: type: string maxLength: 255 description: Instance Pool description public-ip-assignment: type: string enum: - inet4 - dual description: Determines public IP assignment of the Instances. labels: $ref: '#/components/schemas/labels' description: Instance Pool Labels security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true nullable: true description: Instance Pool Security Groups elastic-ips: type: array items: $ref: '#/components/schemas/elastic-ip-ref' nullable: true description: Instances Elastic IPs name: type: string maxLength: 255 minLength: 1 description: Instance Pool name instance-type: $ref: '#/components/schemas/instance-type-ref' description: Instances type min-available: type: integer format: int64 minimum: 0 exclusiveMinimum: false nullable: true description: Minimum number of running Instances private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' uniqueItems: true nullable: true description: Instance Pool Private Networks template: $ref: '#/components/schemas/template-ref' description: Instances template ssh-key: $ref: '#/components/schemas/ssh-key-ref' nullable: true description: Instances SSH key instance-prefix: type: string nullable: true description: 'Prefix to apply to Instances names (default: pool)' user-data: type: string minLength: 1 nullable: true description: Instances Cloud-init user-data deploy-target: $ref: '#/components/schemas/deploy-target-ref' nullable: true description: Instance Pool Deploy Target ipv6-enabled: type: boolean description: 'Enable IPv6. DEPRECATED: use `public-ip-assignments`.' disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instances disk size in GiB ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key-ref' uniqueItems: true nullable: true description: Instances SSH keys operationId: update-instance-pool /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 /ai/api-key/{id}: get: tags: - ai-api-key responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/get-ai-api-key-response' description: Get AI API key metadata parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Get AI API Key' operationId: get-ai-api-key put: tags: - ai-api-key responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/update-ai-api-key-response' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: Update the models and deployments accessible by an AI API key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Update AI API Key access' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/update-ai-api-key-request' operationId: update-ai-api-key /private-network: get: tags: - private-network responses: "200": description: "200" content: application/json: schema: type: object properties: private-networks: type: array items: $ref: '#/components/schemas/private-network' description: "" parameters: [] summary: List Private Networks operationId: list-private-networks post: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create a Private Network requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Private Network name description: type: string maxLength: 255 description: Private Network description netmask: type: string format: ipv4 description: Private Network netmask start-ip: type: string format: ipv4 description: Private Network start IP address end-ip: type: string format: ipv4 description: Private Network end IP address labels: $ref: '#/components/schemas/labels' description: Resource labels options: $ref: '#/components/schemas/private-network-options' description: DHCP options required: - name operationId: create-private-network /vpc: post: tags: - vpc-management responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: '[BETA] Create a VPC' requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: VPC name description: type: string maxLength: 4096 description: VPC description labels: $ref: '#/components/schemas/labels' description: Resource labels dhcp-options: $ref: '#/components/schemas/vpc-dhcp-options' description: DHCP options required: - name operationId: create-vpc get: tags: - vpc-management responses: "200": description: "200" content: application/json: schema: type: object properties: vpcs: type: array items: $ref: '#/components/schemas/list-vpc-entry' description: "" parameters: [] summary: '[BETA] List VPCs' operationId: list-vpcs /instance/{id}:start: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: This operation starts a virtual machine, potentially using a rescue profile if specified parameters: - in: path required: true name: id schema: type: string format: uuid summary: Start a Compute instance requestBody: required: true content: application/json: schema: type: object properties: rescue-profile: type: string enum: - netboot-efi - netboot description: 'Boot in Rescue Mode, using named profile (supported: netboot, netboot-efi)' operationId: start-instance /instance/{id}:enable-tpm: post: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Enable tpm for the instance. operationId: enable-tpm /organization: get: tags: - organization responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/organization' description: "" parameters: [] summary: Retrieve an organization operationId: get-organization /security-group/{id}: get: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/security-group' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Security Group details operationId: get-security-group delete: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Security Group operationId: delete-security-group /dbaas-clickhouse/{service-name}/role/{role-uuid}: 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: role-uuid schema: type: string format: uuid summary: Delete a DBaaS ClickHouse role operationId: delete-dbaas-clickhouse-role /sks-cluster/{id}/authority/{authority}/cert: get: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: cacert: type: string description: This operation returns the certificate for the given SKS cluster authority encoded in base64. parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: authority schema: type: string enum: - control-plane - aggregation - kubelet summary: Get the certificate for a SKS cluster authority operationId: get-sks-cluster-authority-cert /snapshot/{id}:export: post: tags: - snapshot responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Export a Snapshot operationId: export-snapshot /ai/deployment/{id}: get: tags: - deployment responses: "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/get-deployment-response' description: Get Deployment details parameters: - in: path required: true name: id schema: type: string format: uuid summary: Get Deployment operationId: get-deployment patch: tags: - deployment responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "409": description: Conflict content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: Update AI deployment parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update Deployment requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/update-deployment-request' operationId: update-deployment delete: tags: - deployment responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "409": description: Conflict content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' description: Delete Deployment parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete Deployment operationId: delete-deployment /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 /kms-key/{id}/enable-key-rotation: post: tags: - kms-key responses: "200": description: Periodic key rotation enabled content: application/json: schema: $ref: '#/components/schemas/enable-kms-key-rotation-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Not on Default: The request was rejected because the operation is not allowed on the default key. Not on Replica: The request was rejected because the operation is not allowed on a replica. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Key is Disabled: The request was rejected because the specified KMS key is disabled. Invalid Usage: The request was rejected because the operation is only allowed on symmetric keys with usage "encrypt-decrypt". Conflict: The request was rejected because the automatic rotation is already enabled for this KMS Key. Bad Request: The request was rejected because of an invalid request body or path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Enable the periodic rotation of a KMS Key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Enable Key Rotation requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/enable-kms-key-rotation-request' operationId: enable-kms-key-rotation /vpc/{vpc-id}/subnet/{subnet-id}/route: get: tags: - vpc-route responses: "200": description: "200" content: application/json: schema: type: object properties: routes: type: array items: $ref: '#/components/schemas/list-route-entry' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: subnet-id schema: type: string format: uuid summary: '[BETA] List Subnet routes' operationId: list-routes post: tags: - vpc-route responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/route' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: subnet-id schema: type: string format: uuid summary: '[BETA] Create a route' requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 4096 description: Route description destination: type: string description: Route destination CIDR target: type: string description: Route target required: - destination - target operationId: create-route /elastic-ip/{id}/{field}: delete: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - description summary: Reset an Elastic IP field to its default value operationId: reset-elastic-ip-field /quota/{entity}: get: tags: - quotas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/quota' description: "" parameters: - in: path required: true name: entity schema: type: string summary: Retrieve Resource Quota operationId: get-quota /kms-key/{id}/get-public-key: get: tags: - crypto responses: "200": description: Public Key Details content: application/json: schema: $ref: '#/components/schemas/get-public-key-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS Key is disabled (or pending deletion). Invalid Usage: The request was rejected because the specified KMS Key does not have public key material (its key-spec is symmetric). content: application/json: schema: $ref: '#/components/schemas/error-response' description: Retrieve the public key material of an asymmetric KMS key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Get Public Key operationId: get-public-key /vpc/{vpc-id}/subnet: get: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: type: object properties: subnets: type: array items: $ref: '#/components/schemas/list-subnet-entry' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid summary: '[BETA] List Subnets' operationId: list-subnets post: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid summary: '[BETA] Create a Subnet' requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Subnet name description: type: string maxLength: 4096 description: Subnet description labels: $ref: '#/components/schemas/labels' description: Resource labels addressfamily: type: string enum: - inet4 description: Subnet address family address-space: type: string enum: - private description: Subnet address space ipv4-block: type: string description: Subnet ipv4 CIDR required: - name - addressfamily - address-space operationId: create-subnet /sks-cluster-deprecated-resources/{id}: get: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: array items: $ref: '#/components/schemas/sks-cluster-deprecated-resource' description: This operation returns the deprecated resources for a given cluster parameters: - in: path required: true name: id schema: type: string format: uuid summary: Resources that are scheduled to be removed in future kubernetes releases operationId: list-sks-cluster-deprecated-resources /block-storage/{id}: get: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/block-storage-volume' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve block storage volume details operationId: get-block-storage-volume put: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update block storage volume requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 nullable: true description: Volume name labels: $ref: '#/components/schemas/labels' nullable: true description: Resource labels operationId: update-block-storage-volume delete: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a block storage volume, data will be unrecoverable operationId: delete-block-storage-volume /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 /block-storage/{id}:create-snapshot: post: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Create a block storage snapshot requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Snapshot name labels: $ref: '#/components/schemas/labels' description: Resource labels operationId: create-block-storage-snapshot /private-network/{id}:detach: put: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Detach a Compute instance from a Private Network requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance' description: Compute instance required: - instance operationId: detach-instance-from-private-network /private-network/{id}: put: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update a Private Network requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Private Network name description: type: string maxLength: 255 description: Private Network description netmask: type: string format: ipv4 description: Private Network netmask start-ip: type: string format: ipv4 description: Private Network start IP address end-ip: type: string format: ipv4 description: Private Network end IP address labels: $ref: '#/components/schemas/labels' description: Resource labels options: $ref: '#/components/schemas/private-network-options' description: DHCP options operationId: update-private-network get: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/private-network' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Private Network details operationId: get-private-network delete: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Private Network operationId: delete-private-network /ai/instance-type: get: tags: - deployment responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/list-ai-instance-types-response' description: List available instance types with authorization status based on GPU availability parameters: [] summary: List Instance Types operationId: list-ai-instance-types /key-store: post: tags: - key-store responses: "200": description: Created new External Key Store content: application/json: schema: $ref: '#/components/schemas/list-key-stores-response-entry' "400": description: | Errors Name Conflict: The request was rejected because a key store with the same name already exists in the organization. Key Store Proxy Unhealthy: The request was rejected because the customer-managed XKS proxy failed its health check. Bad Request: The request was rejected because of an invalid request body, path parameter, proxy endpoint, or proxy credentials. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Create an External Key Store after validating the configured customer-managed XKS proxy. parameters: [] summary: '[BETA] Create Key Store' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/create-key-store-request' operationId: create-key-store get: tags: - key-store responses: "200": description: A list of all key stores configured for the organization content: application/json: schema: $ref: '#/components/schemas/list-key-stores-response' "400": description: | Errors Bad Request: The request was rejected because of an invalid path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Lists all key stores configured for an organization. parameters: [] summary: '[BETA] List Key Stores' operationId: list-key-stores /load-balancer/{id}/{field}: delete: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - description - labels summary: Reset a Load Balancer field to its default value operationId: reset-load-balancer-field /instance/{id}:scale: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: 'This operation changes the Compute instance''s type. Note: the new Instance Type must be within the same family (e.g. a standard instance cannot be scaled to gpu2 or storage).' parameters: - in: path required: true name: id schema: type: string format: uuid summary: Scale a Compute instance to a new Instance Type requestBody: required: true content: application/json: schema: type: object properties: instance-type: $ref: '#/components/schemas/instance-type-ref' description: Instance Type required: - instance-type operationId: scale-instance /api-key: post: tags: - api-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/iam-api-key-created' description: null parameters: [] summary: Create a new API key requestBody: required: true content: application/json: schema: type: object properties: role-id: type: string format: uuid description: IAM API Key Role ID name: type: string maxLength: 255 minLength: 1 description: IAM API Key Name required: - role-id - name operationId: create-api-key get: tags: - api-key responses: "200": description: "200" content: application/json: schema: type: object properties: api-keys: type: array items: $ref: '#/components/schemas/iam-api-key' description: null parameters: [] summary: List API keys operationId: list-api-keys /block-storage-snapshot: get: tags: - block-storage responses: "200": description: "200" content: application/json: schema: type: object properties: block-storage-snapshots: type: array items: $ref: '#/components/schemas/block-storage-snapshot' description: "" parameters: [] summary: List block storage snapshots operationId: list-block-storage-snapshots /dns-domain: get: tags: - domain responses: "200": description: "200" content: application/json: schema: type: object properties: dns-domains: type: array items: $ref: '#/components/schemas/dns-domain' description: "" parameters: [] summary: List DNS domains operationId: list-dns-domains post: tags: - domain responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create DNS domain requestBody: required: true content: application/json: schema: type: object properties: unicode-name: type: string description: Domain name description: DNS Domain operationId: create-dns-domain /instance/{id}:stop: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Stop a Compute instance operationId: stop-instance /dns-domain/{domain-id}/record/{record-id}: get: tags: - record responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dns-domain-record' description: "" parameters: - in: path required: true name: domain-id schema: type: string format: uuid - in: path required: true name: record-id schema: type: string format: uuid summary: Retrieve DNS domain record details operationId: get-dns-domain-record put: tags: - record responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: domain-id schema: type: string format: uuid - in: path required: true name: record-id schema: type: string format: uuid summary: Update DNS domain record requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: DNS domain record name content: type: string description: DNS domain record content ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: DNS domain record TTL priority: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: DNS domain record priority operationId: update-dns-domain-record delete: tags: - record responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: domain-id schema: type: string format: uuid - in: path required: true name: record-id schema: type: string format: uuid summary: Delete DNS domain record operationId: delete-dns-domain-record /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 /security-group/{id}:attach: put: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Attach a Compute instance to a Security Group requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance' description: Compute instance required: - instance operationId: attach-instance-to-security-group /snapshot/{id}: delete: tags: - snapshot responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Snapshot operationId: delete-snapshot get: tags: - snapshot responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/snapshot' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Snapshot details operationId: get-snapshot /kms-key/{id}/sign: post: tags: - crypto responses: "200": description: The message was successfully signed content: application/json: schema: $ref: '#/components/schemas/sign-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS Key is disabled (or pending deletion). Invalid Usage: The request was rejected because the operation is only allowed on keys with usage "sign-verify". Invalid Argument: The request was rejected because `message-type`, `message`, or `signing-algorithm` is invalid. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Signs a message or digest using a KMS key with usage `sign-verify`. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Sign requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/sign-request' operationId: sign /sks-cluster/{id}/nodepool/{sks-nodepool-id}:scale: put: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: sks-nodepool-id schema: type: string format: uuid summary: Scale a SKS Nodepool requestBody: required: true content: application/json: schema: type: object properties: size: type: integer format: int64 minimum: 0 exclusiveMinimum: false description: Number of instances required: - size operationId: scale-sks-nodepool /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 /sks-cluster/{id}/upgrade-service-level: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Upgrade a SKS cluster to pro operationId: upgrade-sks-cluster-service-level /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 /api-key/{id}: delete: tags: - api-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: id schema: type: string summary: Delete an API key operationId: delete-api-key get: tags: - api-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/iam-api-key' description: null parameters: - in: path required: true name: id schema: type: string summary: Get API key operationId: get-api-key /load-balancer/{id}/service/{service-id}/{field}: delete: tags: - network-load-balancer - compute responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: service-id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - description summary: Reset a Load Balancer Service field to its default value operationId: reset-load-balancer-service-field /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 /kms-key/{id}/rotate: post: tags: - kms-key responses: "200": description: Key rotated content: application/json: schema: $ref: '#/components/schemas/rotate-kms-key-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Not on a Replica: The request was rejected because the operation is not allowed on a replica. Invalid Usage: The request was rejected because the operation is only allowed on symmetric keys with usage "encrypt-decrypt". Key is Disabled: The request was rejected because the specified KMS key is disabled. Manual Rotation Limit: The request was rejected because you reached your limit of 10 manual rotations per key for this KMS key. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Performs an immediate rotation of the key material for a symmetric key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Rotate Key operationId: rotate-kms-key /key-store/{id}/connect: post: tags: - key-store responses: "200": description: Connected the External Key Store content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Not Found: The request was rejected because no key store with the given id exists in the organization. Key Store Proxy Unhealthy: The request was rejected because the customer-managed XKS proxy failed its health check. Bad Request: The request was rejected because of an invalid path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Connects an External Key Store once its customer-managed XKS proxy passes a health check, then resumes periodic proxy health checks and lets keys backed by this store be used for cryptographic operations. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Connect Key Store' operationId: connect-key-store /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 /security-group/{id}/rules: post: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Create a Security Group rule requestBody: required: true content: application/json: schema: type: object properties: flow-direction: type: string enum: - ingress - egress description: Network flow direction to match description: type: string maxLength: 255 description: Security Group rule description network: type: string description: CIDR-formatted network allowed security-group: $ref: '#/components/schemas/security-group-resource' description: Security Group allowed protocol: type: string enum: - tcp - esp - all - icmp - udp - gre - ah - ipip - icmpv6 description: Network protocol icmp: type: object properties: code: type: integer format: int64 minimum: -1 maximum: 254 exclusiveMinimum: false exclusiveMaximum: false nullable: true type: type: integer format: int64 minimum: -1 maximum: 254 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: 'ICMP details (default: -1 (ANY))' start-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Start port of the range end-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: End port of the range required: - flow-direction - protocol operationId: add-rule-to-security-group /dbaas-settings-clickhouse: get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: type: object properties: settings: type: object properties: clickhouse: type: object properties: properties: type: object additionalProperties: type: boolean type: type: string title: type: string description: ClickHouse configuration values description: null parameters: [] summary: '[BETA] Get DBaaS ClickHouse settings' operationId: get-dbaas-settings-clickhouse /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 /env-impact/{period}: get: tags: - organization responses: "410": description: "410" content: application/json: schema: type: object properties: message: type: string description: Explains that the endpoint was removed description: Endpoint removed description: '[REMOVED] This endpoint is no longer available: it always returns 410 Gone with a message. Use get-impact-report endpoint instead.' parameters: - in: path required: true name: period schema: type: string summary: '[REMOVED] use get-impact-report endpoint' operationId: get-env-impact /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 /instance/{id}:add-protection: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Set instance destruction protection operationId: add-instance-protection /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 /iam-role/{id}: put: tags: - role responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update IAM Role requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 255 minLength: 1 description: IAM Role description permissions: type: array items: type: string enum: - bypass-governance-retention - reset-iam-organization-policy uniqueItems: true description: IAM Role permissions labels: $ref: '#/components/schemas/labels' description: IAM Role labels max-session-ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Maximum TTL requester is allowed to ask for when assuming a role assume-role-policy: $ref: '#/components/schemas/iam-assume-role-policy' description: IAM Assume role policy operationId: update-iam-role get: tags: - role responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/iam-role' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve IAM Role operationId: get-iam-role delete: tags: - role responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete IAM Role operationId: delete-iam-role /instance/{id}/{field}: delete: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - labels summary: Reset Instance field operationId: reset-instance-field /instance-pool/{id}/{field}: delete: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - anti-affinity-groups - description - labels - security-groups - elastic-ips - private-networks - ssh-key - user-data - deploy-target - ipv6-enabled summary: Reset an Instance Pool field to its default value operationId: reset-instance-pool-field /instance/{id}:remove-protection: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Remove instance destruction protection operationId: remove-instance-protection /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 /snapshot: get: tags: - snapshot responses: "200": description: "200" content: application/json: schema: type: object properties: snapshots: type: array items: $ref: '#/components/schemas/snapshot' description: "" parameters: [] summary: List Snapshots operationId: list-snapshots /key-store/{id}: delete: tags: - key-store responses: "200": description: Deleted the External Key Store content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Not Found: The request was rejected because no key store with the given id exists in the organization. Key Store Is Referenced: The request was rejected because one or more KMS keys reference the key store. Bad Request: The request was rejected because of an invalid path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Deletes an External Key Store when no KMS keys reference it. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Delete Key Store' operationId: delete-key-store get: tags: - key-store responses: "200": description: External Key Store content: application/json: schema: $ref: '#/components/schemas/get-key-store-response' "400": description: | Errors Not Found: The request was rejected because no key store with the given id exists in the organization. Bad Request: The request was rejected because of an invalid path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Fetch an External Key Store including its latest XKS health observation when available. parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Get Key Store' operationId: get-key-store /operation/{id}: get: tags: - operation responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Operation details operationId: get-operation /dns-domain/{id}/zone: get: tags: - domain responses: "200": description: "200" content: application/json: schema: type: object properties: zone-file: type: string description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve DNS domain zone file operationId: get-dns-domain-zone-file /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 /security-group/{id}:remove-source: put: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Remove an external source from a Security Group requestBody: required: true content: application/json: schema: type: object properties: cidr: type: string description: CIDR-formatted network to remove required: - cidr operationId: remove-external-source-from-security-group /iam-organization-policy: get: tags: - organization-policy responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/iam-policy' description: "" parameters: [] summary: Retrieve IAM Organization Policy operationId: get-iam-organization-policy put: tags: - organization-policy responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Update IAM Organization Policy requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/iam-policy' operationId: update-iam-organization-policy /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 /kms-key/{id}/decrypt: post: tags: - crypto responses: "200": description: Base64 encoded plaintext. content: application/json: schema: $ref: '#/components/schemas/decrypt-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS key is disabled. Invalid Usage: The request was rejected because the operation is not allowed for this key's usage. Invalid Algorithm: The request was rejected because the specified encryption algorithm does not match the key's cryptographic profile. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Decrypts a ciphertext. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Decrypt requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/decrypt-request' operationId: decrypt /template/{id}: delete: tags: - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Template operationId: delete-template post: tags: - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Copy a Template from a zone to another requestBody: required: true content: application/json: schema: type: object properties: target-zone: $ref: '#/components/schemas/zone' description: Target Zone name required: - target-zone operationId: copy-template put: tags: - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update template attributes requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Template name description: type: string maxLength: 255 description: Template Description operationId: update-template get: tags: - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/template' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Template details operationId: get-template /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 /user/{id}: put: tags: - user responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update a User's IAM role requestBody: required: true content: application/json: schema: type: object properties: role: $ref: '#/components/schemas/iam-role' description: IAM Role operationId: update-user-role delete: tags: - user responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete User operationId: delete-user /reverse-dns/instance/{id}: post: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update/Create the PTR DNS record for an instance requestBody: required: true content: application/json: schema: type: object properties: domain-name: type: string maxLength: 253 minLength: 1 operationId: update-reverse-dns-instance get: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/reverse-dns-record' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Query the PTR DNS records for an instance operationId: get-reverse-dns-instance delete: tags: - reverse-dns responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete the PTR DNS record for an instance operationId: delete-reverse-dns-instance /instance-pool/{id}:evict: put: tags: - instance-pool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: This operation evicts the specified Compute instances member from the Instance Pool, shrinking it to `<current pool size> - <# evicted members>`. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Evict Instance Pool members requestBody: required: true content: application/json: schema: type: object properties: instances: type: array items: type: string format: uuid operationId: evict-instance-pool-members /sks-cluster/{id}/rotate-csi-credentials: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Rotate Exoscale CSI credentials operationId: rotate-sks-csi-credentials /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-clickhouse/{service-name}/user/{username}/password/reset: put: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-user-clickhouse-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: Reset the credentials of a DBaaS ClickHouse user requestBody: required: true content: application/json: schema: type: object properties: password: $ref: '#/components/schemas/dbaas-user-password' description: New password operationId: reset-dbaas-clickhouse-user-password /security-group/{id}:detach: put: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Detach a Compute instance from a Security Group requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance' description: Compute instance required: - instance operationId: detach-instance-from-security-group /dbaas-clickhouse/{service-name}/acl-config: get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-clickhouse-acl-config' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Get DBaaS ClickHouse ACL configuration operationId: get-dbaas-clickhouse-acl-config /dbaas-clickhouse/{service-name}/user: get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-clickhouse-users' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: List DBaaS ClickHouse users operationId: list-dbaas-clickhouse-users post: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-user-clickhouse-secrets' description: null parameters: - in: path required: true name: service-name schema: $ref: '#/components/schemas/dbaas-service-name' summary: Create a DBaaS ClickHouse user requestBody: required: true content: application/json: schema: type: object properties: username: $ref: '#/components/schemas/dbaas-user-username' description: Username password: $ref: '#/components/schemas/dbaas-user-password' description: Password roles: type: array items: $ref: '#/components/schemas/dbaas-clickhouse-user-role-input' description: ClickHouse roles to grant to the user required: - username operationId: create-dbaas-clickhouse-user /sks-cluster/{id}/nodepool/{sks-nodepool-id}:evict: put: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: This operation evicts the specified Compute instances member from the Nodepool, shrinking it to `<current nodepool size> - <# evicted members>`. parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: sks-nodepool-id schema: type: string format: uuid summary: Evict Nodepool members requestBody: required: true content: application/json: schema: type: object properties: instances: type: array items: type: string format: uuid uniqueItems: true operationId: evict-sks-nodepool-members /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 /kms-key/{id}/disable: post: tags: - kms-key responses: "200": description: Key disabled content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Not on Default: The request was rejected because the operation is not allowed on the default key. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Disables a KMS Key by setting its state to "disabled". This prevents the use of the KMS key for cryptographic and key lifecycle operations. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Disable KMS Key operationId: disable-kms-key /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 /dns-domain/{id}: delete: tags: - domain responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete DNS Domain operationId: delete-dns-domain get: tags: - domain responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dns-domain' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve DNS domain details operationId: get-dns-domain /block-storage/{id}:resize-volume: put: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/block-storage-volume' description: 'This operation resizes a Block storage volume. Note: the volume can only grow, cannot be shrunk. Only detached volumes or volumes attached to stopped instances can be resized.' parameters: - in: path required: true name: id schema: type: string format: uuid summary: Resize a block storage volume requestBody: required: true content: application/json: schema: type: object properties: size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Volume size in GiB required: - size operationId: resize-block-storage-volume /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 /security-group/{id}:add-source: put: tags: - security-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Add an external source as a member of a Security Group requestBody: required: true content: application/json: schema: type: object properties: cidr: type: string description: CIDR-formatted network to add required: - cidr operationId: add-external-source-to-security-group /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 /ai/model/{id}: delete: tags: - model responses: "412": description: Precondition Failed content: application/json: schema: $ref: '#/components/schemas/delete-model-conflict-response' "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/operation' description: Delete Model parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete Model operationId: delete-model get: tags: - model responses: "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/get-model-response' description: Get Model details parameters: - in: path required: true name: id schema: type: string format: uuid summary: Get Model operationId: get-model /sos-buckets-usage: get: tags: - sos responses: "200": description: "200" content: application/json: schema: type: object properties: sos-buckets-usage: type: array items: $ref: '#/components/schemas/sos-bucket-usage' description: "" parameters: [] summary: List SOS Buckets Usage operationId: list-sos-buckets-usage /instance/{id}:reset: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: 'This operation re-installs a Compute instance to a base template. If target template is provided it will be used to recreated instance from. Warning: the operation wipes all data stored on the disk.' parameters: - in: path required: true name: id schema: type: string format: uuid summary: Reset a Compute instance to a base/target template requestBody: required: true content: application/json: schema: type: object properties: template: $ref: '#/components/schemas/template-ref' description: Template to recreate Instance from disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instance disk size in GiB operationId: reset-instance /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 /ssh-key/{name}: delete: tags: - ssh-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: name schema: type: string summary: Delete a SSH key operationId: delete-ssh-key get: tags: - ssh-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/ssh-key' description: "" parameters: - in: path required: true name: name schema: type: string summary: Retrieve SSH key details operationId: get-ssh-key /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 /deploy-target/{id}: get: tags: - deploy-target responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/deploy-target' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Deploy Target details operationId: get-deploy-target /elastic-ip/{id}:detach: put: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Detach a Compute instance from an Elastic IP requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance-ref' description: Compute instance required: - instance operationId: detach-instance-from-elastic-ip /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 /vpc/{vpc-id}/subnet/{subnet-id}/route/{id}: delete: tags: - vpc-route responses: "204": description: "204" description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: subnet-id schema: type: string format: uuid - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Delete a route' operationId: delete-route /kms-key/{id}/encrypt: post: tags: - crypto responses: "200": description: Base64 encoded ciphertext content: application/json: schema: $ref: '#/components/schemas/encrypt-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS key is disabled. Invalid Usage: The request was rejected because the operation is not allowed for this key's usage. Invalid Algorithm: The request was rejected because the specified encryption algorithm does not match the key's cryptographic profile. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Encrypts a plaintext. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Encrypt requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/encrypt-request' operationId: encrypt /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 /load-balancer/{id}/service: post: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Add a Load Balancer Service requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Load Balancer Service name description: type: string maxLength: 255 description: Load Balancer Service description instance-pool: $ref: '#/components/schemas/instance-pool' description: Instance Pool to forward traffic to protocol: type: string enum: - tcp - udp description: Network traffic protocol strategy: type: string enum: - round-robin - maglev-hash - source-hash description: Load balancing strategy port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port exposed on the Load Balancer's public IP target-port: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false description: Port on which the network traffic will be forwarded to on the receiving instance healthcheck: $ref: '#/components/schemas/load-balancer-service-healthcheck' description: Healthcheck configuration required: - name - instance-pool - protocol - strategy - port - target-port - healthcheck operationId: add-service-to-load-balancer /ssh-key: get: tags: - ssh-key responses: "200": description: "200" content: application/json: schema: type: object properties: ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key' description: "" parameters: [] summary: List SSH keys operationId: list-ssh-keys post: tags: - ssh-key responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Import SSH key requestBody: required: true content: application/json: schema: type: object properties: name: type: string pattern: ^[a-zA-Z0-9]{1}[a-zA-Z0-9._-]{0,254}$ description: SSH key name public-key: type: string description: Public key value required: - name - public-key operationId: register-ssh-key /snapshot/{id}:promote: post: tags: - snapshot - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Promote a Snapshot to a Template requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Template name description: type: string maxLength: 4096 description: Template description default-user: type: string maxLength: 255 minLength: 1 description: Template default user ssh-key-enabled: type: boolean description: Enable SSH key-based login in the template password-enabled: type: boolean description: Enable password-based login in the template required: - name operationId: promote-snapshot-to-template /dbaas-clickhouse/{service-name}/user/{username}/password/reveal: get: tags: - dbaas responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/dbaas-user-clickhouse-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 ClickHouse user operationId: reveal-dbaas-clickhouse-user-password /sks-cluster: post: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create an SKS cluster requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 255 nullable: true description: Cluster description labels: $ref: '#/components/schemas/sks-cluster-labels' description: Cluster Labels karpenter-feature-gates: type: array items: type: string uniqueItems: true description: A list of Karpenter controller feature gates to enable for the Karpenter controller binary cni: type: string enum: - calico - cilium description: Cluster CNI auto-upgrade: type: boolean description: Enable auto upgrade of the control plane to the latest patch version available networking: $ref: '#/components/schemas/networking' description: Cluster networking configuration oidc: $ref: '#/components/schemas/sks-oidc' description: Cluster OpenID configmap name: type: string maxLength: 255 minLength: 1 description: Cluster name create-default-security-group: type: boolean nullable: true description: Creates an ad-hoc security group based on the choice of the selected CNI enable-kube-proxy: type: boolean description: Indicates whether to deploy the Kubernetes network proxy. When unspecified, defaults to `true` unless Cilium CNI is selected level: type: string enum: - starter - pro description: Cluster service level feature-gates: type: array items: type: string uniqueItems: true description: A list of Kubernetes-only Alpha features to enable for API server component addons: type: array items: type: string enum: - exoscale-cloud-controller - exoscale-container-storage-interface - metrics-server - karpenter uniqueItems: true description: Cluster addons audit: $ref: '#/components/schemas/sks-audit-create' description: Kubernetes Audit Log Configuration version: type: string description: Control plane Kubernetes version allowed-networks: $ref: '#/components/schemas/sks-cluster-allowed-networks' description: 'EXPERIMENTAL: List of ranges of allowed IPs using CIDR notation. Defaults to `["0.0.0.0/0"]`, allowing access to all IPs. (default: ["0.0.0.0/0"])' required: - name - level - version operationId: create-sks-cluster get: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: sks-clusters: type: array items: $ref: '#/components/schemas/sks-cluster' description: "" parameters: [] summary: List SKS clusters operationId: list-sks-clusters /block-storage/{id}:detach: put: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Detach block storage volume operationId: detach-block-storage-volume /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 /console/{id}: get: tags: - instance responses: "200": description: "200" content: application/json: schema: type: object properties: url: type: string host: type: string path: type: string description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve signed url valid for 60 seconds to connect via console-proxy websocket to VM VNC console. operationId: get-console-proxy-url /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 /elastic-ip/{id}:attach: put: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Attach a Compute instance to an Elastic IP requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance-ref' description: Compute instance required: - instance operationId: attach-instance-to-elastic-ip /sks-cluster/{id}: delete: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete an SKS cluster operationId: delete-sks-cluster get: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/sks-cluster' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve SKS cluster details operationId: get-sks-cluster put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update an SKS cluster requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 255 nullable: true description: Cluster description labels: $ref: '#/components/schemas/sks-cluster-labels' description: Cluster labels karpenter-feature-gates: type: array items: type: string uniqueItems: true nullable: true description: A list of Karpenter controller feature gates to enable for the Karpenter controller binary auto-upgrade: type: boolean description: Enable auto upgrade of the control plane to the latest patch version available oidc: $ref: '#/components/schemas/sks-oidc' nullable: true description: Cluster OpenID configmap name: type: string maxLength: 255 minLength: 1 description: Cluster name enable-operators-ca: type: boolean description: Add or remove the operators certificate authority (CA) from the list of trusted CAs of the api server. The default value is true feature-gates: type: array items: type: string uniqueItems: true nullable: true description: A list of Kubernetes-only Alpha features to enable for API server component addons: type: array items: type: string enum: - exoscale-cloud-controller - exoscale-container-storage-interface - metrics-server - karpenter uniqueItems: true description: Cluster addons audit: $ref: '#/components/schemas/sks-audit-update' description: Kubernetes Audit Log Configuration allowed-networks: $ref: '#/components/schemas/sks-cluster-allowed-networks' description: 'EXPERIMENTAL: List of ranges of allowed IPs using CIDR notation. Defaults to `["0.0.0.0/0"]`, allowing access to all IPs. (default: ["0.0.0.0/0"])' operationId: update-sks-cluster /quota: get: tags: - quotas - ccm responses: "200": description: "200" content: application/json: schema: type: object properties: quotas: type: array items: $ref: '#/components/schemas/quota' description: "" parameters: [] summary: List Organization Quotas operationId: list-quotas /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-clickhouse/{service-name}/user/{user-uuid}: 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: user-uuid schema: type: string format: uuid summary: Delete a DBaaS ClickHouse user operationId: delete-dbaas-clickhouse-user /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 /elastic-ip/{id}: put: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update an Elastic IP requestBody: required: true content: application/json: schema: type: object properties: description: type: string maxLength: 255 description: Elastic IP description healthcheck: $ref: '#/components/schemas/elastic-ip-healthcheck' description: Elastic IP healthcheck labels: $ref: '#/components/schemas/labels' description: Resource labels operationId: update-elastic-ip get: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/elastic-ip' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Elastic IP details operationId: get-elastic-ip delete: tags: - elastic-ip responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete an Elastic IP operationId: delete-elastic-ip /sks-cluster/{id}/inspection: get: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object additionalProperties: {} description: Helps troubleshoot common problems when deploying a kubernetes cluster. Inspections run every couple of minutes. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Get the latest inspection result operationId: get-sks-cluster-inspection /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: valkey-settings: $ref: '#/components/schemas/json-schema-valkey' description: Valkey.conf settings 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 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 minLength: 1 description: Valkey 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 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-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 version: type: string minLength: 1 description: Valkey major version valkey-settings: $ref: '#/components/schemas/json-schema-valkey' description: Valkey.conf settings operationId: update-dbaas-service-valkey /instance/{id}: delete: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Compute instance operationId: delete-instance put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update a Compute instance requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 description: Instance name user-data: type: string maxLength: 32768 minLength: 1 description: Instance Cloud-init user-data (base64 encoded) public-ip-assignment: $ref: '#/components/schemas/public-ip-assignment' description: Assign public IP to the Instance labels: $ref: '#/components/schemas/labels' description: Resource labels nullable: true application-consistent-snapshot-enabled: type: boolean description: Enable/Disable Application Consistent Snapshot for Instance operationId: update-instance get: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/instance' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Compute instance details operationId: get-instance /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 /vpc/{vpc-id}/subnet/{id}: delete: tags: - vpc-subnet responses: "204": description: "204" description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Delete a Subnet' operationId: delete-subnet put: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/subnet' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Update a Subnet' requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 nullable: true description: Subnet name description: type: string maxLength: 4096 nullable: true description: Subnet description labels: $ref: '#/components/schemas/labels' nullable: true description: Resource labels operationId: update-subnet get: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/subnet' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Retrieve Subnet details' operationId: get-subnet /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 /sks-cluster/{id}/rotate-ccm-credentials: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Rotate Exoscale CCM credentials operationId: rotate-sks-ccm-credentials /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 /kms-key: post: tags: - kms-key responses: "200": description: Created new KMS key content: application/json: schema: $ref: '#/components/schemas/create-kms-key-response' "400": description: | Errors Name Conflict: The request was rejected because a key with the same name already exists in the target zone. Bad Request: The request was rejected because of an invalid request body or path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Create a customer-managed unique KMS Key in your organization. A KMS Key is a logical representation of a cryptographic key material. It also includes metadata such as a UUID, a name and its state. parameters: [] summary: Create KMS Key requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/create-kms-key-request' operationId: create-kms-key get: tags: - kms-key responses: "200": description: A list of all KMS keys in the target zone content: application/json: schema: $ref: '#/components/schemas/list-kms-keys-response' "400": description: | Errors Bad Request: The request was rejected because of an invalid request body or path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Lists all KMS Keys in your organization in a given zone. parameters: [] summary: List KMS Keys operationId: list-kms-keys /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 /iam-role/{id}:policy: put: tags: - role responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update IAM Role Policy requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/iam-policy' operationId: update-iam-role-policy /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 /sks-cluster/{id}/generate-karpenter-nodepool: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: nodepool: type: string description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Generate a Karpenter NodePool manifest with minimal configuration for an SKS cluster operationId: generate-sks-karpenter-nodepool /load-balancer/{id}: put: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Update a Load Balancer requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 nullable: true description: Load Balancer name description: type: string maxLength: 255 nullable: true description: Load Balancer description labels: $ref: '#/components/schemas/labels' nullable: true operationId: update-load-balancer delete: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete a Load Balancer operationId: delete-load-balancer get: tags: - network-load-balancer responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/load-balancer' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Load Balancer details operationId: get-load-balancer /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 /vpc/{vpc-id}/subnet/{subnet-id}/detach: put: tags: - vpc-subnet responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: vpc-id schema: type: string format: uuid - in: path required: true name: subnet-id schema: type: string format: uuid summary: '[BETA] Detach a Compute instance from a Subnet' requestBody: required: true content: application/json: schema: type: object properties: instance: $ref: '#/components/schemas/instance-ref' description: Compute instance required: - instance operationId: detach-instance-from-subnet /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 /template: get: tags: - template responses: "200": description: "200" content: application/json: schema: type: object properties: templates: type: array items: $ref: '#/components/schemas/template' description: "" parameters: - in: query required: false name: visibility schema: type: string enum: - private - public - in: query required: false name: family schema: type: string summary: List Templates operationId: list-templates post: tags: - template responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Register a Template requestBody: required: true content: application/json: schema: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Template with support for Application Consistent Snapshots maintainer: type: string maxLength: 255 minLength: 1 description: Template maintainer description: type: string maxLength: 255 description: Template description ssh-key-enabled: type: boolean description: Enable SSH key-based login name: type: string maxLength: 255 minLength: 1 description: Template name default-user: type: string maxLength: 255 minLength: 1 description: Template default user size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Template size password-enabled: type: boolean description: Enable password-based login build: type: string maxLength: 255 minLength: 1 description: Template build checksum: type: string minLength: 1 description: Template MD5 checksum boot-mode: type: string enum: - legacy - uefi description: 'Boot mode (default: legacy)' url: type: string minLength: 1 description: Template source URL version: type: string maxLength: 255 minLength: 1 description: Template version required: - name - url - checksum - ssh-key-enabled - password-enabled operationId: register-template /instance/{id}:reboot: put: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Reboot a Compute instance operationId: reboot-instance /environmental-impact/report: get: tags: - environmental-impact responses: "200": description: Environmental impact report content: application/json: schema: $ref: '#/components/schemas/impact-breakdown' "400": description: Invalid request (e.g. to date before from date) content: application/json: schema: $ref: '#/components/schemas/impact-error-response' "500": description: Internal server error content: application/json: schema: $ref: '#/components/schemas/impact-error-response' description: '[BETA] Returns a breakdown of the impact of your organization''s usage over the given period' parameters: - in: query required: false name: from schema: type: string - in: query required: false name: to schema: type: string summary: '[BETA] Get an environmental impact report' operationId: get-impact-report /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 /iam-organization-policy:reset: post: tags: - organization-policy responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Reset IAM Organization Policy operationId: reset-iam-organization-policy /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 /kms-key/{id}/schedule-deletion: post: tags: - kms-key responses: "200": description: Key deletion scheduled content: application/json: schema: $ref: '#/components/schemas/schedule-kms-key-deletion-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Not on Default: The request was rejected because the operation is not allowed on the default key. Not on Replica: The request was rejected because the operation is not allowed on a replica. Bad Request: The request was rejected because of an invalid request body or path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Schedules a KMS key for deletion after a delay. You can specify a delay of 7-30 days. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Schedule KMS Key Deletion requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/schedule-kms-key-deletion-request' operationId: schedule-kms-key-deletion /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 /sks-cluster/{id}/generate-karpenter-exoscale-nodeclass: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: exoscale-nodeclass: type: string description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Generate a Karpenter ExoscaleNodeClass manifest for an SKS cluster, including its default security group and feature flags if present operationId: generate-sks-karpenter-exoscale-nodeclass /sks-cluster/{id}/nodepool: post: tags: - nodepool responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Create a new SKS Nodepool requestBody: required: true content: application/json: schema: type: object properties: anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true maxItems: 8 description: Nodepool Anti-affinity Groups description: type: string maxLength: 255 description: Nodepool description public-ip-assignment: type: string enum: - inet4 - dual description: |- Configures public IP assignment of the Instances with: * IPv4 (`inet4`) addressing only (default); * both IPv4 and IPv6 (`dual`) addressing. labels: $ref: '#/components/schemas/sks-nodepool-labels' description: Nodepool labels taints: $ref: '#/components/schemas/sks-nodepool-taints' description: Nodepool taints security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true maxItems: 16 description: Nodepool Security Groups name: type: string maxLength: 255 minLength: 1 description: Nodepool name, lowercase only instance-type: $ref: '#/components/schemas/instance-type-ref' description: Nodepool instances type private-networks: type: array items: $ref: '#/components/schemas/private-network-ref' uniqueItems: true maxItems: 16 description: Nodepool Private Networks size: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Number of instances kubelet-image-gc: $ref: '#/components/schemas/kubelet-image-gc' description: Kubelet image GC options instance-prefix: type: string maxLength: 30 minLength: 1 description: 'Prefix to apply to instances names (default: pool), lowercase only' deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Nodepool Deploy Target kubelet-max-pods: type: integer format: int64 minimum: 1 maximum: 65535 exclusiveMinimum: false exclusiveMaximum: false nullable: true description: Maximum number of pods per node (kubelet setting) addons: type: array items: type: string enum: - storage-lvm uniqueItems: true description: Nodepool addons cpu-manager-config: $ref: '#/components/schemas/cpu-manager-config' nullable: true description: CPU manager config disk-size: type: integer format: int64 minimum: 20 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Nodepool instances disk size in GiB nvidia-mig-profiles: $ref: '#/components/schemas/nvidia-mig-profiles' description: Nvidia MIG Profiles required: - name - size - disk-size - instance-type operationId: create-sks-nodepool /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 /ai/api-key: get: tags: - ai-api-key responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/list-ai-api-keys-response' description: List AI API keys for an organization parameters: [] summary: '[BETA] List AI API Keys' operationId: list-ai-api-keys post: tags: - ai-api-key responses: "403": description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/create-ai-api-key-response' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: Create a new AI API key parameters: [] summary: '[BETA] Create AI API Key' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/create-ai-api-key-request' operationId: create-ai-api-key /kms-key/{id}/re-encrypt: post: tags: - crypto responses: "200": description: Base64 encoded ciphertext content: application/json: schema: $ref: '#/components/schemas/re-encrypt-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS key is disabled. Not on Default: The request was rejected because the operation is not allowed on the default key. Invalid Usage: The request was rejected because the operation is not allowed for this key's usage. Invalid Algorithm: The request was rejected because the specified encryption algorithm does not match the key's cryptographic profile. Key Family Mismatch: The request was rejected because the source and destination keys do not belong to the same key family. Bad Request: The request was rejected because of an invalid request body or path parameter. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Decrypts an existing ciphertext using its original key material and re-encrypts the underlying plaintext using a specified KMS key or the latest key material of the same KMS Key. Source and destination keys must belong to the same key family. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Re-encrypt requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/re-encrypt-request' operationId: re-encrypt /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 /iam-system-role: get: tags: - role responses: "200": description: "200" content: application/json: schema: type: object properties: iam-system-roles: type: array items: $ref: '#/components/schemas/iam-system-role' description: "" parameters: [] summary: List IAM System Roles operationId: list-iam-system-roles /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 /ai/quota: get: tags: - ai-api-key responses: "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/org-consumption-quota-response' description: Get per-org Unit Of Measurement (UOM) consumption quota (UOM/min). Null means unlimited. UOM represents weighted units across different AI workloads (e.g., tokens for LLMs, minutes for TTS, pages for OCR). parameters: [] summary: '[BETA] Get Organization Consumption Quota' operationId: get-user-org-consumption-quota /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 pgaudit-settings: $ref: '#/components/schemas/json-schema-pgaudit' description: PGAudit settings 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 pgaudit-settings: $ref: '#/components/schemas/json-schema-pgaudit' description: PGAudit settings 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 /sks-cluster/{id}/rotate-karpenter-credentials: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Rotate Exoscale Karpenter credentials operationId: rotate-sks-karpenter-credentials /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 /kms-key/{id}/verify: post: tags: - crypto responses: "200": description: The signature is valid. content: application/json: schema: $ref: '#/components/schemas/verify-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS Key is disabled (or pending deletion). Invalid Usage: The request was rejected because the operation is only allowed on keys with usage "sign-verify". Invalid Argument: The request was rejected because `message-type`, `message`, or `signing-algorithm` is invalid. Invalid Signature: The request was rejected because `signature` is not a valid signature for `message` under this key. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Verifies a signature against the public key of a KMS key with usage `sign-verify`. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Verify requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/verify-request' operationId: verify /sos/{bucket}/presigned-url: get: tags: - sos responses: "200": description: "200" content: application/json: schema: type: object properties: url: type: string description: Generates Presigned Download URL for SOS object parameters: - in: path required: true name: bucket schema: type: string - in: query required: false name: key schema: type: string summary: Retrieve Presigned Download URL for SOS object operationId: get-sos-presigned-url /sks-cluster/{id}/rotate-operators-ca: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Rotate operators certificate authority operationId: rotate-sks-operators-ca /ai/deployment/{id}/api-key: get: tags: - deployment responses: "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/reveal-deployment-api-key-response' description: Get Deployment API Key parameters: - in: path required: true name: id schema: type: string format: uuid summary: Reveal Deployment API Key operationId: reveal-deployment-api-key /anti-affinity-group/{id}: get: tags: - anti-affinity-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/anti-affinity-group' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Retrieve Anti-affinity Group details operationId: get-anti-affinity-group delete: tags: - anti-affinity-group responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Delete an Anti-affinity Group operationId: delete-anti-affinity-group /kms-key/{id}/replicate: post: tags: - kms-key responses: "200": description: Key replication target registered content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Pending Deletion: The request was rejected because it was performed on a key that is pending deletion. Not on Default: The request was rejected because the operation is not allowed on the default key. Not Multizone: The request was rejected because the KMS key is not a multi-zone key. Conflict: The request was rejected because the key is already replicated in the target zone. Invalid Argument: The request was rejected because the target zone is invalid. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Replicate a KMS key to a target zone. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Replicate KMS Key requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/replicate-kms-key-request' operationId: replicate-kms-key /sks-cluster-version: get: tags: - cluster responses: "200": description: "200" content: application/json: schema: type: object properties: sks-cluster-versions: type: array items: type: string description: "" parameters: - in: query required: false name: include-deprecated schema: type: string summary: List available versions for SKS clusters operationId: list-sks-cluster-versions /instance: post: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create a Compute instance requestBody: required: true content: application/json: schema: type: object properties: application-consistent-snapshot-enabled: type: boolean description: Enable application-consistent snapshot for the instance anti-affinity-groups: type: array items: $ref: '#/components/schemas/anti-affinity-group-ref' uniqueItems: true description: Instance Anti-affinity Groups public-ip-assignment: $ref: '#/components/schemas/public-ip-assignment' description: Assign public IP to the Instance labels: $ref: '#/components/schemas/labels' description: Resource labels auto-start: type: boolean description: 'Start Instance on creation (default: true)' security-groups: type: array items: $ref: '#/components/schemas/security-group-ref' uniqueItems: true description: Instance Security Groups name: type: string maxLength: 255 minLength: 1 description: Instance name instance-type: $ref: '#/components/schemas/instance-type-ref' description: Instance Type template: $ref: '#/components/schemas/template-ref' description: Instance Template secureboot-enabled: type: boolean description: Enable secure boot ssh-key: $ref: '#/components/schemas/ssh-key-ref' deprecated: true description: Instance SSH Key user-data: type: string maxLength: 32768 minLength: 1 description: Instance Cloud-init user-data (base64 encoded) tpm-enabled: type: boolean description: Enable Trusted Platform Module (TPM) deploy-target: $ref: '#/components/schemas/deploy-target-ref' description: Instance Deploy Target ipv6-enabled: type: boolean description: 'Enable IPv6. DEPRECATED: use `public-ip-assignments`.' vpc: type: object properties: id: type: string format: uuid description: VPC ID subnets: type: array items: type: object properties: id: type: string format: uuid description: Subnet ID ipv4: type: string format: ipv4 description: Instance IPv4. Random one if unset required: - id description: VPC Subnet attachment description: VPC Subnets to attach the Instance to required: - id - subnets description: Attach the Instance to VPC Subnets disk-size: type: integer format: int64 minimum: 10 maximum: 51200 exclusiveMinimum: false exclusiveMaximum: false description: Instance disk size in GiB ip-forwarding: type: boolean description: VPC ip forwarding ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key-ref' uniqueItems: true description: Instance SSH Keys required: - disk-size - instance-type - template operationId: create-instance get: tags: - instance responses: "200": description: "200" content: application/json: schema: type: object properties: instances: type: array items: type: object properties: public-ip-assignment: $ref: '#/components/schemas/public-ip-assignment' description: Instance public IP assignment labels: $ref: '#/components/schemas/labels' description: Resource labels security-groups: type: array items: $ref: '#/components/schemas/security-group' description: Instance Security Groups name: type: string maxLength: 255 minLength: 1 description: Instance name instance-type: $ref: '#/components/schemas/instance-type' description: Instance Type private-networks: type: array items: type: object properties: id: type: string format: uuid description: Private Network ID mac-address: type: string description: Private Network MAC address description: Private Network description: Instance Private Networks template: $ref: '#/components/schemas/template' description: Instance Template state: $ref: '#/components/schemas/instance-state' description: Instance state ssh-key: $ref: '#/components/schemas/ssh-key' description: Instance SSH Key mac-address: type: string description: Instance MAC address manager: $ref: '#/components/schemas/manager' description: Instance manager ipv6-address: type: string description: Instance IPv6 address id: type: string format: uuid description: Instance ID ssh-keys: type: array items: $ref: '#/components/schemas/ssh-key' description: Instance SSH Keys created-at: type: string format: date-time description: Instance creation date public-ip: type: string format: ipv4 description: Instance public IPv4 address description: Instance description: "" parameters: - in: query required: false name: manager-id schema: type: string format: uuid - in: query required: false name: manager-type schema: type: string enum: - instance-pool - in: query required: false name: ip-address schema: type: string - in: query required: false name: labels schema: type: string summary: List Compute instances operationId: list-instances /iam-role: get: tags: - role responses: "200": description: "200" content: application/json: schema: type: object properties: iam-roles: type: array items: $ref: '#/components/schemas/iam-role' description: "" parameters: [] summary: List IAM Roles operationId: list-iam-roles post: tags: - role responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create IAM Role requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 191 minLength: 1 description: IAM Role name description: type: string maxLength: 255 minLength: 1 description: IAM Role description permissions: type: array items: type: string enum: - bypass-governance-retention - reset-iam-organization-policy uniqueItems: true description: IAM Role permissions editable: type: boolean description: 'Sets if the IAM Role Policy is editable or not (default: true). This setting cannot be changed after creation' labels: $ref: '#/components/schemas/labels' description: IAM Role labels policy: $ref: '#/components/schemas/iam-policy' description: IAM Role policy assume-role-policy: $ref: '#/components/schemas/iam-assume-role-policy' description: IAM Assume role policy max-session-ttl: type: integer format: int64 minimum: 0 exclusiveMinimum: true description: Maximum TTL requester is allowed to ask for when assuming a role required: - name operationId: create-iam-role /private-network/{id}/{field}: delete: tags: - private-network responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid - in: path required: true name: field schema: type: string enum: - labels summary: Reset Private Network field operationId: reset-private-network-field /user: post: tags: - user responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: null parameters: [] summary: Create a User requestBody: required: true content: application/json: schema: type: object properties: email: type: string description: User Email role: $ref: '#/components/schemas/iam-role' description: IAM Role required: - email operationId: create-user get: tags: - user responses: "200": description: "200" content: application/json: schema: type: object properties: users: type: array items: $ref: '#/components/schemas/user' description: null parameters: [] summary: List Users operationId: list-users /dbaas-clickhouse/{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 ClickHouse maintenance update operationId: start-dbaas-clickhouse-maintenance /ai/deployment/{id}/logs: get: tags: - deployment responses: "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/error-response' "404": description: Not Found content: application/json: schema: $ref: '#/components/schemas/error-response' "200": description: OK content: application/json: schema: $ref: '#/components/schemas/get-deployment-logs-response' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' description: Return logs for the vLLM deployment (deploy/--deployment-vllm). Optional ?stream=true to request streaming (may not be supported). parameters: - in: path required: true name: id schema: type: string format: uuid - in: query required: false name: stream schema: type: boolean - in: query required: false name: tail schema: type: integer format: int64 summary: Get Deployment Logs operationId: get-deployment-logs /sks-cluster/{id}/upgrade: put: tags: - cluster responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: Upgrade an SKS cluster requestBody: required: true content: application/json: schema: type: object properties: version: type: string description: Control plane Kubernetes version required: - version operationId: upgrade-sks-cluster /kms-key/{id}/cancel-deletion: post: tags: - kms-key responses: "200": description: Key deletion cancelled content: application/json: schema: $ref: '#/components/schemas/success-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Not on Replica: The request was rejected because the operation is not allowed on a replica. Not Pending Deletion: The request was rejected because the key is not pending deletion. content: application/json: schema: $ref: '#/components/schemas/error-response' description: Cancels the scheduled deletion of a KMS Key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Cancel KMS Key Deletion operationId: cancel-kms-key-deletion /kms-key/{id}/generate-data-key: post: tags: - crypto responses: "200": description: Data Encryption Key in the clear and in its base64 encoded encrypted format. content: application/json: schema: $ref: '#/components/schemas/generate-data-key-response' "400": description: | Errors Key Not Found: The request was rejected because the specified KMS Key could not be found. Key is Disabled: The request was rejected because the specified KMS key is disabled. Invalid Usage: The request was rejected because the operation is only allowed on symmetric keys with usage "encrypt-decrypt". content: application/json: schema: $ref: '#/components/schemas/error-response' description: Generate a Data Encryption Key from a given KMS Key. parameters: - in: path required: true name: id schema: type: string format: uuid summary: Generate Data Encryption Key requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/generate-data-key-request' operationId: generate-data-key /vpc/{id}: put: tags: - vpc-management responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/vpc' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Update a VPC' requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 minLength: 1 nullable: true description: VPC name description: type: string maxLength: 4096 nullable: true description: VPC description labels: $ref: '#/components/schemas/labels' nullable: true description: Resource labels dhcp-options: $ref: '#/components/schemas/vpc-dhcp-options' description: DHCP options (only allowed if VPC has no instances attached) operationId: update-vpc get: tags: - vpc-management responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/vpc' description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Retrieve VPC details' operationId: get-vpc delete: tags: - vpc-management responses: "204": description: "204" description: "" parameters: - in: path required: true name: id schema: type: string format: uuid summary: '[BETA] Delete a VPC' operationId: delete-vpc /block-storage: get: tags: - block-storage responses: "200": description: "200" content: application/json: schema: type: object properties: block-storage-volumes: type: array items: $ref: '#/components/schemas/block-storage-volume' description: "" parameters: - in: query required: false name: instance-id schema: type: string format: uuid summary: List block storage volumes operationId: list-block-storage-volumes post: tags: - block-storage responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: "" parameters: [] summary: Create a block storage volume requestBody: required: true content: application/json: schema: type: object properties: name: type: string maxLength: 255 description: Volume name size: type: integer format: int64 minimum: 1 exclusiveMinimum: false description: |- Volume size in GiB. When a snapshot ID is supplied, this defaults to the size of the source volume, but can be set to a larger value. labels: $ref: '#/components/schemas/labels' description: Resource labels block-storage-snapshot: $ref: '#/components/schemas/block-storage-snapshot-ref' description: Block storage snapshot operationId: create-block-storage-volume /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 /instance/{instance-id}:revert-snapshot: post: tags: - instance responses: "200": description: "200" content: application/json: schema: $ref: '#/components/schemas/operation' description: |- This operation reverts the snapshot to the Compute instance volume, restoring stored data as it was at the time of the snapshot. The Compute instance must be previously stopped. parameters: - in: path required: true name: instance-id schema: type: string format: uuid summary: Revert a snapshot for an instance requestBody: required: true content: application/json: schema: type: object properties: id: type: string format: uuid description: Snapshot ID required: - id operationId: revert-instance-to-snapshot /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 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.