Skip to content

DBaaS Management

Operational management for DBaaS services: logs, metrics, service types and lifecycle.

Read more

create-dbaas-integration

POST /dbaas-integration

[BETA] Create a new DBaaS integration between two services

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
dest-servicestringyesA destination service

Min length: 0. Max length: 63.
integration-typestringyesIntegration type

Allowed values: datasource, logs, metrics.
source-servicestringyesA source service

Min length: 0. Max length: 63.
settingsobjectnoIntegration settings
Example
{
  "dest-service": "string",
  "integration-type": "datasource",
  "settings": {},
  "source-service": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-integration: golang | Python | Java

CLI: exo api create-dbaas-integration

get-dbaas-integration

GET /dbaas-integration/{id}

[BETA] Get a DBaaS Integration

Path parameters

NameInDescription
idpathMust be a valid UUID.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
descriptionstringDescription of the integration
deststringDestination service name
idstringIntegration id

Must be a valid UUID.
is-activebooleanWhether the integration is active or not
is-enabledbooleanWhether the integration is enabled or not
settingsobjectIntegration settings
sourcestringSource service name
statusstringIntegration status
typestringIntegration type
Example output
{
  "description": "string",
  "dest": "string",
  "id": "string",
  "is-active": true,
  "is-enabled": true,
  "settings": {},
  "source": "string",
  "status": "string",
  "type": "string"
}

SDK reference for get-dbaas-integration: golang | Python | Java

CLI: exo api get-dbaas-integration

update-dbaas-integration

PUT /dbaas-integration/{id}

[BETA] Update a existing DBaaS integration

Path parameters

NameInDescription
idpathMust be a valid UUID.

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
settingsobjectyesIntegration settings
Example
{
  "settings": {}
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for update-dbaas-integration: golang | Python | Java

CLI: exo api update-dbaas-integration

delete-dbaas-integration

DELETE /dbaas-integration/{id}

[BETA] Delete a DBaaS Integration

Path parameters

NameInDescription
idpathMust be a valid UUID.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-integration: golang | Python | Java

CLI: exo api delete-dbaas-integration


Other Operations

get-dbaas-ca-certificate

Get DBaaS CA Certificate

GET /dbaas-ca-certificate

Returns a CA Certificate required to reach a DBaaS service through a TLS-protected connection.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
certificatestring
Example output
{
  "certificate": "string"
}

SDK reference for get-dbaas-ca-certificate: golang | Python | Java

CLI: exo api get-dbaas-ca-certificate

get-dbaas-external-integration

GET /dbaas-external-integration/{integration-id}

[BETA] Get a DBaaS external integration

Path parameters

NameInDescription
integration-idpathMust be a valid UUID.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
descriptionstringDescription of the integration
dest-endpoint-idstringExternal destination endpoint id
dest-endpoint-namestringExternal destination endpoint name
integration-idstringEndpoint integration UUID

Must be a valid UUID.
source-service-namestringDBaaS source service name
source-service-typestringDBaaS service type

Min length: 0. Max length: 64.
statusstringIntegration status
typestringIntegration Type

Allowed values: prometheus, opensearch, rsyslog, datadog, elasticsearch.
Example output
{
  "description": "string",
  "dest-endpoint-id": "string",
  "dest-endpoint-name": "string",
  "integration-id": "string",
  "source-service-name": "string",
  "source-service-type": "string",
  "status": "string",
  "type": "prometheus"
}

SDK reference for get-dbaas-external-integration: golang | Python | Java

CLI: exo api get-dbaas-external-integration

list-dbaas-external-integrations

GET /dbaas-external-integrations/{service-name}

[BETA] List all DBaaS connections between services and external endpoints

Path parameters

NameInDescription
service-namepathMin length: 0. Max length: 63.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
external-integrationsarray of Integrations with other services
Example output
{
  "external-integrations": [
    {
      "description": "string",
      "dest-endpoint-id": "string",
      "dest-endpoint-name": "string",
      "integration-id": "string",
      "source-service-name": "string",
      "source-service-type": "string",
      "status": "string",
      "type": "prometheus"
    }
  ]
}

SDK reference for list-dbaas-external-integrations: golang | Python | Java

CLI: exo api list-dbaas-external-integrations

list-dbaas-integration-settings

GET /dbaas-integration-settings/{integration-type}/{source-type}/{dest-type}

[BETA] Get DBaaS integration settings

Path parameters

NameInDescription
integration-typepath
source-typepath
dest-typepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
settingsSettingsThe JSON schema representing the settings for the given integration type, source, and destination service types.
Example output
{
  "settings": {
    "additionalProperties": true,
    "properties": {},
    "title": "string",
    "type": "string"
  }
}

Settings

The JSON schema representing the settings for the given integration type, source, and destination service types.

PropertyTypeRequiredDescription
additionalPropertiesbooleanno
propertiesobjectno
titlestringno
typestringno

SDK reference for list-dbaas-integration-settings: golang | Python | Java

CLI: exo api list-dbaas-integration-settings

list-dbaas-integration-types

GET /dbaas-integration-types

[BETA] Get DBaaS integration types

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
dbaas-integration-typesarray of DBaaS Integration Type
Example output
{
  "dbaas-integration-types": [
    {
      "dest-description": "string",
      "dest-service-types": [
        "string"
      ],
      "settings": {
        "additionalProperties": true,
        "properties": {},
        "title": "string",
        "type": "string"
      },
      "source-description": "string",
      "source-service-types": [
        "string"
      ],
      "type": "string"
    }
  ]
}

SDK reference for list-dbaas-integration-types: golang | Python | Java

CLI: exo api list-dbaas-integration-types

get-dbaas-migration-status

Get a DBaaS migration status

GET /dbaas-migration-status/{name}

Get a DBaaS migration status

Path parameters

NameInDescription
namepathMin length: 0. Max length: 63.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
detailsarray of DetailsMigration status per database
errorstringError message in case that migration has failed
methodstringMigration method. Empty in case of multiple methods or error
statusstringMigration status
Example output
{
  "details": [
    {
      "dbname": "string",
      "error": "string",
      "method": "string",
      "status": "running"
    }
  ],
  "error": "string",
  "method": "string",
  "status": "string"
}

SDK reference for get-dbaas-migration-status: golang | Python | Java

CLI: exo api get-dbaas-migration-status

delete-dbaas-service

Delete a DBaaS service

DELETE /dbaas-service/{name}

Delete a DBaaS service

Path parameters

NameInDescription
namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for delete-dbaas-service: golang | Python | Java

CLI: exo api delete-dbaas-service

detach-dbaas-service-from-endpoint

PUT /dbaas-external-endpoint/{source-service-name}/detach

[BETA] Detach a DBaaS external integration from a service

Path parameters

NameInDescription
source-service-namepathMin length: 0. Max length: 63.

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
integration-idstringyesExternal Integration ID

Must be a valid UUID.
Example
{
  "integration-id": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for detach-dbaas-service-from-endpoint: golang | Python | Java

CLI: exo api detach-dbaas-service-from-endpoint

get-dbaas-service-logs

Get logs of DBaaS service

POST /dbaas-service-logs/{service-name}

Get logs of DBaaS service

Path parameters

NameInDescription
service-namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
limitintegernoHow many log entries to receive at most, up to 500 (default: 100)

Min: 1. Max: 500.
offsetstringnoOpaque offset identifier
sort-orderstringnoSort order for log messages (default: desc)

Allowed values: desc, asc.
Example
{
  "limit": 0,
  "offset": "string",
  "sort-order": "desc"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
first-log-offsetstring
logsarray of Logs
offsetstring
Example output
{
  "first-log-offset": "string",
  "logs": [
    {
      "message": "string",
      "node": "string",
      "time": "string",
      "unit": "string"
    }
  ],
  "offset": "string"
}

SDK reference for get-dbaas-service-logs: golang | Python | Java

CLI: exo api get-dbaas-service-logs

get-dbaas-service-metrics

Get metrics of DBaaS service

POST /dbaas-service-metrics/{service-name}

Get metrics of DBaaS service

Path parameters

NameInDescription
service-namepath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
periodstringnoMetrics time period (default: hour)

Allowed values: hour, week, year, month, day.
Example
{
  "period": "hour"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
metricsobject
Example output
{
  "metrics": {}
}

SDK reference for get-dbaas-service-metrics: golang | Python | Java

CLI: exo api get-dbaas-service-metrics

attach-dbaas-service-to-endpoint

PUT /dbaas-external-endpoint/{source-service-name}/attach

[BETA] Create a new DBaaS connection between a DBaaS service and an external service

Path parameters

NameInDescription
source-service-namepathMin length: 0. Max length: 63.

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
dest-endpoint-idstringyesExternal endpoint id

Must be a valid UUID.
typestringyesExternal endpoint type

Allowed values: prometheus, opensearch, rsyslog, datadog, elasticsearch.
Example
{
  "dest-endpoint-id": "string",
  "type": "prometheus"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for attach-dbaas-service-to-endpoint: golang | Python | Java

CLI: exo api attach-dbaas-service-to-endpoint

get-dbaas-service-type

Get a DBaaS service type

GET /dbaas-service-type/{service-type-name}

Get a DBaaS service type

Path parameters

NameInDescription
service-type-namepath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
available-versionsarray[string]DbaaS service available versions
default-versionstringDbaaS service default version
descriptionstringDbaaS service description
namestringDbaaS service name

Min length: 0. Max length: 64.
plansarray of DBaaS planDbaaS service plans
Example output
{
  "available-versions": [
    "string"
  ],
  "default-version": "string",
  "description": "string",
  "name": "string",
  "plans": [
    {
      "authorized": true,
      "backup-config": {
        "frequent-interval-minutes": 0,
        "frequent-oldest-age-minutes": 0,
        "infrequent-interval-minutes": 0,
        "infrequent-oldest-age-minutes": 0,
        "interval": 0,
        "max-count": 0,
        "recovery-mode": "string"
      },
      "disk-space": 0,
      "family": "string",
      "max-memory-percent": 0,
      "name": "string",
      "node-count": 0,
      "node-cpu-count": 0,
      "node-memory": 0,
      "zones": [
        "string"
      ]
    }
  ]
}

SDK reference for get-dbaas-service-type: golang | Python | Java

CLI: exo api get-dbaas-service-type

list-dbaas-service-types

DBaaS Service Types

GET /dbaas-service-type

List available service types for DBaaS

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
dbaas-service-typesarray of DBaaS service
Example output
{
  "dbaas-service-types": [
    {
      "available-versions": [
        "string"
      ],
      "default-version": "string",
      "description": "string",
      "name": "string",
      "plans": [
        {
          "authorized": true,
          "backup-config": {
            "frequent-interval-minutes": null,
            "frequent-oldest-age-minutes": null,
            "infrequent-interval-minutes": null,
            "infrequent-oldest-age-minutes": null,
            "interval": null,
            "max-count": null,
            "recovery-mode": null
          },
          "disk-space": 0,
          "family": "string",
          "max-memory-percent": 0,
          "name": "string",
          "node-count": 0,
          "node-cpu-count": 0,
          "node-memory": 0,
          "zones": [
            null
          ]
        }
      ]
    }
  ]
}

SDK reference for list-dbaas-service-types: golang | Python | Java

CLI: exo api list-dbaas-service-types

list-dbaas-services

List DBaaS services

GET /dbaas-service

List DBaaS services

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
dbaas-servicesarray of DBaaS Service Common
Example output
{
  "dbaas-services": [
    {
      "created-at": "2024-01-01T12:00:00Z",
      "disk-size": 0,
      "integrations": [
        {
          "description": "string",
          "dest": "string",
          "id": "string",
          "is-active": true,
          "is-enabled": true,
          "settings": {},
          "source": "string",
          "status": "string",
          "type": "string"
        }
      ],
      "name": "string",
      "node-count": 0,
      "node-cpu-count": 0,
      "node-memory": 0,
      "notifications": [
        {
          "level": "warning",
          "message": "string",
          "metadata": {},
          "type": "service_powered_off_removal"
        }
      ],
      "plan": "string",
      "state": "running",
      "termination-protection": true,
      "type": "string",
      "updated-at": "2024-01-01T12:00:00Z",
      "zone": "string"
    }
  ]
}

SDK reference for list-dbaas-services: golang | Python | Java

CLI: exo api list-dbaas-services

get-dbaas-task

Get a DBaaS task

GET /dbaas-task/{service}/{id}

Get a DBaaS task

Path parameters

NameInDescription
servicepathMin length: 0. Max length: 63.
idpathMust be a valid UUID.

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
create-timestringISO 8601 date-time.
idstringMust be a valid UUID.
resultstring
result-codesarray of Result Codes
successboolean
task-typestring
Example output
{
  "create-time": "2024-01-01T12:00:00Z",
  "id": "string",
  "result": "string",
  "result-codes": [
    {
      "code": "string",
      "dbname": "string"
    }
  ],
  "success": true,
  "task-type": "string"
}

SDK reference for get-dbaas-task: golang | Python | Java

CLI: exo api get-dbaas-task

create-dbaas-task-migration-check

POST /dbaas-task-migration-check/{service}

Create a DBaaS task to check migration

Path parameters

NameInDescription
servicepathMin length: 0. Max length: 63.

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
source-service-uristringyesService URI of the source MySQL or PostgreSQL database with admin credentials.

Min length: 1. Max length: 512.
ignore-dbsstringnoComma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment)

Min length: 1. Max length: 2048.
methodstringnoThe migration method to be used (currently supported only by MySQL service type)

Allowed values: dump, replication.
Example
{
  "ignore-dbs": "string",
  "method": "dump",
  "source-service-uri": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID

Must be a valid UUID.
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceReferenceRelated resource reference
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-dbaas-task-migration-check: golang | Python | Java

CLI: exo api create-dbaas-task-migration-check

Last updated on