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 Account

Account with the Administrator role

ServiceNow Application Registration

Registration 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 Information

Information 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 token

Credential generated with a username and a password and used when making requests to the ServiceNow API.


Configure a webhook

Follow these steps to configure a ServiceNow 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 a REST method. Apono supports POST, PUT, and DELETE.

  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, construct a JSON body for the webhook payload.

{
  "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

    Authorization

    Bearer <SERVICENOW_TOKEN>

  2. 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

  3. Under Filters, define one or several filter from the listed dropdown menus.

Filters empower admins to control the data transmitted via webhooks, minimizing the amount of data third-party tools receive and reducing unnecessary clutter.

Examples:

  • Send only production requests to your admins' Slack channel.

  • Trigger Okta workflows for events from specific integrations or resource types.

  • Open a ticket in Jira or ServiceNow for manually approved requests.

  1. 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. A successful test will send mock data to the target system.

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.

Last updated