Event

trigger.zendesk_event
TriggerBusiness appsconnection requiredruns in-engine

Registers a webhook in the tenant's Zendesk account on publish and starts one run per delivered event, verified against Zendesk's signature.

Start a run when Zendesk raises an event (ticket, user, organization…).

Connection

Required
Yes — the node will not save without one
Auth type
Username & password
Providers
Zendesk
Secret shape
{"email": "…", "api_token": "…"}
Config it needs
subdomain
Resolved by
config.connection_id, else node.connection_id
Note
Creating a webhook and revealing its signing secret are both admin-only in Zendesk: an agent token registers nothing. Publishing also needs MANTLE_APP_PUBLIC_BASE_URL set to an https URL Zendesk can reach.

Configuration

1 field, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
events
Zendesk event types to subscribe to. Any well-formed zen:event-type: name is accepted, not only the ones listed — Zendesk also publishes article, community post, messaging and access log events.
arrayNo["zen:event-type:ticket.created"]1–128 characters; array of string—

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "events": [
    "zen:event-type:ticket.created"
  ]
}

Output

One shape.

zendesk event

The flattened Zendesk event. detail's own keys vary by subject_type, so the shape is open below the declared fields.

Extra keys beyond the ones listed can appear.

FieldTypeExample
id
Zendesk's event id. Also the idempotency key: a redelivery carries the same id, so it joins the run it already started instead of starting a second. The ingress remembers a key for 24 hours.
string01EJFTSCC78X5V07NPY2MHR00M
type
The event type, e.g. zen:event-type:ticket.created. Branch on this when the trigger subscribes to more than one.
stringzen:event-type:ticket.created
time
When Zendesk raised the event, as an ISO-8601 UTC string.
string2024-05-30T12:00:00Z
account_id
The Zendesk account the event belongs to. Useful when one workflow serves several subdomains.
string—
subject
Zendesk's handle for the thing the event is about, e.g. zen:ticket:35436.
stringzen:ticket:35436
subject_type
The object kind lifted out of subject — ticket, user, organization.
stringticket
subject_id
That object's id, lifted out of subject so the next node can fetch it without slicing a string.
string35436
zendesk_event_version
The payload version Zendesk shaped this event with.
string—
detail
The resource the event is about — the ticket, user or organization, in Zendesk's event-payload form. Its keys depend on subject_type.
object—
event
What actually changed: the previous and current values on a *_changed event, the comment on a comment_added, empty on some created events.
object—
payload
The envelope exactly as Zendesk sent it, for anything the fields above do not lift out.
object—
{
  "account_id": "1234567",
  "detail": {
    "brand_id": "360000123456",
    "created_at": "2024-05-30T12:00:00Z",
    "id": "35436",
    "priority": "urgent",
    "requester_id": "9876543",
    "status": "new",
    "subject": "Printer on fire"
  },
  "event": {
    "via": {
      "channel": "email"
    }
  },
  "id": "01EJFTSCC78X5V07NPY2MHR00M",
  "payload": {
    "id": "01EJFTSCC78X5V07NPY2MHR00M",
    "type": "zen:event-type:ticket.created"
  },
  "subject": "zen:ticket:35436",
  "subject_id": "35436",
  "subject_type": "ticket",
  "time": "2024-05-30T12:00:00Z",
  "type": "zen:event-type:ticket.created",
  "zendesk_event_version": "2022-11-06"
}

Notes

  • Publishing creates the webhook in Zendesk; unpublishing, disabling or archiving deletes it. A workflow that is off is off at Zendesk too.
  • This subscribes the webhook to Zendesk *events*. A Zendesk trigger or automation is a different object — it is not created here, and it is not needed for these events to arrive.
  • Each delivery is verified as base64(HMAC-SHA256(timestamp + body)) against the webhook's signing secret; an unsigned delivery is refused.
  • Zendesk trial accounts are limited to 10 webhooks, and this trigger creates one per published workflow, so an 11th publish is refused with Zendesk's own 'Webhook Limit Exceeded'.
  • Zendesk deactivates a webhook that keeps failing. Publishing again re-registers it.

Solutions with Zendesk

See Event run in a workflow.

In a technical demo we add the Zendesk connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.