Authenticate
Send an API key from Profile → API Keys, or from Settings → Service Accounts for unattended jobs:X-API-Key: bow_... also works. Keep keys server-side. For apps where each person signs in, use OAuth: see Embed BOW Chat.
Quickstart
1
Create a report
id. Agent IDs come from GET /api/mentions/available?categories=data_sources.2
Ask a question
3
Read the answer
The response holds the whole conversation. The answer is the last entry in
completions with role: "system"."stream": true and see Embed BOW Chat for the event format.
Customize the conversation
Set these when you create the report, or change them later withPUT /api/reports/{id}. They apply to every turn on the report.
On
PUT, a field you leave out stays as it is, and null hands it back to the organization’s default. tools merges by name, so {"tools": {"web_fetch": null}} clears only that one.
These settings can only switch features off. If your organization has turned a feature off,
true does not turn it back on.Reasoning effort
Models support different levels. BOW uses the nearest level the model supports, so any value above is safe to send. Any other value returns
422.
Tools
Set a tool tofalse to switch it off. The agent won’t use it and is told it is unavailable.
Tools not in this list are always on. An unknown name returns
422.
Customize one message
Set these onprompt to change a single turn:
The message setting wins over the report, and the report wins over the defaults.
