> For the complete documentation index, see [llms.txt](https://docs.sprinto.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sprinto.com/ingestion/get-started-with-ingestion-in-sprinto/create-and-manage-webhooks.md).

# Create and Manage Webhooks

Webhooks allow external systems to send data directly into Sprinto.

Each webhook generates a unique endpoint URL that receives incoming requests from external services.

Webhooks are useful when:

* External systems send event-based updates
* Data must reach Sprinto in near real time
* Workflows depend on incoming alerts or notifications
* Scheduled polling is not required

You can use webhooks to:

* Receive incoming payloads
* Trigger ingestion workflows
* Process external events
* Review webhook activity
* Troubleshoot failed requests

***

## Before You Begin

Ensure that:

* You have access to the **Ingestion** module
* A workflow or integration use case has been identified
* Required ingestion plans already exist
* Authentication requirements are known

***

## Open the Webhooks Section

To manage webhooks:

1. Log in to the Sprinto dashboard.
2. Go to **Ingestion**.
3. Open the **Webhooks** tab.

<figure><img src="/files/PDlMQItfncH8P8WDc5T5" alt="" width="563"><figcaption></figcaption></figure>

The Webhooks page displays all configured webhooks.

***

## Review the Webhooks Dashboard

The Webhooks dashboard displays all webhook configurations.

Each row typically includes:

<table><thead><tr><th width="143.5">Column</th><th width="243.95703125">Description</th></tr></thead><tbody><tr><td>Name</td><td>Webhook name</td></tr><tr><td>Description</td><td>Optional explanation</td></tr><tr><td>Status</td><td>Current webhook status</td></tr><tr><td>Created At</td><td>Creation timestamp</td></tr><tr><td>Actions</td><td>Opens webhook details</td></tr></tbody></table>

Use this page to review webhook activity and configuration.

***

## Create a Webhook

Create a webhook when an external system needs to send data into Sprinto.

### Add a Webhook

1. Open the **Webhooks** tab.
2. Click **New Webhook**.
3. Configure the webhook settings.
4. Click **Save**.

<figure><img src="/files/LGDWQG6LciPz2FOQgGAU" alt="" width="563"><figcaption></figcaption></figure>

Sprinto creates the webhook and generates the endpoint URL.

***

## Configure Webhook Information

Webhook creation includes several configuration sections.

***

## Configure Basic Information

Add:

* Name
* Description

Use clear names that identify the external system or workflow.

Examples include:

* Security Alert Webhook
* Device Sync Webhook
* Incident Notification Webhook

<figure><img src="/files/odrbpp79L8eEe5cMEphK" alt="" width="563"><figcaption></figcaption></figure>

***

## Configure Authentication

Authentication validates incoming requests before Sprinto processes them.

Authentication settings may include:

* Tokens
* Signature validation
* Secret keys
* Header-based authentication

The authentication method depends on the external system sending requests.

<figure><img src="/files/OkLoZdnvzynqRgMmsblo" alt="" width="563"><figcaption></figcaption></figure>

***

## Configure Advanced Settings

Advanced configuration controls how Sprinto processes incoming payloads.

Advanced settings may include:

* Event identification
* Payload validation
* Parsing behaviour
* Request handling

These settings help align webhook behaviour with external payload formats.

<figure><img src="/files/Juookc8OqUx6hucZDYw0" alt="" width="563"><figcaption></figcaption></figure>

***

## Configure Rate Limiting

Rate limiting controls how many requests Sprinto accepts within a defined period.

Rate limiting helps:

* Prevent abuse
* Improve webhook stability
* Reduce overload during high-volume activity

<figure><img src="/files/HWqWbbg7CMYjK5zR3jhA" alt="" width="563"><figcaption></figcaption></figure>

***

## Save the Webhook

After configuring the webhook:

1. Review the configuration.
2. Click **Save**.

Sprinto creates the webhook and generates the endpoint URL.

***

## Review Webhook Details

Webhook details provide visibility into configuration and incoming activity.

### Open Webhook Details

1. Locate the required webhook.
2. Click **View**.

<figure><img src="/files/yOdDsP3QL9YiqLpaE1gh" alt="" width="563"><figcaption></figcaption></figure>

Sprinto opens the webhook details page.

***

## Review the Webhook URL

Each webhook includes a generated endpoint URL.

External systems must send requests to this endpoint.

You can copy the URL directly from the webhook details page.

<figure><img src="/files/LoKJyTKvY115pU9FCGJS" alt="" width="563"><figcaption></figcaption></figure>

***

## Test a Webhook

Sprinto provides testing examples to help validate webhook delivery.

### Test Webhook Delivery

1. Open webhook details.
2. Review the provided cURL example.
3. Send a test request to the webhook endpoint.
4. Confirm the request appears in Recent Events.

Testing helps confirm:

* Connectivity
* Authentication
* Payload delivery
* Processing behaviour

***

## Attach a Workflow Plan

Webhooks receive incoming requests, but attached plans determine how those requests are processed.

Without a plan, Sprinto may receive events without processing them into ingestion workflows.

### Attach a Plan

1. Open webhook details.
2. Go to **Attached Plans**.
3. Click **Attach Plan**.

<figure><img src="/files/oNdBp040cU0KF1Toxycn" alt="" width="563"><figcaption></figcaption></figure>

4. Select the required plan.
5. Configure optional settings.
6. Click **Attach**.

<figure><img src="/files/IoUCbX5ajyMq024a3VHj" alt="" width="563"><figcaption></figcaption></figure>

The webhook becomes connected to the ingestion workflow.

***

## Configure Workflow Settings

When attaching a plan, you can configure additional processing behaviour.

### Filter Expressions

Filter expressions determine which events should trigger processing.

Use filters to:

* Ignore unnecessary events
* Restrict processing
* Match specific event types

### Runtime Parameters

Runtime parameters pass values from the incoming payload into the workflow.

This allows workflows to behave dynamically based on incoming data.

***

## Review Recent Events

The **Recent Events** section displays webhook activity.

Use Recent Events to confirm whether requests are reaching Sprinto successfully.

Each event may include:

<table><thead><tr><th width="124.7578125">Field</th><th width="278.61328125">Description</th></tr></thead><tbody><tr><td>Timestamp</td><td>When the request was received</td></tr><tr><td>Status</td><td>Processing result</td></tr><tr><td>Event ID</td><td>Unique event identifier</td></tr><tr><td>Payload</td><td>Incoming request preview</td></tr></tbody></table>

Recent Events help troubleshoot delivery and processing issues.

***

## Edit a Webhook

Webhook configurations can be updated after creation.

### Edit Webhook Configuration

1. Open webhook details.
2. Click **Edit**.

<figure><img src="/files/JzkRizyquRpb2uH23J6J" alt="" width="563"><figcaption></figcaption></figure>

3. Update the required settings.
4. Click **Save**.

<figure><img src="/files/o9HJiyjCYTUdsgLIO3We" alt="" width="563"><figcaption></figcaption></figure>

Changes apply immediately.

***

## Rotate a Webhook ID

Rotating a webhook ID generates a new endpoint URL.

Use rotation when:

* Endpoint URLs are exposed
* Security policies require regeneration
* Existing credentials are compromised

### Rotate the Webhook URL

1. Open webhook details.
2. Click **Rotate ID**.

<figure><img src="/files/5ckLCS4ITYczIfTdgMvQ" alt="" width="563"><figcaption></figcaption></figure>

3. Confirm the action.

Sprinto generates a new endpoint URL.

{% hint style="warning" %}

#### Important

After rotation, previous webhook URLs stop working immediately.
{% endhint %}

***

## Delete a Webhook

Delete a webhook when it is no longer required.

### Delete a Webhook

1. Open webhook details.
2. Click **Delete**.

<figure><img src="/files/cDbBreHWlIrQJFr0lfGC" alt="" width="563"><figcaption></figcaption></figure>

3. Confirm the action.

Deleting a webhook permanently removes the endpoint.

{% hint style="warning" %}

#### Important

Deleting a webhook:

* Removes the endpoint
* Prevents future requests
* Cannot be undone
  {% endhint %}

***

## Troubleshoot Webhook Issues

Use the following checks when webhook requests fail:

* Verify the webhook URL
* Confirm authentication settings
* Review Recent Events
* Validate payload format
* Check rate limiting configuration
* Test using the provided cURL example

Recent Events usually provide the fastest way to identify failed requests.

***

## When to Use Webhooks

Webhooks are recommended when:

* External systems support event delivery
* Real-time updates are required
* Workflows depend on immediate processing
* Polling is unnecessary or inefficient

For scheduled retrieval workflows, ingestion plans may be sufficient without webhooks.

***

## Best Practices

Use the following recommendations when configuring webhooks:

* Use descriptive webhook names
* Configure authentication whenever possible
* Attach plans immediately after webhook creation
* Test webhook delivery before production use
* Use filters to reduce unnecessary processing
* Review Recent Events regularly
* Rotate webhook URLs if exposure occurs
* Delete unused webhooks

***

## Related Topics

* [Get Started with Ingestion in Sprinto](/ingestion/get-started-with-ingestion-in-sprinto.md)
* [Build and Edit Workflows Using AI Editor](/ingestion/get-started-with-ingestion-in-sprinto/build-and-edit-workflows-using-ai-editor.md)
* [Run and Debug Ingestion Workflows](/ingestion/get-started-with-ingestion-in-sprinto/run-and-debug-ingestion-workflows.md)
* [Review Ingested Data and Entity Records](/ingestion/get-started-with-ingestion-in-sprinto/review-ingested-data-and-entity-records.md)
* [Edit Workflows Using YAML Editor](/ingestion/get-started-with-ingestion-in-sprinto/edit-workflows-using-yaml-editor.md)


---

# 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:

```
GET https://docs.sprinto.com/ingestion/get-started-with-ingestion-in-sprinto/create-and-manage-webhooks.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
