REST API
List copilot messages
The newest messages of a conversation, oldest first within a page. Pass nextCursor as ?cursor= to read further back. An assistant reply's actions are what the copilot proposed; apply them with POST /copilot/messages/{messageId}/actions.
Required scopes: copilot:use
AuthorizationBearer <token>
In: header
Path Parameters
conversationId*string
Copilot conversation id, scoped to the key's user.
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)$Format
uuidQuery Parameters
limit?integer
Page size, 1-100.
Range
1 <= value <= 100Default
25cursor?|
Opaque. Pass nextCursor from the previous page unchanged.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/copilot/conversations/497f6eca-6276-4993-bfeb-53cbbbba6f08/messages"{ "data": [ { "id": "4d3c2b1a-0f9e-4d8c-8b7a-6f5e4d3c2b1a", "role": "assistant", "content": "Enzymes lower the activation energy of a reaction.", "actions": [ { "kind": "create_task", "name": "Revise enzymes", "dueDate": "2026-02-03" }, { "kind": "create_set_from_note", "noteId": "2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e" } ], "actionResults": [ { "index": 0, "ok": true, "id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d", "jobId": null, "error": null } ], "modelTier": "scholar", "jobId": "7d6c5b4a-3f2e-4d1c-8b0a-9f8e7d6c5b4a", "jobStatus": "succeeded", "createdAt": "2026-01-15T09:30:00.000Z", "researchUsed": false, "sources": [] } ], "nextCursor": null}