Send message
Append a user message and admit an assistant turn.
Body is { message, attachments?, locale?, reasoningEffort? }. History is server-side.
Returns 202 { runId, streamUrl }. Observe with Get stream.
bearerAuthAuthorizationBearer <token>Personal API key (Authorization: Bearer pulse_...). Scoped to selected organizations (or all current ones); acts as the creating user. If the key covers more than one organization, pass its organizationId on each request.
id*stringorganizationId?stringOrganization to operate in. Optional when the API key is bound to exactly one organization (inferred). Required for keys that cover several or all organizations, and for session cookie auth.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidworkspaceId?stringDeprecatedDeprecated: the old name of organizationId, still accepted. If both are sent, they must match.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidrunId?stringcursor?stringapplication/json- body
message*string1 <= lengthattachments?array<>Files uploaded via POST /attachments/init. Each entry is { objectKey, filename, mediaType, uploadToken } from the init response.
items <= 10locale?stringreasoningEffort?string"auto""low""medium""high""max"inputResponses?array<unknown>Turn accepted
application/json- response
ok*booleanconversationId*string^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidstatus*stringrunId*stringstreamUrl*stringcurl -X POST 'https://pulse.bilby.ai/api/v1/conversations/string' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "message": "string"}'{ "ok": true, "conversationId": "ee6e55e8-45fe-4a3e-9bc8-4669f9fdf77a", "status": "accepted", "runId": "string", "streamUrl": "string"}
