> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uniblock.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhook Quickstart

> Set up your first Uniblock webhook to receive real-time blockchain event notifications.

<Info>
  You'll need a project and API key from the [Uniblock dashboard](https://dashboard.uniblock.dev) before setting up a webhook.
</Info>

Webhooks let you receive real-time notifications whenever specific blockchain events occur — no polling required. Uniblock sends a signed HTTP POST request to your server each time a matching event fires, covering transactions, token transfers, contract events, and new blocks.

## Webhook setup

Navigate to the **Webhooks** section in the Uniblock dashboard and click **Create Webhook**. A four-step form expands inline.

<Steps>
  <Step title="Add webhook information">
    Give the webhook a **name** and **description** — these are for your reference in the dashboard only and don't affect delivery.

    Enter your **webhook URL**: the public HTTPS endpoint on your server that will receive POST requests. Hit the **Test** button to send a sample payload and confirm the URL is reachable before proceeding.

    <Tip>
      If you don't have a server yet, use [webhook.site](https://webhook.site/) or [typedwebhook.tools](https://typedwebhook.tools/) to get a temporary URL for testing.
    </Tip>
  </Step>

  <Step title="Select provider and network">
    Choose the **provider** you want to deploy the webhook through. Each provider supports a different set of networks, so the network list updates based on your selection.

    Select the **network** (chain) you want to monitor — for example, Ethereum Mainnet, Polygon, or Base.
  </Step>

  <Step title="Select a webhook type">
    Choose how to define the webhook:

    * **Webhook templates** — pre-built configurations for common use cases (popular token contracts, standard ABIs). Pick a template to auto-fill most fields.
    * **Custom webhook** — full flexibility; you fill in all fields manually. Use this for any contract or event not covered by a template.
  </Step>

  <Step title="Add events and filters">
    This step narrows which on-chain activity triggers the webhook:

    * **Address activity** — monitor one or more wallet or contract addresses. Add optional transaction filters (e.g. minimum value, direction) to reduce noise.
    * **Contract event** — select a specific ABI event to listen for (required). Add event filters to match only certain parameter values (optional).
    * **Solana address activity** — same as address activity but scoped to Solana. Add Solana-specific transaction filters as needed.
  </Step>

  <Step title="Deploy">
    Click **Deploy**. The webhook becomes active immediately and appears in your active webhooks list. Uniblock begins forwarding matching events to your URL as they occur on-chain.
  </Step>
</Steps>

***

## Configuration fields

| Field                 | Description                                                                              | Example                                               |
| --------------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------- |
| **Event name**        | Label for the webhook in the dashboard                                                   | `ERC-20 Transfer — My Wallet`                         |
| **Event description** | Short note on what this webhook tracks                                                   | `Fires on any ERC-20 transfer in or out of my wallet` |
| **Webhook URL**       | Public HTTPS endpoint that accepts POST requests                                         | `https://yourapp.com/hooks/uniblock`                  |
| **Provider**          | Blockchain data provider to deploy through (e.g. Moralis, Tatum)                         | Varies by chain support                               |
| **Network**           | Chain to monitor                                                                         | Ethereum Mainnet, Polygon, Base, etc.                 |
| **Additional fields** | Vary by webhook type — see [Event Trigger Types](/reference/webhook/event-trigger-types) | Addresses, contract address, ABI, filters             |

**Keep in mind:**

* Your webhook URL must be publicly reachable and able to handle the expected POST volume.
* Validate the `X-Uniblock-Signature` header on incoming requests to confirm payloads are from Uniblock.

***

## Supported chains

| Chain           | Networks                |
| --------------- | ----------------------- |
| Ethereum        | Mainnet, Sepolia        |
| Arbitrum        | Mainnet, Sepolia        |
| Optimism        | Mainnet, Sepolia        |
| Polygon         | Mainnet, Mumbai, Amoy   |
| zkSync          | Mainnet, Sepolia        |
| Base            | Mainnet, Sepolia        |
| Avalanche       | C-Chain                 |
| BNB Smart Chain | Mainnet, Testnet        |
| Fantom          | Opera, Testnet          |
| Gnosis          | Mainnet, Chiado Testnet |
| Solana          | Mainnet                 |

***

## Webhook endpoints

| Endpoint                                | Description                                  |
| --------------------------------------- | -------------------------------------------- |
| `POST /webhook/address-activity`        | Track activity for one or more EVM addresses |
| `POST /webhook/contract-event`          | Trigger on a specific contract event         |
| `POST /webhook/solana-address-activity` | Track activity for Solana addresses          |
| `PATCH /webhook/{id}`                   | Update an existing webhook                   |
| `DELETE /webhook/{id}`                  | Remove a webhook                             |
