Gorgias Views, Rules & Ticket Fields
Shape how the Gorgias helpdesk sorts work: build and adjust saved ticket views and see what sits in each one, review and edit the automation rules that tag, assign and auto-reply, and keep ticket custom fields (order number, reason for contact) filled in on each ticket.
Connect this API to an AI agent Browse all specs
What you can do with Gorgias Views, Rules & Ticket Fields via MCP
Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.
| Method | Path | Operation | Description |
|---|---|---|---|
| GET | /api/views |
listViews | List saved ticket views (shared and private) |
| POST | /api/views |
createView | Create a saved ticket view with filters |
| GET | /api/views/{id} |
getView | Get a view's filters, sort order and visibility |
| PUT | /api/views/{id} |
updateView | Change a view's name, filters or sort order |
| GET | /api/views/{view_id}/items |
listViewItems | List the tickets currently in a view |
| GET | /api/rules |
listRules | List automation rules with their triggers and status |
| POST | /api/rules |
createRule | Create an automation rule |
| GET | /api/rules/{id} |
getRule | Get one rule's code, events and status |
| PUT | /api/rules/{id} |
updateRule | Edit a rule or turn it on or off |
| GET | /api/custom-fields |
listCustomFields | List ticket or customer custom field definitions |
| GET | /api/custom-fields/{id} |
getCustomField | Get one custom field definition and its choices |
| GET | /api/tickets/{ticket_id}/custom-fields |
listTicketFieldValues | List the custom field values set on a ticket |
| PUT | /api/tickets/{ticket_id}/custom-fields |
setTicketFieldValues | Set a ticket's custom field values (list of field id + value) |
Authentication
basicAuth
HTTP Basic
HTTP Basic auth: your Gorgias login email as the username and a REST API key as the password.
How to get a credential
- Sign in to your Gorgias helpdesk (
https://<your-domain>.gorgias.com) as an admin. - Open Settings > REST API (under "You").
- Copy the Username (your email) and click Create API Key (or copy the existing key) as the password.
- Note your subdomain (
acmeforacme.gorgias.com) and set it as the serverdomainvariable.
Permissions used
Gorgias API keys act with the permissions of the user who owns them; there are no per-key scopes.
| Role needed | Operations |
|---|---|
| Any agent | listViews, getView, listViewItems, listCustomFields, getCustomField, listTicketFieldValues, setTicketFieldValues |
| Admin (or a role allowed to manage views/rules) | createView, updateView, listRules, getRule, createRule, updateRule |
Common errors
- 401 Unauthorized: wrong email or API key, or the key was deleted. Copy both again from Settings > REST API.
- 403 Forbidden: the key's user lacks the role for views or rules; use an admin's key.
- 400 Bad Request: invalid
filters/codesyntax, a missingslugon createView, a missingobject_typeon listCustomFields, or a value that does not match the field type. - 404 Not Found: wrong
domain, or a view, rule, field or ticket id that does not exist. - 429 Too Many Requests: about 40 requests per 20 seconds per key; wait for
Retry-Afterand retry.
Store the email and API key as a VX Agents basic-auth credential.
Usage guide
Setup
- Credential: Basic auth with your Gorgias login email and a REST API key (Settings > REST API). Views and rules need an admin's key.
- Set the
domainserver variable to your subdomain (acmeforacme.gorgias.com). - Worth pinning: the
view_idof the queues you check often and the ids of the ticket fields you fill in (fromlistCustomFields).
Tidy up queues, rules and ticket fields
listViewsshows saved views;getViewreturns a view'sfilters(rule-language code such aseq(ticket.status, 'open') && eq(ticket.channel, 'email')),order_byandvisibility.listViewItemswithview_idlists the tickets in a view right now (page withcursor,limitmax 100).- New queue:
createViewwithname,slug(required, URL-safe),type: "ticket-list",filters,order_by/order_dirandvisibility(public,shared,private). Change one withupdateView. listRules(optionalsearch) andgetRuleshow each rule'scode,event_typesand whether it is active (deactivated_datetimeset = off).createRulewithnameandcode(e.g.if (eq(ticket.channel, 'email')) { Action('addTags', { tags: 'email' }) });updateRuleedits code or setsdeactivated_datetimeto turn a rule off (nullto turn it back on).- Ticket fields:
listCustomFieldswithobject_type=Ticket,getCustomFieldfor its type and allowed choices,listTicketFieldValuesfor a ticket, thensetTicketFieldValueswith[{"id": <field id>, "value": "..."}].
Good to know
- Rules run on live tickets (tagging, assigning, auto-replies, closing): show the user the rule code and get a yes before
createRuleorupdateRule. Confirm view changes too, since shared views change what the whole team sees. - Read current values with
listTicketFieldValuesbeforesetTicketFieldValues, and send every value you want the ticket to keep. - Values must match the field's type (text, number, boolean or one of its dropdown choices).
- Ids are integers; times are ISO 8601 UTC (
2026-10-24T09:00:00Z). - Rate limit: about 40 requests per 20 seconds per API key.
- No deletes in this spec (views, rules and fields stay unless removed in Gorgias).
Source: Gorgias REST API reference (https://developers.gorgias.com/reference/list-views), checked 2026-10-24.
How to use this spec
- Create a free VX Agents account (sandbox tools included).
- Open the marketplace and connect “Gorgias Views, Rules & Ticket Fields” to an agent.
- Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.