Omni AI

Append a user message to an existing thread and start an assistant response. Poll the returned response_id via GET /omni-ai/responses/{response_id} for assistant output.

A message sent while another response is active is accepted, and its response is queued. Omni reads the message at the next safe point of the active response. The active response then ends steered if it showed text, or merged if it did not, and the response for the newest message answers everything sent so far. Earlier queued responses that it answers also end merged. Some requests, such as research, do not steer: their responses, and the responses for messages sent after them, start in order after the earlier responses end.

The first accepted selected-account message links an unlinked thread. A linked thread keeps its account regardless of omission or another selection. A changed scope also returns 409 without accepting a turn.

post/v1/omni-ai/threads/{thread_id}/messages

Request

  • Base URL
    https://api.clearstreet.com
  • Auth
    HTTP bearer

Path parameters

thread_idstring uuid required

Request body

account_idinteger nullable

Selected account for creation or the first account-linked turn. Omit for an unlinked conversation. An existing account link remains authoritative even when another account is selected.

capabilitiesCapability[]
textstring required

Example request

{
  "account_id": 19816,
  "text": "Compare that to AMD."
}

Response

Message accepted. The response may be queued behind an active response.

Example response

{
  "error": {
    "code": 400,
    "message": "Order quantity must be greater than zero"
  },
  "metadata": {
    "page_number": 1,
    "total_items": 42,
    "total_pages": 5
  }
}

Changes

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • warning

      the request property's min was set to 1.00

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the new optional request property

    • info

      the request property became nullable

    • info

      the request property became optional

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status