---
title: "Send Message"
method: POST
path: "/chatbots/{chatbot_id}/messages"
tags: ["Chatbot Messages"]
---

# Send Message

`POST /chatbots/{chatbot_id}/messages`

## Request

- Base URL: `https://app.boei.help/api/v1`
- URL: `https://app.boei.help/api/v1/chatbots/{chatbot_id}/messages`
- Auth: HTTP bearer

Send a message to a chatbot and get an AI-generated response.

## Request body

- object
  - `message` string, required: The user's message (max 250 characters).
  - `conversation_id` string, nullable: Optional UUID to continue existing conversation. If not provided or doesn't exist, creates new conversation.
  - `contact` object, nullable: Optional contact information.
    - `email` string, nullable: Optional contact email.
    - `name` string, nullable: Optional contact name.
    - `phone` string, nullable: Optional contact phone.
    - `company` string, nullable: Optional company name.
    - `custom` string[]: Must not be greater than 500 characters.
    - `jwt` string, nullable: Server-signed identity assertion. Matches customerInfo.jwt in the widget flow. See IdentityTokenVerifier for trust rules. Must not be greater than 8192 characters.
  - `domain_id` integer, nullable: Explicit domain the assertion is signed under. Optional: falls back to the caller's single-domain default if unambiguous. The <code>id</code> of an existing record in the domains table.
  - `source_tags` string[]: Optional tags to filter which training sources are searched.
  - `language` string, nullable: Optional 2-character language code.
  - `response_format` 'plaintext' | 'markdown' | 'html', nullable
  - `current_page` object, nullable: Optional current-page context shown to the AI so it can disambiguate questions like "when is the training?" by knowing which page the visitor is on.
    - `url` string, nullable: Page URL (host + path, no query).
    - `title` string, nullable: Page title.
  - `is_test` boolean, nullable
  - `attachments` object[]: Must not have more than 5 items.
    - `url` string: This field is required when <code>attachments</code> is present. Must not be greater than 2048 characters.
    - `name` string: This field is required when <code>attachments</code> is present. Must not be greater than 255 characters.
    - `size` integer, nullable: Must be at least 0. Must not be greater than 10485760.
    - `mime` string, nullable: Must not be greater than 100 characters.

## Response `200`

- object
  - `message_id` string
  - `conversation_id` string
  - `response` string
  - `sources` object[]
    - `title` string
    - `url` string
    - `type` string
  - `usage` object
    - `credits_used` integer
    - `monthly_remaining` integer
    - `monthly_limit` integer
  - `created_at` string

---

[API](https://skmtc.dev/boei/apis/boei-api.md) - [All operations](https://skmtc.dev/boei/apis/boei-api/llms.txt) - [OpenAPI document](https://skmtc.dev/boei/apis/boei-api/revisions/fc439667d2d4?raw)
