IONOS DBaaS MariaDB REST API (0.1.0)

Download OpenAPI specification:Download

An enterprise-grade Database is provided as a Service (DBaaS) solution that can be managed through a browser-based "Data Center Designer" (DCD) tool or via an easy to use API.

The API allows you to create additional MariaDB database clusters or modify existing ones. It is designed to allow users to leverage the same power and flexibility found within the DCD visual tool. Both tools are consistent with their concepts and lend well to making the experience smooth and intuitive.

Clusters

Everything about MariaDB clusters.

List clusters

Retrieves a list of MariaDB clusters.

Authorizations:
tokenAuth
query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with 'offset' for pagination.

offset
integer
Default: 0
Example: offset=200

The first element to return. Use together with 'limit' for pagination.

filter.name
string

Response filter to list only the MariaDB clusters that contain the specified name. The value is case insensitive and matched on the 'displayName' field.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "items": [
    ],
  • "offset": 200,
  • "limit": 100,
  • "total": 200,
  • "_links": {
    }
}

Create a cluster

Creates a new MariaDB cluster.

Authorizations:
tokenAuth
Request Body schema: application/json

The cluster to be created.

object (CreateClusterProperties)

Properties with all data needed to create a new MariaDB cluster.

Responses

Request samples

Content type
application/json
{
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "metadata": {
    },
  • "properties": {
    }
}

Fetch a cluster

You can retrieve a MariaDB cluster by using its ID. This value can be found in the response body when a MariaDB cluster is created or when you GET a list of MariaDB clusters.

Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "metadata": {
    },
  • "properties": {
    }
}

Update a cluster

Updates mutable attributes on a MariaDB cluster.

Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

Request Body schema: application/json

Attributes of the cluster which should be modified.

object (ClusterMetadata)

Metadata of the resource.

object (PatchClusterProperties)

Properties of the payload to change a cluster:

  • instances can only be increased (3, 5, 7),
  • storageSize can only be increased,
  • ram and cores can be both increased and decreased.

Responses

Request samples

Content type
application/json
{
  • "metadata": {
    },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "metadata": {
    },
  • "properties": {
    }
}

Delete a cluster

Delete a MariaDB cluster.

Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "metadata": {
    },
  • "properties": {
    }
}

In-place restore of a cluster.

Restore a MariaDB cluster from a backup.

Conditions:

  • The backup must belong to the MariaDB cluster to be restored.
  • The cluster must be in the state "AVAILABLE".
Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

Request Body schema: application/json

The backup to restore from.

backupId
required
string (ResourceID)

The unique ID of the resource.

recoveryTargetTime
string <date-time>

The timestamp to which the cluster should be restored. If empty, the backup will be applied to the latest timestamp.

This value must be supplied as ISO 8601 timestamp, the backup will be replayed up until the given timestamp. If empty, the backup will be applied completely.

Must be within the earliestRecoveryTargetTime and now.

The earliestRecoveryTargetTime can be looked up in the backup object.

Responses

Request samples

Content type
application/json
{
  • "backupId": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "recoveryTargetTime": "2020-12-10T13:37:50+01:00"
}

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}

Backups

Everything about backups of MariaDB clusters.

List backups of cluster

Retrieves a list of all backups of the given MariaDB cluster.

Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with 'offset' for pagination.

offset
integer
Default: 0
Example: offset=200

The first element to return. Use together with 'limit' for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "items": [
    ],
  • "offset": 200,
  • "limit": 100,
  • "total": 200,
  • "_links": {
    }
}

List of backups.

Retrieves all lists of backups for all MariaDB clusters in this contract.

Authorizations:
tokenAuth
query Parameters
limit
integer [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with 'offset' for pagination.

offset
integer
Default: 0
Example: offset=200

The first element to return. Use together with 'limit' for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "items": [
    ],
  • "offset": 200,
  • "limit": 100,
  • "total": 200,
  • "_links": {
    }
}

Fetch backups

Retrieve a MariaDB backup by ID. This value can be found when you GET the list of MariaDB backups.

Authorizations:
tokenAuth
path Parameters
backupId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the backup.

Responses

Response samples

Content type
application/json
{
  • "id": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "properties": {
    }
}

Restore

Everything about restoring MariaDB clusters from a backup.

In-place restore of a cluster.

Restore a MariaDB cluster from a backup.

Conditions:

  • The backup must belong to the MariaDB cluster to be restored.
  • The cluster must be in the state "AVAILABLE".
Authorizations:
tokenAuth
path Parameters
clusterId
required
string
Example: 498ae72f-411f-11eb-9d07-046c59cc737e

The unique ID of the cluster.

Request Body schema: application/json

The backup to restore from.

backupId
required
string (ResourceID)

The unique ID of the resource.

recoveryTargetTime
string <date-time>

The timestamp to which the cluster should be restored. If empty, the backup will be applied to the latest timestamp.

This value must be supplied as ISO 8601 timestamp, the backup will be replayed up until the given timestamp. If empty, the backup will be applied completely.

Must be within the earliestRecoveryTargetTime and now.

The earliestRecoveryTargetTime can be looked up in the backup object.

Responses

Request samples

Content type
application/json
{
  • "backupId": "498ae72f-411f-11eb-9d07-046c59cc737e",
  • "recoveryTargetTime": "2020-12-10T13:37:50+01:00"
}

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}