Authenticate with Basic Auth using your Zendesk agent email (append /token suffix) and YOUR_TOKEN as the password, or an OAuth bearer token in the Authorization header.
POST to /api/v2/triggers with a JSON body defining 'title', 'conditions' (all/any arrays of field-operator-value objects), and 'actions' (array of field-value pairs such as setting assignee or sending an email).
Retrieve all triggers with GET /api/v2/triggers; use the 'active' query param to filter only enabled ones.
Update an existing trigger with PUT /api/v2/triggers/{trigger_id}, supplying the full trigger object — partial updates are not supported.
Reorder triggers by priority using PUT /api/v2/triggers/reorder with an ordered 'trigger_ids' array.
Delete a trigger with DELETE /api/v2/triggers/{trigger_id} and verify removal by confirming a 204 response.
Known gotchas
Trigger conditions reference Zendesk's internal field identifiers (e.g., 'status', 'assignee_id') — use the Zendesk UI field names exactly as documented; misspelled field keys silently fail validation on some plan tiers.
Triggers fire in priority order; if two triggers conflict, the lower-priority one may never execute — always audit ordering after bulk imports.
On some Zendesk plans the number of active triggers is capped; check your plan limits before bulk-creating via API.
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