Send Message
Sends an inbound customer message into the chat engine and returns the agent’s reply synchronously.
session_id is optional. If omitted, the engine resolves the customer’s active session for this agent (creating or resuming as needed), so a typical integration only needs agent_uuid, customer_id, and content.
For a customer answering an interactive message the agent sent, see Interactive messages. For fire-and-forget delivery instead of waiting on this response, use Send Message (Async).
Authorizations
16-character API token associated with your OSVI account. Find it in your dashboard under Settings → API.
Body
Unique identifier of the agent handling the conversation.
"agent_IsZ3Q6Sf_60Eh26XQMGbz-R_og"
Your identifier for the customer sending the message. Used to resolve the active session when session_id is omitted.
"+15551112222"
The customer's message text. Required unless type is interaction_response.
"Hi, I need help."
Optional session UUID to route the message to. If omitted, the engine resolves the active/new session for the customer + agent.
"4718a326-417b-4dda-90d0-21fd65a11cb8"
Your identifier for this exact turn. A retry with the same key returns the original result instead of running the turn twice. Can also be sent as an Idempotency-Key header instead of a body field.
"wh-2f8a1c-attempt-1"
Arbitrary key-value object made available to the agent at runtime (e.g. name, account tier). Only applied when this request creates a new session.
Initial values for the agent's configured state fields — structured values the agent's prompt and tools can read and update as the conversation continues. Only applied when this request creates a new session.
Free-text context entries for a newly created session. Only the most recent 5 non-empty strings are retained. Only applied when this request creates a new session — use Inject Context to add context to an existing one.
message for a normal text message (default). interaction_response to answer an interactive message the agent sent — see Interactive messages.
message, interaction_response "message"
Required when type is interaction_response. The interaction_id of the interactive message being answered.
"b6a3e6c2-2d61-4a4b-9c9a-5a2d9f6a2b10"
Shorthand answer for a simple option tap — the id of the selected option. Send this or response, not both. See Interactive messages.
"opt_confirm"
Structured answer to a pending interactive message. Send this or option_id, never both. See Interactive messages.
Declares which interactive message types your client can render, so the agent only offers ones you can display. See Interactive messages.
