Zendesk Tickets

Ingest Zendesk ticket information by configuring a webhook and trigger in the Zendesk UI.

To do this, you will need:

  • Your Zendesk login credentials

  • Your Observe Customer ID

  • An Observe ingest token

Configure an Outgoing Webhook

Zendesk documentation

  1. Login to Zendesk and go to Admin > Settings > Extensions

  2. On the Extensions page, click “add target” to display a list of target types. Click “HTTP target”

  3. Fill in the HTTP target detail

    • Title: ObserveWebhook

    • Url: https://collect.observeinc.com/v1/http/zendesk

    • Method: POST

    • Content type: JSON

    • Basic Authentication:

      • Check “Enabled”

      • Username: your Observe Customer ID

      • Password: your Observe Ingest Token

    HTTP target values filled in
  4. Test the webhook

    • Select “Test target” from the dropdown menu

    • Click Submit

    • In the JSON body text field, provide a valid JSON body (like {"message":"Hello Zendesk!"})

    • Click Submit

    • Confirm that the response is HTTP/1.1 202 Accepted

    JSON body example

    If the JSON body text is highlighted in red, this means you did not get a success response. Correct your configuration and try again.

  5. Save the webhook configuration

    • Select “Create target” from the dropdown menu

    • Click Submit

Configure the trigger in Zendesk

Zendesk documentation

  1. Go to Admin > Business Rules > Triggers

  2. In the Triggers page, click “Add trigger”

  3. Fill in the trigger detail

    • Trigger name: Observe Trigger

    • Description: Send webhook to Observe

    • Category: Notifications

    • Conditions:

      • Under “Meet ANY of the following conditions”, select the desired condition. Example: “Status Changed”

    • Actions:

      • Select “Notify target” in the left dropdown menu

      • Select the name of your Observe webhook in the right dropdown menu. Example: “ObserveWebhook”

      • In the JSON body text field, provide the desired payload Example:

        Sample JSON
        {
          "title":"{{ticket.title}}",
          "description":"{{ticket.description}}",
          "url":"{{ticket.url}}",
          "id":"{{ticket.id}}",
          "external_id":"{{ticket.external_id}}",
          "via":"{{ticket.via}}",
          "status":"{{ticket.status}}",
          "priority":"{{ticket.priority}}",
          "requester":"{{ticket.requester.details}}"
        }
        

        (Click “View available placeholders” to see a list of available fields

      • Click Create

    JSON body example

Verify ticket data is being ingested

  1. Wait for (or initiate) a ticket status change

  2. Login to Observe and open the Observation event stream in a worksheet

  3. Open the OPAL console and apply the following filters:

    filter OBSERVATION_KIND = "http"
    filter contains(string(EXTRA.path),"zendesk")
    
  4. Verify ticket data exists

    Zendesk data in an Observation worksheet