Skip to main content
POST
Start a new chat and stream the reply

Authorizations

Authorization
string
header
required

Send your API key in the Authorization header as Bearer API_KEY.

Body

application/json
message
string

The user message to send.

Required string length: 1 - 50000
Example:

"Summarize what shipped in the last week."

approvals
object[]

Respond to every pending tool approval in the latest assistant message. Send either message or approvals. Only supported on an existing chat.

Required array length: 1 - 50 elements
model
enum<string>

Model to respond with. Defaults to auto, which lets Notra choose.

Available options:
auto,
anthropic/claude-opus-5.5,
anthropic/claude-opus-5,
anthropic/claude-opus-4.8,
anthropic/claude-sonnet-5,
anthropic/claude-sonnet-4.6,
anthropic/claude-haiku-4.5,
openai/gpt-6-sol,
openai/gpt-6-luna,
openai/gpt-5.6-sol,
openai/gpt-5.5,
openai/gpt-5.4
Example:

"auto"

enableThinking
boolean

Allow the model to reason before answering.

Example:

false

thinkingLevel
enum<string>

How much reasoning effort to spend when thinking is enabled.

Available options:
off,
low,
medium,
high
Example:

"medium"

timezone
string

IANA time zone used to interpret dates in the conversation.

Required string length: 1 - 100
Example:

"Europe/Berlin"

context
object[]

Integrations the assistant may use as tools in this chat: connected GitHub repositories, Linear teams, or MCP servers.

externalChannelId
object

Link the chat to a Discord or Slack channel so it can be found later with GET /v1/chats/by-external.

Response

Streaming UI message stream (newline-delimited JSON chunks). Read the X-Chat-Id response header for the chat id, or take it from the start chunk's messageMetadata.chatId.

The response is of type string.

Last modified on October 2, 2026