# DBaaS Valkey


<style>
  span[class^="pill-"] {
    color: white;
    padding: 2px 12px;
    border-radius: 12px;
    font-size: 0.6em;
    vertical-align: middle;
    margin-right: 12px;
    font-family: sans-serif;
    font-weight: bold;
    display: inline-block;
    line-height: 1;
  }
  span.pill-GET { background-color: #61affe; }
  span.pill-POST { background-color: #49cc90; }
  span.pill-PUT { background-color: #fca130; }
  span.pill-DELETE { background-color: #f93e3e; }
  span.pill-PATCH { background-color: #50e3c2; }
  span[class^="pill-"]:after {
    content: attr(data-label);
    font-size: 0.9rem;
  }
</style>

Valkey, the open-source key-value store with a Redis®-compatible interface.

[Read more](https://community.exoscale.com/product/dbaas/service-specific/valkey/)

## <span data-label="POST" class="pill-POST"></span>create-dbaas-service-valkey

Create a DBaaS Valkey service

```
POST /dbaas-valkey/{name}
```

Create a DBaaS Valkey service

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` | Min length: `0`. Max length: `63`. |

### Request body

Content-Type: `application/json`

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `plan` | string | **yes** | Subscription plan<br/><br/>Min length: `1`. Max length: `128`. |
| `fork-from-service` | string | no | Service to fork from<br/><br/>Min length: `0`. Max length: `63`. |
| `ip-filter` | array[string] | no | Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' |
| `maintenance` | [Maintenance](#maintenance) | no | Automatic maintenance settings |
| `migration` | [Migration](#migration) | no | Migrate data from existing server |
| `recovery-backup-name` | string | no | Name of a backup to recover from for services that support backup names<br/><br/>Min length: `1`. |
| `termination-protection` | boolean | no | Service is protected against termination and powering off |
| `valkey-settings` | [Valkey settings](/reference/api/_schemas/json-schema-valkey/) | no | Valkey.conf settings |
| `version` | string | no | Valkey major version<br/><br/>Min length: `1`. |

<details>
<summary>Example</summary>

```json
{
  "fork-from-service": "string",
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "migration": {
    "dbname": "string",
    "host": "string",
    "ignore-dbs": "string",
    "method": "dump",
    "password": "string",
    "port": 0,
    "ssl": true,
    "username": "string"
  },
  "plan": "string",
  "recovery-backup-name": "string",
  "termination-protection": true,
  "valkey-settings": {
    "acl_channels_default": "allchannels",
    "active_expire_effort": 0,
    "frequent_snapshots": true,
    "io_threads": 0,
    "lfu_decay_time": 0,
    "lfu_log_factor": 0,
    "maxmemory_policy": "noeviction",
    "notify_keyspace_events": "",
    "number_of_databases": 0,
    "persistence": "off",
    "pubsub_client_output_buffer_limit": 0,
    "ssl": true,
    "timeout": 0
  },
  "version": "string"
}
```
</details>


### Maintenance {#maintenance}

Automatic maintenance settings

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `dow` | string | **yes** | Day of week for installing updates<br/><br/>Allowed values: `saturday`, `tuesday`, `never`, `wednesday`, `sunday`, `friday`, `monday`, `thursday`. |
| `time` | string | **yes** | Time for installing updates, UTC<br/><br/>Min length: `8`. Max length: `8`. |

### Migration {#migration}

Migrate data from existing server

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `host` | string | **yes** | Hostname or IP address of the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |
| `port` | integer | **yes** | Port number of the server where to migrate data from<br/><br/>Min: `1`. Max: `65535`. |
| `dbname` | string | no | Database name for bootstrapping the initial connection<br/><br/>Min length: `1`. Max length: `63`. |
| `ignore-dbs` | string | no | Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment)<br/><br/>Min length: `1`. Max length: `2048`. |
| `method` | string | no | The migration method to be used<br/><br/>Allowed values: `dump`, `replication`. |
| `password` | string | no | Password for authentication with the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |
| `ssl` | boolean | no | The server where to migrate data from is secured with SSL |
| `username` | string | no | User name for authentication with the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `create-dbaas-service-valkey`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.CreateDBAASServiceValkey) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.create_dbaas_service_valkey) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#createDbaasServiceValkey(java.lang.String,com.exoscale.sdk.model.CreateDbaasServiceValkeyRequest))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api create-dbaas-service-valkey`

## <span data-label="GET" class="pill-GET"></span>get-dbaas-service-valkey

```
GET /dbaas-valkey/{name}
```

Get a DBaaS Valkey service

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` | Min length: `0`. Max length: `63`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `backups` | array of [List of backups for the service](/reference/api/_schemas/dbaas-service-backup/) | List of backups for the service |
| `components` | array of [Components](/reference/api/_schemas/dbaas-service-valkey/#components) | Service component information objects |
| `connection-info` | [Connection Info](/reference/api/_schemas/dbaas-service-valkey/#connection-info) | Valkey connection information properties |
| `created-at` | string | Service creation timestamp (ISO 8601)<br/><br/>ISO 8601 date-time. |
| `disk-size` | integer | TODO UNIT disk space for data storage<br/><br/>Min: `0`. |
| `integrations` | array of [DBaaS Integration](/reference/api/_schemas/dbaas-integration/) | Service integrations |
| `ip-filter` | array[string] | Allowed CIDR address blocks for incoming connections |
| `maintenance` | [Automatic maintenance settings](/reference/api/_schemas/dbaas-service-maintenance/) | Automatic maintenance settings |
| `name` | string | Service name<br/><br/>Min length: `0`. Max length: `63`. |
| `node-count` | integer | Number of service nodes in the active plan<br/><br/>Min: `0`. |
| `node-cpu-count` | integer | Number of CPUs for each node<br/><br/>Min: `0`. |
| `node-memory` | integer | TODO UNIT of memory for each node<br/><br/>Min: `0`. |
| `node-states` | array of [Automatic maintenance settings](/reference/api/_schemas/dbaas-node-state/) | State of individual service nodes |
| `notifications` | array of [Service notifications](/reference/api/_schemas/dbaas-service-notification/) | Service notifications |
| `plan` | string | Subscription plan |
| `prometheus-uri` | [Prometheus URI](/reference/api/_schemas/dbaas-service-valkey/#prometheus-uri) | Prometheus integration URI |
| `state` | string | State of the service<br/><br/>Allowed values: `running`, `rebuilding`, `rebalancing`, `poweroff`. |
| `termination-protection` | boolean | Service is protected against termination and powering off |
| `type` | string | Service type code<br/><br/>Min length: `0`. Max length: `64`. |
| `updated-at` | string | Service last update timestamp (ISO 8601)<br/><br/>ISO 8601 date-time. |
| `uri` | string | URI for connecting to the service (may be absent) |
| `uri-params` | object | service_uri parameterized into key-value pairs |
| `users` | array of [Users](/reference/api/_schemas/dbaas-service-valkey/#users) | List of service users |
| `valkey-settings` | [Valkey settings](/reference/api/_schemas/json-schema-valkey/) | Valkey-specific settings |
| `version` | string | Valkey version |
| `zone` | string | The zone where the service is running |

<details>
<summary>Example output</summary>

```json
{
  "backups": [
    {
      "backup-name": "string",
      "backup-time": "2024-01-01T12:00:00Z",
      "data-size": 0
    }
  ],
  "components": [
    {
      "component": "string",
      "host": "string",
      "port": 0,
      "route": "dynamic",
      "ssl": true,
      "usage": "primary"
    }
  ],
  "connection-info": {
    "password": "string",
    "slave": [
      "string"
    ],
    "uri": [
      "string"
    ]
  },
  "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"
    }
  ],
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string",
    "updates": [
      {
        "deadline": "2024-01-01T12:00:00Z",
        "description": "string",
        "start-after": "2024-01-01T12:00:00Z",
        "start-at": "2024-01-01T12:00:00Z"
      }
    ]
  },
  "name": "string",
  "node-count": 0,
  "node-cpu-count": 0,
  "node-memory": 0,
  "node-states": [
    {
      "name": "string",
      "progress-updates": [
        {
          "completed": true,
          "current": 0,
          "max": 0,
          "min": 0,
          "phase": "stream",
          "unit": "string"
        }
      ],
      "role": "standby",
      "state": "leaving"
    }
  ],
  "notifications": [
    {
      "level": "warning",
      "message": "string",
      "metadata": {},
      "type": "service_powered_off_removal"
    }
  ],
  "plan": "string",
  "prometheus-uri": {
    "host": "string",
    "port": 0
  },
  "state": "running",
  "termination-protection": true,
  "type": "string",
  "updated-at": "2024-01-01T12:00:00Z",
  "uri": "string",
  "uri-params": {},
  "users": [
    {
      "access-control": {
        "categories": [
          "string"
        ],
        "channels": [
          "string"
        ],
        "commands": [
          "string"
        ],
        "keys": [
          "string"
        ]
      },
      "password": "string",
      "type": "string",
      "username": "string"
    }
  ],
  "valkey-settings": {
    "acl_channels_default": "allchannels",
    "active_expire_effort": 0,
    "frequent_snapshots": true,
    "io_threads": 0,
    "lfu_decay_time": 0,
    "lfu_log_factor": 0,
    "maxmemory_policy": "noeviction",
    "notify_keyspace_events": "",
    "number_of_databases": 0,
    "persistence": "off",
    "pubsub_client_output_buffer_limit": 0,
    "ssl": true,
    "timeout": 0
  },
  "version": "string",
  "zone": "string"
}
```
</details>


SDK reference for `get-dbaas-service-valkey`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.GetDBAASServiceValkey) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.get_dbaas_service_valkey) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#getDbaasServiceValkey(java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api get-dbaas-service-valkey`

## <span data-label="PUT" class="pill-PUT"></span>update-dbaas-service-valkey

```
PUT /dbaas-valkey/{name}
```

Update a DBaaS Valkey service

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` | Min length: `0`. Max length: `63`. |

### Request body

Content-Type: `application/json`

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `ip-filter` | array[string] | no | Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16' |
| `maintenance` | [Maintenance](#maintenance) | no | Automatic maintenance settings |
| `migration` | [Migration](#migration) | no | Migrate data from existing server |
| `plan` | string | no | Subscription plan<br/><br/>Min length: `1`. Max length: `128`. |
| `termination-protection` | boolean | no | Service is protected against termination and powering off |
| `valkey-settings` | [Valkey settings](/reference/api/_schemas/json-schema-valkey/) | no | Valkey.conf settings |
| `version` | string | no | Valkey major version<br/><br/>Min length: `1`. |

<details>
<summary>Example</summary>

```json
{
  "ip-filter": [
    "string"
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "migration": {
    "dbname": "string",
    "host": "string",
    "ignore-dbs": "string",
    "method": "dump",
    "password": "string",
    "port": 0,
    "ssl": true,
    "username": "string"
  },
  "plan": "string",
  "termination-protection": true,
  "valkey-settings": {
    "acl_channels_default": "allchannels",
    "active_expire_effort": 0,
    "frequent_snapshots": true,
    "io_threads": 0,
    "lfu_decay_time": 0,
    "lfu_log_factor": 0,
    "maxmemory_policy": "noeviction",
    "notify_keyspace_events": "",
    "number_of_databases": 0,
    "persistence": "off",
    "pubsub_client_output_buffer_limit": 0,
    "ssl": true,
    "timeout": 0
  },
  "version": "string"
}
```
</details>


### Maintenance {#maintenance}

Automatic maintenance settings

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `dow` | string | **yes** | Day of week for installing updates<br/><br/>Allowed values: `saturday`, `tuesday`, `never`, `wednesday`, `sunday`, `friday`, `monday`, `thursday`. |
| `time` | string | **yes** | Time for installing updates, UTC<br/><br/>Min length: `8`. Max length: `8`. |

### Migration {#migration}

Migrate data from existing server

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `host` | string | **yes** | Hostname or IP address of the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |
| `port` | integer | **yes** | Port number of the server where to migrate data from<br/><br/>Min: `1`. Max: `65535`. |
| `dbname` | string | no | Database name for bootstrapping the initial connection<br/><br/>Min length: `1`. Max length: `63`. |
| `ignore-dbs` | string | no | Comma-separated list of databases, which should be ignored during migration (supported by MySQL only at the moment)<br/><br/>Min length: `1`. Max length: `2048`. |
| `method` | string | no | The migration method to be used<br/><br/>Allowed values: `dump`, `replication`. |
| `password` | string | no | Password for authentication with the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |
| `ssl` | boolean | no | The server where to migrate data from is secured with SSL |
| `username` | string | no | User name for authentication with the server where to migrate data from<br/><br/>Min length: `1`. Max length: `255`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `update-dbaas-service-valkey`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.UpdateDBAASServiceValkey) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.update_dbaas_service_valkey) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#updateDbaasServiceValkey(java.lang.String,com.exoscale.sdk.model.UpdateDbaasServiceValkeyRequest))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api update-dbaas-service-valkey`

## <span data-label="DELETE" class="pill-DELETE"></span>delete-dbaas-service-valkey

Delete a Valkey service

```
DELETE /dbaas-valkey/{name}
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` |  |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `delete-dbaas-service-valkey`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.DeleteDBAASServiceValkey) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.delete_dbaas_service_valkey) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#deleteDbaasServiceValkey(java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api delete-dbaas-service-valkey`

## <span data-label="POST" class="pill-POST"></span>create-dbaas-valkey-user

Create a DBaaS Valkey user

```
POST /dbaas-valkey/{service-name}/user
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |

### Request body

Content-Type: `application/json`

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `username` | string | **yes** | Username<br/><br/>Min length: `1`. Max length: `64`. |
| `access-control` | [DBaaS Valkey User Access Control](/reference/api/_schemas/dbaas-valkey-user-access-control/) | no |  |

<details>
<summary>Example</summary>

```json
{
  "access-control": {
    "categories": [
      "string"
    ],
    "channels": [
      "string"
    ],
    "commands": [
      "string"
    ],
    "keys": [
      "string"
    ]
  },
  "username": "string"
}
```
</details>


### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `create-dbaas-valkey-user`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.CreateDBAASValkeyUser) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.create_dbaas_valkey_user) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#createDbaasValkeyUser(java.lang.String,com.exoscale.sdk.model.CreateDbaasValkeyUserRequest))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api create-dbaas-valkey-user`

## <span data-label="DELETE" class="pill-DELETE"></span>delete-dbaas-valkey-user

Delete a DBaaS Valkey user

```
DELETE /dbaas-valkey/{service-name}/user/{username}
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |
| `username` | `path` | Min length: `1`. Max length: `64`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `delete-dbaas-valkey-user`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.DeleteDBAASValkeyUser) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.delete_dbaas_valkey_user) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#deleteDbaasValkeyUser(java.lang.String,java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api delete-dbaas-valkey-user`

## <span data-label="GET" class="pill-GET"></span>reveal-dbaas-valkey-user-password

Reveal the secrets of a DBaaS Valkey user

```
GET /dbaas-valkey/{service-name}/user/{username}/password/reveal
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |
| `username` | `path` | Min length: `1`. Max length: `64`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `password` | string | Valkey password |
| `username` | string | Valkey username |

<details>
<summary>Example output</summary>

```json
{
  "password": "string",
  "username": "string"
}
```
</details>


SDK reference for `reveal-dbaas-valkey-user-password`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.RevealDBAASValkeyUserPassword) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.reveal_dbaas_valkey_user_password) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#revealDbaasValkeyUserPassword(java.lang.String,java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api reveal-dbaas-valkey-user-password`

## <span data-label="PUT" class="pill-PUT"></span>reset-dbaas-valkey-user-password

Reset the credentials of a DBaaS Valkey user

```
PUT /dbaas-valkey/{service-name}/user/{username}/password/reset
```

If no password is provided one will be generated automatically.

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |
| `username` | `path` | Min length: `1`. Max length: `64`. |

### Request body

Content-Type: `application/json`

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `password` | string | no | New password<br/><br/>Min length: `8`. Max length: `256`. |

<details>
<summary>Example</summary>

```json
{
  "password": "string"
}
```
</details>


### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `reset-dbaas-valkey-user-password`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.ResetDBAASValkeyUserPassword) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.reset_dbaas_valkey_user_password) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#resetDbaasValkeyUserPassword(java.lang.String,java.lang.String,com.exoscale.sdk.model.ResetDbaasValkeyUserPasswordRequest))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api reset-dbaas-valkey-user-password`


---

## Other Operations

## <span data-label="GET" class="pill-GET"></span>get-dbaas-settings-valkey

Get DBaaS Valkey settings

```
GET /dbaas-settings-valkey
```

Returns the default settings for Valkey.

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `settings` | [Settings](#settings) |  |

<details>
<summary>Example output</summary>

```json
{
  "settings": {
    "valkey": {
      "additionalProperties": true,
      "properties": {},
      "title": "string",
      "type": "string"
    }
  }
}
```
</details>


### Settings {#settings}

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `valkey` | [Valkey](#valkey) | no | Valkey configuration values |

### Valkey {#valkey}

Valkey configuration values

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `additionalProperties` | boolean | no |  |
| `properties` | object | no |  |
| `title` | string | no |  |
| `type` | string | no |  |

SDK reference for `get-dbaas-settings-valkey`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.GetDBAASSettingsValkey) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.get_dbaas_settings_valkey) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#getDbaasSettingsValkey())

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api get-dbaas-settings-valkey`

## <span data-label="PUT" class="pill-PUT"></span>start-dbaas-valkey-maintenance

Initiate Valkey maintenance update

```
PUT /dbaas-valkey/{name}/maintenance/start
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` | Min length: `0`. Max length: `63`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `start-dbaas-valkey-maintenance`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.StartDBAASValkeyMaintenance) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.start_dbaas_valkey_maintenance) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#startDbaasValkeyMaintenance(java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api start-dbaas-valkey-maintenance`

## <span data-label="POST" class="pill-POST"></span>stop-dbaas-valkey-migration

Stop a DBaaS Valkey migration

```
POST /dbaas-valkey/{name}/migration/stop
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `name` | `path` | Min length: `0`. Max length: `63`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `stop-dbaas-valkey-migration`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.StopDBAASValkeyMigration) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.stop_dbaas_valkey_migration) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#stopDbaasValkeyMigration(java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api stop-dbaas-valkey-migration`

## <span data-label="PUT" class="pill-PUT"></span>update-dbaas-valkey-user-access-control

Update access control for one DBaaS Valkey service user

```
PUT /dbaas-valkey/{service-name}/user/{username}
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |
| `username` | `path` | Min length: `1`. Max length: `64`. |

### Request body

Content-Type: `application/json`

| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `access-control` | [DBaaS Valkey User Access Control](/reference/api/_schemas/dbaas-valkey-user-access-control/) | no |  |

<details>
<summary>Example</summary>

```json
{
  "access-control": {
    "categories": [
      "string"
    ],
    "channels": [
      "string"
    ],
    "commands": [
      "string"
    ],
    "keys": [
      "string"
    ]
  }
}
```
</details>


### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `id` | string | Operation ID<br/><br/>Must be a valid UUID. |
| `message` | string | Operation message |
| `reason` | string | Operation failure reason<br/><br/>Allowed values: `incorrect`, `unknown`, `unavailable`, `forbidden`, `busy`, `fault`, `partial`, `not-found`, `interrupted`, `unsupported`, `conflict`. |
| `reference` | [Reference](/reference/api/_schemas/operation/#reference) | Related resource reference |
| `state` | string | Operation status<br/><br/>Allowed values: `failure`, `pending`, `success`, `timeout`. |

<details>
<summary>Example output</summary>

```json
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}
```
</details>


SDK reference for `update-dbaas-valkey-user-access-control`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.UpdateDBAASValkeyUserAccessControl) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.update_dbaas_valkey_user_access_control) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#updateDbaasValkeyUserAccessControl(java.lang.String,java.lang.String,com.exoscale.sdk.model.UpdateDbaasValkeyUserAccessControlRequest))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api update-dbaas-valkey-user-access-control`

## <span data-label="GET" class="pill-GET"></span>list-dbaas-valkey-users

List DBaaS Valkey users with ACL configuration

```
GET /dbaas-valkey/{service-name}/user
```

null

### Path parameters

| Name | In | Description |
| --- | --- | --- |
| `service-name` | `path` | Min length: `0`. Max length: `63`. |

### Responses

Status: `200` - 200

Content-Type: `application/json`

| Property | Type | Description |
| --- | --- | --- |
| `users` | array of [DBaaS Valkey User](/reference/api/_schemas/dbaas-valkey-user/) |  |

<details>
<summary>Example output</summary>

```json
{
  "users": [
    {
      "access-control": {
        "categories": [
          "string"
        ],
        "channels": [
          "string"
        ],
        "commands": [
          "string"
        ],
        "keys": [
          "string"
        ]
      },
      "type": "string",
      "username": "string"
    }
  ]
}
```
</details>


SDK reference for `list-dbaas-valkey-users`: [golang](https://pkg.go.dev/github.com/exoscale/egoscale/v3#Client.ListDBAASValkeyUsers) | [Python](https://exoscale.github.io/python-exoscale/v2.html#exoscale.api.v2.Client.list_dbaas_valkey_users) | [Java](https://exoscale.github.io/exoscale-sdk-java/com/exoscale/sdk/api/ExoscaleApi.html#listDbaasValkeyUsers(java.lang.String))

[CLI](https://community.exoscale.com/tools/command-line-interface/): `exo api list-dbaas-valkey-users`


