Conversations

Create a conversation

Creates a new AI conversation, the container for messages exchanged with an assistant, and returns the created conversation.

post/ai/conversations

Headers

Idempotency-Keystring

Optional opaque, unquoted key for safely retrying the same logical request. Keys must contain 1 to 255 letters, numbers, hyphens, or underscores. Generate a unique UUID v4 for each operation and reuse it only when retrying that operation with the same request. Invalid headers—including duplicate, empty, malformed, or overlong values—return 400 with error code 10015. A request already in progress with the same key returns 409; reusing the key with a different request returns 422. Only successful responses are replayed, for up to 24 hours. Do not include sensitive data in the key.

Request body

namestring
metadataobject

Metadata associated with the conversation. Set ai_disabled to true to create the conversation with AI message responses disabled.

Response

Successful Response

idstring uuid required
namestring
created_atstring date-time required

The datetime the conversation was created.

metadataobject required

Metadata associated with the conversation. Telnyx provides several pieces of metadata, but customers can also add their own. The reserved field ai_disabled (boolean) can be set to true to prevent AI-generated responses on this conversation. When ai_disabled is true, calls to the chat endpoint will return a 400 error. Set to false or remove the field to re-enable AI responses. This is useful when a human agent needs to take over the conversation mid-stream (e.g., a technician stepping in while AI was messaging a resident).

last_message_atstring date-time required

The datetime of the latest message in the conversation.

Example response

{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "created_at": "2025-04-15T13:07:28.764Z",
  "metadata": {
    "telnyx_conversation_channel": "sms",
    "telnyx_agent_target": "+13128675309",
    "telnyx_end_user_target": "+13128675309",
    "assistant_id": "assistant-123"
  },
  "last_message_at": "2025-04-15T13:07:28.764Z"
}

Changes

Changed in 2 of the 99 revisions of this API.136

    • ●

      added the new 10011 enum value to the // response property for the response status

      response-property-enum-value-added

    • ●

      added the new domain_graduation_limit_exceeded enum value to the // response property for the response status

      response-property-enum-value-added

  • a6a61a29ecdd116See the full diff
    • ▲

      the response's body type changed from object to no type for status

      response-body-type-changed

    • ●

      removed the optional property from the response with the status

      response-optional-property-removed

    • ○

      added the new optional header request parameter Idempotency-Key

      new-optional-request-parameter

    • ○

      added to the response body anyOf list for the response status

      response-body-any-of-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    • ○

      added the non-success response with the status

      response-non-success-status-added

    This revision also has 34 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

Of the 99 revisions, 1 has no diff computed.