Create Webhook

This endpoint is used to create a webhook.

🚧

Certain webhook events with high volumes require whitelisting to be used - please contact [email protected] if you'd like to use any of the following:

chain.transfer, chain.floor_price_update, chain.listing_added, chain.listing_modified, chain.listing_removed

Request Examples

Example 1 - Creating a webhook to subscribe to three wallets addresses for wallet inbound and outbound transfers for 3 mainnet chains.

{
    "webhook_url": "https://example.com/webhook_receiver",
    "event_types": [
        "wallet.inbound_transfer",
        "wallet.outbound_transfer"
    ],
    "wallet_addresses": [
        "0xc31C535F4d9A789df0c16D461B4F811543b72FEb",
        "0xF6E43830663D155CA4C184F3A9a1fCD2b82A3eb8",
        "0x3652689121d86Ba8aC1700057842993bFB12a51B"
    ],
    "chains": [
        "ethereum",
        "solana",
        "polygon"
    ]
}

Example 2 - Creating a webhook to subscribe to NFT transfer events for 4 NFTs.

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "nft.transfer"
    ],
    "nft_ids": [
        "ethereum.0x05b1ef501cfdeed15f73bfc4a926e528cd95d190.6120",
        "solana.2iZBbRGnLVEEZH6JDsaNsTo66s2uxx7DTchVWKU8oisR",
        "solana.3knghmwnuaMxkiuqXrqzjL7gLDuRw6DkkZcW7F4mvkK8",
        "ethereum.0xed5af388653567af2f388e6224dc7c4b3241c544.2767"
    ]
}

Example 3 - Creating a webhook to subscribe to contract transfer events (including mints/burns) & specifying a custom webhook_secret for message signature verification.

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "contract.transfer"
    ],
    "contract_addresses": [
        "ethereum.0x495f947276749ce646f68ac8c248420045cb7b5e"
    ],
    "webhook_secret": "d2pxazhtNnhnaGZuN3FhMGZ3aDZhZmxj"
}

Example4 - Creating a webhook to subscribe to NFT metadata updates for all NFTs on one or more contracts

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "contract.nft_metadata_update"
    ],
    "contract_addresses": [
        "ethereum.0x495f947276749ce646f68ac8c248420045cb7b5e"
    ],
}

Example 5 - Creating a webhook to subscribe to NFT metadata updates for all NFTs on one or more chains

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "chain.nft_metadata_update"
    ],
    "chains": [
        "ethereum"
    ]
}

Example 6 - Creating a webhook to subscribe to floor price updates for a collection on blur, opensea, looksrare and x2y2

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "collection.floor_price_update"
    ],
    "collection_ids": [
        "510139ec0d8cf5513d59a8d3afa1c061"
    ],
    "marketplaces": [
        "blur",
        "opensea",
        "looksrare",
        "x2y2"
    ]
}

📘

Use chain.floor_price_update to subscribe to floor price updates by chain

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "chain.floor_price_update"
    ],
    "chains": [
        "ethereum"
    ],
    "marketplaces": [
        "blur",
        "opensea",
        "looksrare",
        "x2y2"
    ]
}

Example 7 - Creating a webhook to subscribe to collection transfer events (including mints/burns).

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "collection.transfer"
    ],
    "collection_ids": [
        "510139ec0d8cf5513d59a8d3afa1c061"
    ],
}

Example 8 - Creating a webhook to subscribe to listing (added, modified & removed) events for ethereum chain.

{
    "webhook_url": "https://example.com/webhook_listener",
    "event_types": [
        "chain.listing_added",
        "chain.listing_modified",
        "chain.listing_removed"
    ],
    "chains": [
        "ethereum"
    ]
}

🚧

Conditional Required Parameters

wallet_addresses and chains are required for wallet events.

nft_idsare required for nft events.

contract_addresses are required for contract events.

chains are required for chain events.

collection_ids are required for collection events. In addition, marketplaces is required for collection.floor_price_update

👍

Webhook event_types must have a unique entity

event_types: event_types must have a unique entity

wallet.inbound_transfer and wallet.outbound_transfer have unique entity: wallet

Entities in the following event_types are not unique

event_types: the following event_types are not unique

collection.transfer and chain.transfer do not have unique entities.

📘

Limits

The create webhook POST endpoint supports up to 200 nft_ids, contract_addresses,collection_ids and 1000 (per webhook) wallet addresses. We can support up to 100K wallets per webhook. Please contact [email protected] for limit increases.

Use the Update Webhook endpoint to add / remove wallet_addresses after creating a webhook.

See https://simplehash.readme.io/reference/webhook-events for a full list of webhook events and supported entities.

Body Params
string
required
Defaults to https://example.com/webhook_listener

HTTPS url to receive webhook

event_types
array of strings
required
Defaults to wallet.inbound_transfer,wallet.outbound_transfer

List of event types for a unique entity (wallet, nft)

event_types*
chains
array of strings
Defaults to ethereum,polygon,solana

List of chains

chains
wallet_addresses
array of strings
Defaults to 0xfa6E0aDDF68267b8b6fF2dA55Ce01a53Fad6D8e2

List of owner wallet address(es)

wallet_addresses
nft_ids
array of strings

The list of NFT IDs. chain.contract.token_id for EVM chains, chain.token_id for Solana.

nft_ids
string

We will sign messages sent to webhook_url using webhook_secret. webhook_secret will be autogenerated if not specified. Secret should only contain alphanumeric characters [A-Za-z0-9]. Min/Max length: [32,64]. Recommended length: 32. webhook_secret will be stored in base64

contract_addresses
array of strings
Defaults to ethereum.0x582048c4077a34e7c3799962f1f8c5342a3f4b12,solana.28PLEmWxWF2oib7Wh2TKoH3XVNuWyaxLejveBHLtFkJo

List of contract addresses. List[chain.contract_address,...]

contract_addresses
collection_ids
array of strings
Defaults to 510139ec0d8cf5513d59a8d3afa1c061

List of collection ids. List[collection_id,...]

collection_ids
marketplaces
array of strings
Defaults to opensea,x2y2,looksrare

List of marketplaces. List[marketplace,...]

marketplaces
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
LoadingLoading…
Response
Choose an example:
application/json
text/plain