List messages
Read the conversation of an agent run, oldest first. Poll with `afterId` set to the last id you saw to stream new messages without refetching the thread. Reading a run requires the permissions the agent itself used, so a caller with narrower access than the person who started it gets 403 rather than a filtered view.
Authentication
sf_… API key in the bearerAuth field below.A SaaSFlow API key (format sf_…) or an OAuth bearer token. Paste only the key — the proxy adds the Bearer prefix. Create an API key in Settings → Company settings → API keys — see API keys.
In: header
Path Parameters
1 <= length1 <= lengthQuery Parameters
Return only messages with an id greater than this.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/companies/string/agent_runs/string/messages"[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "companyId": "8bb73d03-06b4-47c7-80c7-59301f770eda", "runId": "78c33d18-170c-44d3-a227-b3194f134f73", "role": "user", "userId": "2c4a230c-5085-4924-a3e1-25fb4fc5965b", "content": "string", "createdTime": "2019-08-24T14:15:22Z" }]Retrieve agent run
Retrieve one agent run: its status, the input it was started with, and its result once finished. Poll this after starting a run. Returns 404 if the run does not exist or belongs to another company.
Create message
Send a follow-up message to a running interactive agent, up to 8000 characters. The message is queued rather than answered inline, so poll the messages endpoint for the reply. Runs that are not interactive reject this with 400, and a session that has already ended returns 409; start a new run, or resume the finished one, instead.