Custom Event Transformer Integration Guide

A Custom Event Transformer allows users to reliably convert a payload sent by integrations to a payload understood by PagerDuty, using JavaScript (ES5).

In PagerDuty

  1. From the Configuration menu, select Services.
  2. On the Services page:
    • If you are creating a new service for your integration, click Add New Service.
    • If you are adding your integration to an existing service, click the name of the service you want to add the integration to. Then click the Integrations tab and click the New Integration button.

  3. Select your app from the Integration Type menu and enter an Integration Name. If you are creating a new service for your integration, in General Settings, enter a Name for your new service. Then, in Incident Settings, specify the Escalation Policy, Notification Urgency, and Incident Behavior for your new service.

  4. Click the Add Service or Add Integration button to save your new integration. You will be redirected to the Integrations page for your service.

  5. After adding your service, go to the Integrations tab and click on the name for your custom event transformer integration.

     cet__1_

  6. From there, click on the Show JavaScript button. You will have some pre-populated code which would create an event with the raw body of the request in the body.

     cet__2_cet__3_

  7. To update the JavaScript, click on the Edit Integration button.

    custom-event-transformer-04

  8. From this page you can update the JavaScript to convert the incoming payload as necessary for this integration. When you have completed your updates, click on Save changes to save your new transformer. Details on creating a Custom Event Transformer can be found in the PagerDuty API Developer Documentation.

    custom-event-transformer-05

  9. FAQ

    What tools can we integrate with using the Custom Event Transformer?

    The Custom Event Transformer can be integrated with any tool that can send an HTTP request. The integration is built to allow the incoming payload to be manipulated into a format that PagerDuty understands.

    Will the transformer automatically parse the body of my request?

    The PD object contains both rawBody and body properties. If a valid Content-type is given in the request, the body property will contain the parsed data.

    How does the custom event transformer deduplicate events?

    The transformer deduplicates events based upon the incident_key property within the normalized_event object.