> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kaireonai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Interaction Store

> Configure the backend storage engine for interaction history data.

## GET /api/v1/settings/interaction-store

Returns the current interaction store backend setting for the tenant.

### Response

```json theme={null}
{
  "backend": "postgresql",
  "allowedBackends": ["postgresql", "keyspaces", "scylla", "dynamodb"]
}
```

### Roles

admin only

***

## PUT /api/v1/settings/interaction-store

Update the interaction store backend. This changes the storage engine used for new interaction history writes.

### Request Body

| Field     | Type   | Required | Description                                             |
| --------- | ------ | -------- | ------------------------------------------------------- |
| `backend` | string | Yes      | One of: `postgresql`, `keyspaces`, `scylla`, `dynamodb` |

### Backend Options

| Backend      | Description                                                                  |
| ------------ | ---------------------------------------------------------------------------- |
| `postgresql` | Default. Standard PostgreSQL storage with partition support.                 |
| `keyspaces`  | Amazon Keyspaces (managed Cassandra). High-throughput write-heavy workloads. |
| `scylla`     | ScyllaDB. Low-latency, high-throughput Cassandra-compatible storage.         |
| `dynamodb`   | Amazon DynamoDB. Serverless, auto-scaling NoSQL storage.                     |

### Example

```bash theme={null}
curl -X PUT https://playground.kaireonai.com/api/v1/settings/interaction-store \
  -H "Content-Type: application/json" \
  -H "X-Tenant-Id: my-tenant" \
  -d '{ "backend": "keyspaces" }'
```

### Response

```json theme={null}
{
  "backend": "keyspaces",
  "allowedBackends": ["postgresql", "keyspaces", "scylla", "dynamodb"]
}
```

### Error Codes

| Code  | Reason                |
| ----- | --------------------- |
| `400` | Invalid backend value |

<Warning>
  Changing the backend does not migrate existing data. Historical interactions remain in the previous backend. Plan a data migration separately when switching backends in production.
</Warning>

### Roles

admin only

See also: [Settings](/api-reference/settings) | [Platform Settings](/api-reference/platform-settings)
