# Webhooks migration guide

> Learn to migrate from the outdated webhooks configuration to the new Uniform version.

Source: https://docs.uniform.app/docs/guides/webhooks/webhooks-migration

> **Affected Users:**
>
> This guide is only relevant to users who created webhooks in
> Uniform before **25th January 2023**. If you are new to Uniform,
> or haven't created any webhooks in your project yet, please refer
> to the documentation on [working with webhooks](https://docs.uniform.app/docs/guides/webhooks).

Users who signed up for the Uniform platform before 18th January,
had access to simple webhook tooling that provided the minimum configuration
needed to setup simple webhook integrations such as site rebuilds. The UI
for this interface can be seen below:

![An example of the old UI](https://docs.uniform.app/images/guides/webhooks/webhooks-migration-older-ui.png)

Although effective for simple jobs, Uniform understood from customers
that more advanced configuration options would be needed to support
some key use cases and to verify and authenticate requests.

On the **25th January 2023**, Uniform implemented a major update to the webhooks
implementation to address some of these gaps. This update adds new
functionality to help developers control their webhooks with finer
granularity, security, and control. Leveraging tooling from [Svix](https://www.svix.com/),
this update provides:

- Verification signatures to protect against man-in-the-middle attacks and replay attacks.
- Better filtering on events and ability to retry or replay events in the event of service downtime.
- More events to choose from when setting up webhooks, and the ability to turn certain events on/off.

## Migrating to the new version of webhooks

Migrating from the old webhooks configuration to the newer version is
a straightforward process. First, you will need to obtain the URL you
used to setup your original webhooks.

![How to copy the necessary URL to migrate your webhook](https://docs.uniform.app/images/guides/webhooks/webhooks-migration-copy.png)

Next, you will create a new webhook following the steps
in the guide here within the new configuration. If you want to
receive the exact same events that were being fired by the original
webhook configuration, be sure to check only these boxes during the
setup of your new webhook instance:

- `composition.published`
- `manifest.published`

> **Important:**
>
> Once complete, make sure to **delete the old webhook configuration**
> to ensure that duplicated events aren't fired to
> your webhook endpoint at the same time.
>
> ![How to delete the old webhook configuration.](https://docs.uniform.app/images/guides/webhooks/webhooks-migration-delete.png)

### Using the new webhook configuration

To learn more about Uniform's webhook features including setup steps
and information on verifying requests, please check out the
[webhook documentation](https://docs.uniform.app/docs/guides/webhooks).

## How to know if the migration is complete?

You will know when the migration process has been completed
as the old configuration settings will no longer be present
when you visit your project's webhooks settings.

If you aren't sure if you have set up your new webhooks instance
correctly or are struggling to use the new interface, please don't
hesitate to [get in touch](mailto:support@uniform.dev).
