---
title: "Assistant Chat"
method: POST
path: "/ai/assistants/{assistant_id}/chat"
tags: ["Assistants"]
---

# Assistant Chat

`POST /ai/assistants/{assistant_id}/chat`

## Request

- Base URL: `https://api.telnyx.com/v2`
- URL: `https://api.telnyx.com/v2/ai/assistants/{assistant_id}/chat`
- Auth: HTTP bearer

This endpoint allows a client to send a chat message to a specific AI Assistant. The assistant processes the message and returns a relevant reply based on the current conversation context. Refer to the Conversation API to [create a conversation](https://developers.telnyx.com/api-reference/conversations/create-a-conversation), [filter existing conversations](https://developers.telnyx.com/api-reference/conversations/list-conversations), [fetch messages for a conversation](https://developers.telnyx.com/api-reference/conversations/get-conversation-messages), and [manually add messages to a conversation](https://developers.telnyx.com/api-reference/conversations/create-message).

## Path parameters

- `assistant_id` string, required

## Request body

- AssistantChatReq
  - `content` string, required: The message content sent by the client to the assistant
  - `name` string: The optional display name of the user sending the message
  - `conversation_id` string, required: A unique identifier for the conversation thread, used to maintain context
  - `stream` boolean: When true, the response is streamed as Server-Sent Events (`text/event-stream`): `delta` events carry content fragments as they are generated, a final `done` event carries the full content plus `whatsapp_template`, and a terminal `error` event reports failures that happen after streaming started. When false (default), the response is a single JSON object.

## Response `200`

Successful Response

- AssistantChatResponse
  - `content` string, required: The assistant's generated response based on the input message and context.

## Other responses

- `400`: Bad Request. The turn was refused before any message content was processed. For example, an assistant with `privacy_settings.in_transit_data_locality` enabled refuses a request that entered the platform outside the organization's data-locality region, or that this deployment cannot serve in that region; the response detail names the API hostname to send it to.
- `422`: Validation Error

## Changes

- **2026-10-15** `a72569d69430`: 2 info
  - added the new optional request property `stream`
  - added the non-success response with the status `400`

[Operation history](https://skmtc.dev/team-telnyx/apis/telnyx-api/changes/ai/assistants/:assistant_id/chat/post.md)

---

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