# Get all chatbots

`GET https://api.chat-data.com/api/v2/get-chatbots`

Canonical: https://www.chat-data.com/api-reference/get-chatbots

## Authentication

Send an API key as a Bearer token: `Authorization: Bearer $CHAT_DATA_API_KEY`. Workspace keys reach every chatbot in the workspace; chatbot-scoped keys reach only their chatbot. Keep keys on the server.

## Description

Returns the chatbots the API key can reach, with related information: every chatbot in the workspace for a workspace key, or only its own chatbot for a chatbot-scoped key.

## Example request

```bash
curl 'https://api.chat-data.com/api/v2/get-chatbots' \
  -H "Authorization: Bearer $CHAT_DATA_API_KEY"
```

## Example response (200)

```json
{
  "status": "success",
  "chatbots": [
    {
      "chatbotId": "6650f1c2a9e4b83d2c7a1f05",
      "chatbotName": "Support Bot",
      "visibility": "private",
      "createdAt": 1791970200000,
      "lastTrainedAt": 1791970200000,
      "onlyAllowOnAddedDomains": true,
      "domains": [
        "example.com",
        "chat.example.com"
      ],
      "disallowedUrls": [
        "https://www.example.com/checkout"
      ],
      "basePrompt": "You are a friendly support assistant for Example Inc. Answer only from the provided knowledge base and keep replies under 120 words.",
      "imageDescriptionPrompt": "Describe the image in detail, including any visible text.",
      "rateLimitPoints": 20,
      "rateLimitTimeframe": 240,
      "rateLimitMessage": "Too many messages in a row. Please wait a few minutes and try again.",
      "suggestedMessages": [
        "What are your opening hours?",
        "How do I track my order?"
      ],
      "initialMessages": [
        "Hi! How can I help you today?"
      ],
      "styles": {
        "theme": "dark",
        "buttonColor": "rgb(0, 0, 0)",
        "displayName": "Support Bot",
        "alignChatButton": "left",
        "userMessageColor": "rgb(59, 129, 246)",
        "actionButtonColor": "rgb(59, 129, 246)",
        "profilePictureFile": "/storage/public/image/avatar_6650f1c2a9e4b83d2c7a1f05.png",
        "bubblePictureFile": "/storage/public/image/chat_icon_6650f1c2a9e4b83d2c7a1f05.png",
        "autoOpenChatWindowAfter": 3
      },
      "model": "custom-data-upload",
      "baseModel": "gpt-4o-mini",
      "numberOfConversations": 100,
      "dataSources": [
        {
          "name": "https://www.example.com/help/shipping",
          "characters": 10000,
          "type": "website"
        }
      ],
      "status": 100,
      "temperature": 0,
      "collectedCustomerInformation": [
        {
          "name": "jane@chat-data.com",
          "source": "widget",
          "createdAt": "2026-10-14T09:30:00.000Z"
        }
      ],
      "storeChat": true,
      "trackIpAddress": true,
      "calendar": {
        "showCalendar": true,
        "calendarUrl": "https://calendly.com/jane-doe/30min",
        "calendarMessage": "Book a demo"
      },
      "calCom": {
        "showCalendar": false,
        "username": "jane-doe/30min",
        "calendarMessage": "Book a demo",
        "hideEventTypeDetails": false,
        "brandColor": "#292929",
        "layout": "month"
      },
      "inputPlaceholderMsg": "Message...",
      "enableBouncingAnimation": true,
      "enableBubbleSound": true,
      "bubbleSize": 54,
      "padding": {
        "x": 16,
        "y": 16
      },
      "ignoreDataSource": false,
      "leadsConfig": {
        "message": "Let us know how to contact you.",
        "collectName": true,
        "collectEmail": true,
        "collectPhone": false,
        "nameMessage": "Name",
        "emailMessage": "Email",
        "phoneMessage": "Phone"
      },
      "notification": {
        "enableLeadsEmail": true,
        "leadsEmails": [
          "leads1@example.com",
          "leads2@example.com"
        ],
        "enableConversationEmails": true,
        "conversationEmails": [
          "conversation1@example.com",
          "conversation2@example.com"
        ]
      },
      "webhooks": [
        {
          "endpoint": "https://example.com/webhooks/chat-data",
          "events": [
            "chat"
          ],
          "secret": "4f9a2c7e1b8d3f6a0c5e9b2d7a1f4c8e3b6d9f2a5c8e1b4d7f0a3c6e9b2d5f8a",
          "enable": true,
          "contentType": "text/plain"
        }
      ],
      "team": [
        {
          "userId": "6650f1c2a9e4b83d2c7a1e11",
          "email": "jane@example.com",
          "name": "Jane Doe",
          "permissions": [
            "admin",
            "full",
            "train",
            "read"
          ],
          "role": "Owner",
          "workspaceRole": "owner",
          "joinTime": "2026-10-14T09:30:00.000Z",
          "source": "workspace"
        }
      ],
      "toolsParams": [],
      "lastMessageAt": 1791970320000,
      "customBackend": "https://bot.example.com/v1/chat",
      "bearer": "cb_7d3f9a2e5c81b4f0"
    }
  ]
}
```

## Responses

| Status | Description |
| --- | --- |
| 200 | Successful response. With a chatbot-scoped key, `chatbots` contains only that key's chatbot. |
| 400 | An unexpected error occurred while processing the request; `message` contains the error. |
| 401 | Authentication failed: the `Authorization` header is missing or not in the `Bearer <key>` format, the API key does not exist, its workspace is unavailable or has no owner, or the workspace's plan does not include API access. `message` says which. |
| 404 | The request used a chatbot-scoped key whose chatbot no longer exists in the key's workspace. |
| 429 | The workspace sent more than 600 API requests in the last minute. Wait the number of seconds given in the `Retry-After` header (and in `message`) before retrying. |
