Conversations
For instructions on how to authenticate to use this endpoint, see API overview.
Endpoints
GET | |
POST | |
GET | |
DELETE | |
POST | |
PATCH | |
POST | |
GET | |
POST | |
PATCH | |
DELETE | |
POST | |
GET | |
GET | |
GET | |
GET | |
PATCH | |
DELETE | |
POST |
List all conversations
Required API key scopes
conversation:readQuery parameters
- limitinteger
- offsetinteger
Response
Example request
GET /api /projects /:project_id /conversationsExample response
Status 200
Create conversations
Unified endpoint that handles both conversation creation and streaming.
- If message is provided: Start new conversation processing
- If no message: Stream from existing conversation
Required API key scopes
conversation:writeRequest parameters
- contentstring | null
- conversationstring
- contextual_toolsobject
- ui_context
- billing_context
- trace_idstring
- session_idstring
- agent_mode
- is_sandboxbooleanDefault:
false - resume_payload
Response
Example request
POST /api /projects /:project_id /conversationsExample response
Status 201
Retrieve conversations
Required API key scopes
conversation:readPath parameters
- conversationstring
Response
Example request
GET /api /projects /:project_id /conversations /:conversationExample response
Status 200
Delete conversations
Delete a conversation.
Required API key scopes
conversation:writePath parameters
- conversationstring
Example request
DELETE /api /projects /:project_id /conversations /:conversationExample response
Status 204 No response body
Create conversations append message
Appends a message to an existing conversation without triggering AI processing. This is used for client-side generated messages that need to be persisted (e.g., support ticket confirmation messages).
Path parameters
- conversationstring
Request parameters
- contentstring
Response
Example request
POST /api /projects /:project_id /conversations /:conversation /append_messageExample response
Status 200
Update conversations cancel
Cancel the conversation's in-progress LangGraph run.
Path parameters
- conversationstring
Request parameters
Example request
PATCH /api /projects /:project_id /conversations /:conversation /cancelExample response
Status 204 Cancellation accepted, or already cancelling.
Status 422 Failed to cancel the conversation.
Create conversations open
Create-or-resume a sandbox conversation — the single sandbox session opener. With content, processes the turn (first message, in-progress follow-up, or terminal resume); without content, warms a sandbox that idles awaiting the first message. Returns the (task, run) handle the frontend opens SSE against. The conversation row is created on first use from the URL id.
Path parameters
- conversationstring
Request parameters
- contentstring | null
- trace_idstring
- attached_contextarray
- initial_permission_mode
- task_idstring
Response
Example request
POST /api /projects /:project_id /conversations /:conversation /openExample response
Status 200
Status 204 Warm request that provisioned nothing (pool full / released).
Status 400 Conversation or task uses an unsupported runtime.
Retrieve conversations queue
Path parameters
- conversationstring
Response
Example request
GET /api /projects /:project_id /conversations /:conversation /queueExample response
Status 200
Create conversations queue
Path parameters
- conversationstring
Request parameters
Response
Example request
POST /api /projects /:project_id /conversations /:conversation /queueExample response
Status 200
Update conversations queue
Path parameters
- conversationstring
- queue_idstring
Request parameters
Response
Example request
PATCH /api /projects /:project_id /conversations /:conversation /queue /:queue_idExample response
Status 200
Delete conversations queue
Path parameters
- conversationstring
- queue_idstring
Example request
DELETE /api /projects /:project_id /conversations /:conversation /queue /:queue_idExample response
Status 204 No response body
Create conversations queue clear
Path parameters
- conversationstring
Request parameters
Response
Example request
POST /api /projects /:project_id /conversations /:conversation /queue /clearExample response
Status 200
List all conversations ai context account properties
Account-target Customer analytics properties that can be included in AI reply context. Capped at the first 500 properties by name.
Required API key scopes
account:readExample request
GET /api /projects /:project_id /conversations /ai_context_account_propertiesExample response
Status 200
Retrieve conversations ai reply playbook
Inherited support-reply playbook for this project, plus the team's custom addendum if any.
Required API key scopes
project:readResponse
Example request
GET /api /projects /:project_id /conversations /ai_reply_playbookExample response
Status 200
List all conversations tickets
Also available via the PostHog MCP server:
conversations-tickets-list— List support tickets
List tickets with person data attached.
Required API key scopes
ticket:readQuery parameters
- ai_triage_resultstring
- assigneestring
- channel_detailstringOne of:
"github_issue""slack_bot_mention""slack_channel_message""slack_emoji_reaction""teams_bot_mention""teams_channel_message""widget_api""widget_embedded" - channel_sourcestringOne of:
"email""github""slack""teams""widget" - date_fromstring
- date_tostring
- distinct_idsstring
- emailsstring
- limitinteger
- offsetinteger
- order_bystringOne of:
"-created_at""-sla_due_at""-ticket_number""-updated_at""created_at""sla_due_at""ticket_number""updated_at" - prioritystring
- searchstring
- slastringOne of:
"at-risk""breached""on-track" - snoozedboolean
- statusstring
- tagsstring
- tags_allstring
- tags_excludestring
- viewstring
Response
Example request
GET /api /projects /:project_id /conversations /ticketsExample response
Status 200
Retrieve conversations tickets
Also available via the PostHog MCP server:
conversations-tickets-retrieve— Get support ticket
Get single ticket and mark as read by team.
Required API key scopes
ticket:readPath parameters
- idstring
Response
Example request
GET /api /projects /:project_id /conversations /tickets /:idExample response
Status 200
Update conversations tickets
Required API key scopes
ticket:writePath parameters
- idstring
Request parameters
- status
- priority
- assignee
- anonymous_traits
- ai_resolvedboolean
- escalation_reasonstring | null
- sla_due_atstring | null
- snoozed_untilstring | null
- tagsarray
Response
Example request
PATCH /api /projects /:project_id /conversations /tickets /:idExample response
Status 200
Delete conversations tickets
Soft-delete a ticket. A daily sweeper hard-deletes it after the grace window.
Required API key scopes
ticket:writePath parameters
- idstring
Example request
DELETE /api /projects /:project_id /conversations /tickets /:idExample response
Status 204 No response body
Create conversations tickets ai feedback
Record reviewer feedback on an AI reply, captured to the internal analytics project.
Required API key scopes
ticket:writePath parameters
- idstring
Request parameters
- message_idstring
- rating
- feedback_textstring
Example request
POST /api /projects /:project_id /conversations /tickets /:id /ai_feedback