---
title: Database tokens
description: Create and manage database tokens that authorize read and write access to InfluxDB 3 Clustered databases.
url: https://docs.influxdata.com/influxdb3/clustered/api/management-api/database-tokens/
estimated_tokens: 1502
publisher: InfluxData
canonical: https://docs.influxdata.com/influxdb3/clustered/api/management-api/database-tokens/
---

[Download Clustered Management API Spec](/openapi/influxdb-clustered-management-api.yml)

Create and manage database tokens that authorize read and write access to InfluxDB 3 Clustered databases.

GET`/tokens`

### Get all database tokens for a cluster

Example request[Ask AI about this](#)

```sh
curl --request GET \
  "https://console.influxdata.com/api/v0/tokens" \
  --header "Authorization: Bearer INFLUX_TOKEN"
```

#### Responses

200The database tokens were successfully retrieved

400Bad Request

`code`requiredinteger

`message`requiredstring

401Unauthorized

`code`requiredinteger

`message`requiredstring

403Forbidden

`code`requiredinteger

`message`requiredstring

404Not Found

`code`requiredinteger

`message`requiredstring

500Internal Server Error

`code`requiredinteger

`message`requiredstring

POST`/tokens`

### Create a database token

Create a database token for a cluster.

The token returned on the `accessToken` property in the response can be used to authenticate query and write requests to the cluster.

### Notable behaviors

* InfluxDB might take some time–from a few seconds to a few minutes–to activate and synchronize new tokens. If a new database token doesn’t immediately work (you receive a `401 Unauthorized` error) for querying or writing, wait and then try your request again.

* Token strings are viewable *only* on token creation and aren’t stored by InfluxDB; you can’t recover a lost token.

#### Store secure tokens in a secret store

We recommend storing database tokens in a **secure secret store**.
For example, see how to authenticate Telegraf using tokens in your OS secret store.

If you lose a token, delete the token from InfluxDB and create a new one.

#### Request bodyrequired

Content-Type:`application/json`

`description`requiredstring

`expiresAt`string

`permissions`string

Example request[Ask AI about this](#)

```sh
curl --request POST \
  "https://console.influxdata.com/api/v0/tokens" \
  --header "Authorization: Bearer INFLUX_TOKEN" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "description": "DESCRIPTION",
  "expiresAt": "EXPIRESAT",
  "permissions": []
}'
```

#### Responses

200The database token was successfully created

`accessToken`requiredstring

`createdAt`requiredstring

`description`requiredstring

`expiresAt`string

`id`requiredstring

The ID of the database token

`permissions`requiredstring

`revokedAt`string

400Bad Request

`code`requiredinteger

`message`requiredstring

401Unauthorized

`code`requiredinteger

`message`requiredstring

403Forbidden

`code`requiredinteger

`message`requiredstring

404Not Found

`code`requiredinteger

`message`requiredstring

409Conflict

`code`requiredinteger

`message`requiredstring

500Internal Server Error

`code`requiredinteger

`message`requiredstring

GET`/tokens/{tokenId}`

### Get a database token

#### Parameters

##### Path parameters

`tokenId`requiredstring

The ID of the database token to get

Example request[Ask AI about this](#)

```sh
curl --request GET \
  "https://console.influxdata.com/api/v0/tokens/{tokenId}" \
  --header "Authorization: Bearer INFLUX_TOKEN"
```

#### Responses

200The database token was successfully retrieved.

`createdAt`requiredstring

`description`requiredstring

`expiresAt`string

`id`requiredstring

The ID of the database token

`permissions`requiredstring

`revokedAt`string

400Bad Request

`code`requiredinteger

`message`requiredstring

401Unauthorized

`code`requiredinteger

`message`requiredstring

403Forbidden

`code`requiredinteger

`message`requiredstring

404Not Found

`code`requiredinteger

`message`requiredstring

500Internal Server Error

`code`requiredinteger

`message`requiredstring

PATCH`/tokens/{tokenId}`

### Update a database token

#### Parameters

##### Path parameters

`tokenId`requiredstring

The ID of the database token to update

#### Request bodyrequired

Content-Type:`application/json`

`description`string

`permissions`string

Example request[Ask AI about this](#)

```sh
curl --request PATCH \
  "https://console.influxdata.com/api/v0/tokens/{tokenId}" \
  --header "Authorization: Bearer INFLUX_TOKEN" \
  --header "Content-Type: application/json" \
  --data-raw '{
  "description": "DESCRIPTION",
  "permissions": []
}'
```

#### Responses

200The database token was successfully updated

`createdAt`requiredstring

`description`requiredstring

`expiresAt`string

`id`requiredstring

The ID of the database token

`permissions`requiredstring

`revokedAt`string

400Bad Request

`code`requiredinteger

`message`requiredstring

401Unauthorized

`code`requiredinteger

`message`requiredstring

403Forbidden

`code`requiredinteger

`message`requiredstring

404Not Found

`code`requiredinteger

`message`requiredstring

409Conflict

`code`requiredinteger

`message`requiredstring

500Internal Server Error

`code`requiredinteger

`message`requiredstring

DELETE`/tokens/{tokenId}`

### Delete a database token

#### Parameters

##### Path parameters

`tokenId`requiredstring

The ID of the database token to delete

Example request[Ask AI about this](#)

```sh
curl --request DELETE \
  "https://console.influxdata.com/api/v0/tokens/{tokenId}" \
  --header "Authorization: Bearer INFLUX_TOKEN"
```

#### Responses

204No Content

400Bad Request

`code`requiredinteger

`message`requiredstring

401Unauthorized

`code`requiredinteger

`message`requiredstring

403Forbidden

`code`requiredinteger

`message`requiredstring

404Not Found

`code`requiredinteger

`message`requiredstring

500Internal Server Error

`code`requiredinteger

`message`requiredstring

#### Related

* [Manage database tokens](/influxdb3/clustered/admin/tokens/database/)
* [Delete a database token](/influxdb3/clustered/admin/tokens/database/delete/)
* [Authenticate Telegraf using tokens in your OS secret store](https://github.com/influxdata/telegraf/tree/master/plugins/secretstores/os)
* [InfluxDB 3 API client libraries](/influxdb3/clustered/reference/client-libraries/v3/)
