> For the complete documentation index, see [llms.txt](https://docs.itoc360.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.itoc360.com/integrations/inbound-integrations/observability-and-apm/site24x7-integration.md).

# Site24x7 Integration

### Overview

[Site24x7](https://www.site24x7.com/) provides cloud-based performance monitoring for servers, networks, and websites.

To connect Site24x7 with ITOC360, we use a Custom Webhook. Instead of using Site24x7's default payload, which contains unnecessary logs, we configure it to send a custom JSON template. This ensures the incoming data perfectly matches our Event ➔ Alert ➔ Incident architecture. When ITOC360 receives the payload, it uses the `Status` and `Severity` fields to map the priority and determine whether to trigger an alert or resolve an existing one.

### Provider Configuration & Mapping

When Site24x7 sends a webhook, we extract the exact status using JSONPath.

Priority Mapping Config:

JSON

```
{
  "priority": {
    "field": "$.Severity",
    "options": [
      { "value": "DOWN", "label": "Down" },
      { "value": "CRITICAL", "label": "Critical" },
      { "value": "TROUBLE", "label": "Trouble" }
    ],
    "mapping": {
      "DOWN": "CRITICAL",
      "CRITICAL": "HIGH",
      "TROUBLE": "MEDIUM"
    }
  }
}
```

Event Type Mapping:

* `$.Status == "DOWN"` | `"CRITICAL"` | `"TROUBLE"` ➔ `EventType: ALERT`
* `$.Status == "UP"` ➔ `EventType: RESOLVE`

Correlation (Fingerprint): We use `$.IncidentNumber` (which pulls from Site24x7's `$MONITOR_ID`). This is the unique key that links an active alert to its recovery event.

***

### Setup Instructions

#### Step 1: Get Your Webhook URL

1. Log in to your alert management platform.
2. Go to Sources → Add Source.
3. Select Site24x7 as your provider.
4. Save the configuration and copy the generated Webhook URL.

#### Step 2: Add the Webhook in Site24x7

1. Log in to your Site24x7 account.
2. On the left sidebar, scroll down and click Admin.
3. Click on Third-Party Integrations.
4. From the list of available integrations, select Webhooks.

<figure><img src="/files/1T68j30Tv4U6vYgRXJJb" alt=""><figcaption></figcaption></figure>

#### Step 3: Configure the Payload

Fill out the integration form to match ITOC360's requirements.

1. Integration Name: Type a recognizable name (e.g., `ITOC360`).
2. Hook URL: <https://api.itoc360.app/functions/v1/events>
3. HTTP Method: Leave this as `POST`.
4. Post as JSON: Check this box.
5. Send Incident Parameters: Uncheck this box to disable the default payload.
6. Send Custom Parameters: Check this box. A text area will appear. Paste the following JSON structure exactly as shown:

JSON

```
{
  "IncidentName": "$MONITOR_NAME",
  "IncidentNumber": "$MONITOR_ID",
  "Status": "$STATUS",
  "Severity": "$STATUS",
  "Description": "$INCIDENT_REASON",
  "MonitorUrl": "$MONITORURL",
  "Time": "$TIME"
}
```

<figure><img src="/files/xUUUrdzAPjBdFB7mVPKJ" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/YYXxSM2djC1hAxvzmD5K" alt=""><figcaption></figcaption></figure>

#### Step 4: Select Triggers and Save

Scroll down to the bottom of the form to define when Site24x7 should send alerts.

1. Under Trigger Alerts for Monitor Status Change, make sure you check Down, Trouble, and Critical. *(Note: Site24x7 automatically sends recovery/UP signals, so you don't need to check a box for it here).*
2. Click Save and Test to finish the setup and send a sample payload to your platform.

<figure><img src="/files/9HiLFyp9lkeINUS5ag4w" alt=""><figcaption></figcaption></figure>

### Testing the Integration

When you click Save and Test, Site24x7 immediately fires a mock payload.

1. Check your platform's incoming logs or alerts dashboard.
2. You should see a new event with `Status: "DOWN"` and a description like "Service Unavailable".
3. Confirm that the platform successfully parsed this event and created an Incident with a `CRITICAL` priority.

### Troubleshooting

If the integration does not work as expected, use the following checks to identify the issue.

#### No event appears in ITOC360

* Make sure the Hook URL copied from ITOC360 is pasted correctly in Site24x7.
* Verify that the HTTP Method is set to `POST`.
* Make sure `Post as JSON` is enabled.
* Make sure `Send Custom Parameters` is enabled.
* Confirm that the custom JSON payload is pasted exactly as shown in the setup instructions.
* Click `Save and Test` in Site24x7 and check whether a test event reaches ITOC360.

#### Alerts are not created

* Confirm that the `Status` field is included in the custom JSON payload.
* Make sure the `Status` value is one of the supported alert statuses: `DOWN`, `CRITICAL`, or `TROUBLE`.
* Check that the event type mapping is configured correctly:
  * `DOWN`, `CRITICAL`, `TROUBLE` → `ALERT`
  * `UP` → `RESOLVE`
* Check the incoming event logs in ITOC360 to verify that the payload was received and parsed successfully.

#### Incidents are not resolved automatically

* Confirm that Site24x7 sends an `UP` status when the monitor recovers.
* Make sure the `IncidentNumber` field is included in both alert and recovery payloads.
* Verify that `IncidentNumber` is mapped from `$MONITOR_ID`.
* ITOC360 uses `IncidentNumber` as the correlation key, so the value must stay the same between the alert event and the recovery event.

#### Priority is not mapped correctly

* Confirm that the `Severity` field is included in the custom JSON payload.
* Make sure `Severity` is populated from `$STATUS`.
* Verify that the received value matches one of the configured priority mapping options: `DOWN`, `CRITICAL`, or `TROUBLE`.

#### Webhook test succeeds but real alerts do not appear

* Make sure the integration is assigned to the correct monitors, monitor groups, or all monitors.
* Under `Trigger Alerts for Monitor Status Change`, confirm that `Down`, `Trouble`, and `Critical` are selected.
* Check whether the monitor actually entered one of the selected statuses.
* Review the Site24x7 alert history to confirm that the webhook was triggered.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.itoc360.com/integrations/inbound-integrations/observability-and-apm/site24x7-integration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
