Skip to main content
The Tables API allows you to manage your tables, which store structured data and offer various features. You can use tables to store user data, automatically label data, and extract information from content. All the endpoints of the Tables API are located behind the tables base path (api.botpress.cloud/v1/tables/).

Using cURL

Calling the Tables API can be done using any HTTP client, such as curl, axios, or fetch. Here’s an example using curl:
token="$YOUR_BOTPRESS_TOKEN"
bot_id="$YOUR_BOT_ID"
## List your bot's tables
curl -H "Authorization: bearer $token" -H "x-bot-id: $bot_id" https://api.botpress.cloud/v1/tables

Using the Official TypeScript Client

The official TypeScript client is available as an NPM package. You can install it using any of the following command:
npm install @botpress/client
Once installed, you can import the client and use it in your TypeScript code:
This example uses dotenv to manage Botpress credentials. If you’d rather manage your credentials differently, just remove the import and define your token and bot ID however you like.
import dotenv from 'dotenv'
import { Client } from '@botpress/client'

dotenv.config()

const main = async () => {
    const token = process.env.TOKEN
    const botId = process.env.BOT_ID

    const client = new Client({
        token,
        botId,
    })

    const response = await client.listTables({})
    console.log(response.tables)
}

void main()

Quotas/limits

The maximum payload size for the Tables API is .
I