ServiceNow

Send logs to ServiceNow triggered by Apono Access events

ServiceNow is a cloud-based platform that provides IT service management (ITSM) and business process automation tools. It enables organizations to streamline and automate various workflows, such as IT operations, customer service, and HR.



Prerequisites

ItemDescription
ServiceNow AccountAccount with the Administrator role
ServiceNow Application RegistrationRegistration that enables Apono to use OAuth authorization

Be sure to copy the client_id and client_secret. You will use these values to generate the ServiceNow API token.
ServiceNow InformationInformation for the ServiceNow instance:
  • Instance ID
  • Username
  • Password

Follow these steps to retrieve the ServiceName information:

  1. On the ServiceNow Developers home page, click your account icon > Manage instance password. The Manage instance password popup window appears.
  2. Copy the Instance name, Username, and Password.
ServiceNow API tokenCredential generated with a username and a password and used when making requests to the ServiceNow API


Create the webhook

Follow these steps to configure a webhook:

  1. On the Webhooks page, click Add Webhook. The Add Webhook page appears.
  2. Enter a unique, alphanumeric, user-friendly Name for identifying this webhook.
  3. Click the Status toggle to Active.
  4. From the Method dropdown menu, select POST.
  5. In the URL field, enter https://<SERVICENOW_INSTANCE_ID>.service-now.com/api/now/table/incident.

    Be sure to replace <SERVICENOW_INSTANCE_ID> with the instance ID.

    ⚠️

    The webhook URL must adhere to the following requirements:

    • Uses the HTTPS protocol
    • Does not specify any custom ports

  1. In the Body Template field, enter the JSON payload data for the webhook.
    {
      "caused_by": "{{ data.requester.name }}",
      "short_description": "{{ data.access_groups.[0].integration.name }}",
      "cause": "{{ event_type }}",
      "description": "{ \"event_type\": \"{{ event_type }}\", \"event_time\": \"{{ event_time }}\", \"id\": \"{{ data.id }}\", \"friendly_id\": \"{{ data.friendly_id }}\", \"requester_id\": \"{{ data.requester.id }}\", \"requester_name\": \"{{ data.requester.name }}\", \"requester_email\": \"{{ data.requester.email }}\", \"justification\": \"{{ data.justification }}\", \"creation_date\": \"{{ data.creation_date }}\", \"access_flow_id\": \"{{ data.access_flow.id }}\", \"access_flow_name\": \"{{ data.access_flow.name }}\", \"access_bundle_id\": \"{{ data.access_bundle.id }}\", \"access_bundle_name\": \"{{ data.access_bundle.id }}\", \"access_groups_integration_name\": \"{{ data.access_groups.[0].integration.name }}\", \"access_groups_integration_type\": \"{{ data.access_groups.[0].integration.type }}\"}",
      "reopened_by": "apono app"
    }
    

    💡

    Click View event's payload schema to reveal the payload schema and available data fields. You can also refer to the Webhook Payload Schema Reference to read the descriptions of each data field.


  1. Under Headers, use the following Key and Value to set the header. Be sure to replace <SERVICENOW_TOKEN> with the ServiceNow API token.

    KeyValue
    AuthorizationBearer <SERVICENOW_TOKEN>

  1. From the Triggers dropdown menu, select one or more of the following event triggers, which correspond to Apono access request statuses:
    • RequestCreated
    • RequestApproved
    • RequestRejected
    • RequestGranted
    • RequestExpired
    • RequestFailed
    • Manual
  2. Under Filters, define one or several filter from the listed dropdown menus.
  3. Click Test to generate a test event to trigger your webhook. A Test successful or Test failed response status will appear at the bottom of the page.

    💡

    For more information about the test, click View Invocation Data. A panel opens revealing the request, response, and other relevant details.

    Should your test fail, view these tips to troubleshoot your webhook.


  1. Click Save Webhook.

The new webhook appears in the Webhooks table. Active webhooks are preceded by a green dot. Inactive webhooks are preceded by a white dot.

Apono access request logs will be sent to ServiceNow based on the triggers you have selected.