Authenticate using HTTP Basic Auth with your Gorgias account email and API key (or use a Bearer token if using OAuth) on all requests to `https://{your-domain}.gorgias.com/api`.
Create a ticket by POSTing to `/api/tickets` with `channel` (e.g., `api`), `via` (e.g., `api`), `subject`, and an initial `messages` array containing the message `body-html` or `body-text`, `from-agent` flag, and sender details.
Optionally associate the ticket with a customer by including `customer` with `email` or `id`; Gorgias will match an existing customer or create a new one.
Add a message to an existing ticket by POSTing to `/api/tickets/{ticket_id}/messages` with the message payload; use `from-agent: false` for inbound (customer) messages and `true` for agent messages.
Update ticket status or assignee by sending a PUT to `/api/tickets/{ticket_id}` with `status` (e.g., `open`, `closed`) or `assignee_user` fields.
Attach order context to a ticket using Gorgias's custom macros or by sending structured data in the message body, or link via the integration if Shopify/WooCommerce is connected to auto-populate order details.
Known gotchas
Gorgias deduplicates tickets by matching on customer email and open status — posting a new ticket for an existing open ticket from the same customer may route into the existing thread depending on account settings, not create a new ticket.
Rate limits on the Gorgias API are relatively low for standard plans; batch order event processing should be throttled and use a queue to avoid 429 responses during order spikes.
The `via` and `channel` fields affect routing and tagging in Gorgias — using `api` for both keeps tickets out of channel-specific views; set them deliberately based on how you want agents to see and route the tickets.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp