> For the complete documentation index, see [llms.txt](https://premint.gitbook.io/vulcan/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://premint.gitbook.io/vulcan/products/verify-roles/custom-webhook.md).

# Custom Webhook

We're starting pretty simple with this feature. All you need to do is create a hidden endpoint that Vulcan can ping with a JSON payload that is a wallet address.

We will POST to that endpoint with the following payloads:

For a single user's wallet:

```
{
  "wallet": [eth wallet address],
}
```

For a list of the user's wallets:

```
{
    "wallets": ["eth wallet address1", "eth wallet address2"],
}
```

We will expect a `200` response with the following:

```
{
  'success': true,
}
```

To give the role, success should be `True`. To not give the role, success should be `False`.

If the wallet address isn't found, return a `404.`

Vulcan performs a daily recheck and will add/remove roles accordingly based on the response from your API.

There's a lot more we can add over time, but this is a v1 to get people started.
