Skip to main content
POST
Use this endpoint when your backend needs to send a turn into Fini. Pass interactionId to continue an existing conversation, or botId to let Fini create or resolve one for that agent. The route stores the incoming event, runs the normal reply flow for user messages, and returns the public event objects created while handling that submission.
Use List agents to get a botId. This route returns only the created event array, not the full conversation wrapper. Use Get conversation when you already know the conversation ID, or List conversations when you need to discover or export it.

Headers

string
required
Bearer token containing your Fini workspace API key. Format: Bearer fini_... The key needs write scope.

Body parameters

string
required
Message text to add as the incoming event.
string
default:"user"
Event role. Allowed values are user, agent, finibot, and otherbot. Most public callers should use user.
string
Existing conversation ID to continue. If omitted, provide botId and Fini will create or resolve a conversation for that bot.
string
Agent ID to use when starting a new conversation. Required when interactionId is omitted.
object
Optional conversation metadata to merge into the request state.
object
Optional generation artifacts to use for this answer. Use this when you want Fini to answer with a specific prompt draft, knowledge snapshot, article drafts, or rule versions.
Public file attachments are not accepted by Generate Answer. Use artifacts for prompt, knowledge, and rule-version inputs that affect answer generation.

Request example

If you send role: "agent" or another non-user role, Fini stores that event and returns it immediately. The route only generates a new AI reply for user events.

Response

The response is a top-level array of public events created while handling this submission. This is the same event shape returned inside events[] on List conversations.
The request body sends incoming text as content. Public event responses expose stored event text as message, including both the user event created from your content and any Fini reply generated for that turn.
array
Array of public events created for the submission.
The attachments, tags, and usedArticles arrays can be intentionally empty for events that do not include files, labels, or retrieved articles.

Errors

The body is malformed. Common causes are omitting content, or omitting both interactionId and botId.
The API key is missing, malformed, revoked, or invalid. Confirm you are sending Authorization: Bearer fini_... with the full key.
The API key does not include the write scope required for this route.
Fini failed while resolving the bot, loading or creating the conversation, persisting the event, or generating the reply. Unknown interactionId or botId values currently surface here on the public route as well. Retry once, then investigate the conversation in Inbox if the error persists.