Custom payload in alerts integration

reference brazil Updated Sep 10, 2026 2 min read custom-payload-help-guide-impact.md
Raw file servicenow.com

Instance Observer integrations enable you to define and manage custom JSON request payload for ServiceNow and third-party integrations.

You can now include additional fields in notification payloads, exclude specific data that is not required by the target system, format the payload to align with specific third-party API requirements or internal business logic, eliminating the need for complex scripted REST APIs on the customer side.

  • Use either the default payload or customize it to include additional data as needed.
  • Modify the default payload, if needed, which is displayed in the Editor window on the left.
  • Modify either the key or the value, or both as each parameter consists of a key and a value.
  • The Preview section on the right displays the expected JSON payload after rendering.
  • If the JSON is invalid, errors are highlighted, and the option to save is disabled.

Default mustache payload template

JSON
{  "alert_number": "{{alert_number}}",  "alert_type": "{{alert_type}}",  "alert_name": "{{alert_name}}",  "alert_time": "{{alert_time}}",  "instance": "{{instance}}",  "description": "{{description}}",  "alert_created": "{{alert_created}}"}

[Omitted image "io-default-mustache-payload.png"] Alt text: Edit payload for default mustache payload template.

Example: Default Payload + Custom Parameters

YAML
{"alert_number": "{{alert_number}}",  "alert_type": "{{alert_type}}",  "alert_name": "{{alert_name}}",  "alert_time": "{{alert_time}}",  "instance": "{{instance}}",  "description": "{{description}}",  "alert_created": "{{alert_created}}",  "Custom_message": "{{alert_name}}' of type {{alert_type}} generated for {{instance}} at {{alert_time}}. Please review.",  "Severity": “High”}

[Omitted image "io-default-payload-cust-param.png"] Alt text: Edit payload for default payload + custom parameters.

Custom parameters and limits

The custom_parameter field allows you to insert custom message into the JSON template, you can also use the existing parameters as shown in the custom parameter samples.

The limitations are:

  • Required: At least one and at most 20 parameters to save the template.
  • Maximum: 13 custom parameters.
  • If exceeded, a warning appears: Template must have at least one default key and up to 20 keys. Adjust or select 'Reset to Default' to apply defaults.

Samples of custom parameters for syntax reference

"Information": "An alert {{alert_name}} has been triggered for {{instance}} at {{alert_time}} Description: {{description}}"

"Alert_message": "New alert '{{alert_name}}' of type {{alert_type}} generated for {{instance}} at {{alert_time}}. Please review."

"Event_type": "Severity-High! An alert {{alert_name}} has been triggered for {{instance}} at {{alert_time}} Description: {{description}}"

Third-party request body mapping

Some third-party integrations require specific key names. You can modify the default payload to match their expected format.

Example: Third-party request body:

JSON
{  "endTime": 1,  "entitySelector": "string",  "eventType": "AVAILABILITY_EVENT",  "properties": {},  "startTime": 1,  "timeout": 1,  "title": "string"}

Modified IO payload to match third-party format

[Omitted image "io-modified-io-payload.png"] Alt text: Modified IO payload to match third-party format.

Actions and validation

  • Revert Changes

    Restores the last saved content.

  • Reset to Default

    Resets the template to its default payload.

  • Syntax Validator

    Ensures JSON validity before saving. Errors prevent saving.

  • Test Integration

    Sends a sample notification to verify webhook integration.

Parent Topic:Use alerts to monitor your instance

Search documentation
Search document titles and file paths on the brazil branch