For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt, and this page is available as Markdown at /reference/contracts/support/messaging/README.md.

Support requests, version 1

Source: requests.proto, which imports commands.proto and queries.proto. Run pnpm generate:contracts after edits. Private commands are declared alongside public commands in commands.proto; their visibility annotations keep them outside the API's published operations.

OperationKindTargetNotes
CreateTicketcommandthe new ticket's ID, chosen by the browsertitle and opening message body
CloseTicketcommandthe ticketexpected version is the ticket's revision
AddMessagecommandthe new message's ID, chosen by the browserticket_id and body
RequestCustomerLinkcommandthe Pharos user IDoperator CLI credential only
ListTicketsquerythe signed-in user's tickets
GetConversationqueryone ticket with its messages
GetCustomerLinkqueryoperator CLI credential only

Commands carry the shared CommandMetadata: command ID (the Idempotency-Key), target aggregate, expected version, correlation and the acting user (actor_id). The API sets user_id in queries and actor_id in commands from the session; a browser never supplies either. Command replies carry the shared Outcome; query replies carry their response or the shared RequestError.

BoundaryValue
Request exchangepharos.requests (durable topic)
Routing keysrequest.support.command, request.support.query
Owner queuesref.support.commands, ref.support.queries
Reply exchange and keypharos.replies, reply.support.<connection UUID>

Broker roles and permissions are generated from broker.json into services/beto/services/topology/permissions.generated.json.

Page source

Source snapshot · Revision f928834c8.