OpenAPI-specificatie
Bekijk de volledige OpenAPI-specificatie voor deze REST-API.
Overzicht
Met de Webhooks API kunt u uw Webhooks implementeren en beheren Webhooks een REST API-interface.
Het toevoegen, bijwerken en beheren van je Webhooks snel en eenvoudig!
Toegang
Om toegang te krijgen tot de Webhooks API, moet je eerst een API-sleutel. Je API-sleutel moet worden ingesteld als een x-api-key koptekst met uw verzoeken.
Base van de API: quicknode
Ondersteunde netwerken
De Webhooks API is beschikbaar op de volgende blockchains en netwerken:
| Ketting | Mainnet | Testnetten |
|---|---|---|
| 0g | ✅ | Galileo Testnet |
| Abstract | ✅ | Testnet |
| Arbitrum | ✅ | Sepolia |
| Arbitrum | ✅ | |
| Arc | Testnet | |
| Ault | ✅ | Testnet |
| Avalanche | ✅ | Fuji |
| B3 | ✅ | Sepolia |
| Base | ✅ | Sepolia |
| Bera | ✅ | Bepolia |
| Bitcoin | ✅ | Testnet4 |
| Bitcoin | ✅ | Testnet |
| Blast | ✅ | Sepolia |
| BNB Smart Chain | ✅ | Testnet |
| Celo | ✅ | |
| Cyber | ✅ | Sepolia |
| Dogecoin | ✅ | |
| Ethereum | ✅ | Hoodi, Sepolia |
| Fantom | ✅ | |
| Flare | ✅ | Testnet |
| Flow | ✅ | Testnet |
| Fluent | Testnet | |
| Fraxtal | ✅ | |
| Gnosis | ✅ | |
| Gravity | ✅ | |
| Hedera | ✅ | Testnet |
| Hemi | ✅ | Testnet |
| Hyperliquid | ✅ | Testnet |
| Hyperliquid | ✅ | |
| Immutable | ✅ | Testnet |
| Injective | ✅ | Testnet |
| Ink | ✅ | Sepolia |
| Japan Open Chain | ✅ | |
| Kaia | ✅ | Testnet |
| Katana | ✅ | |
| Linea | ✅ | |
| Lisk | ✅ | |
| Litecoin | ✅ | Testnet |
| Mantle | ✅ | Sepolia |
| MegaETH | ✅ | |
| Moca | Testnet | |
| Mode | ✅ | |
| Monad | ✅ | Testnet |
| Morph | ✅ | Hoodi |
| Optimism | ✅ | Sepolia |
| Peaq | ✅ | |
| Plasma | ✅ | Testnet |
| Polygon | ✅ | Amoy |
| Robinhood | ✅ | Testnet |
| Sahara | Testnet | |
| Scroll | ✅ | |
| Sei | ✅ | Testnet |
| Solana | ✅ | Devnet, Testnet |
| Soneium | ✅ | |
| Sonic | ✅ | |
| Stellar | ✅ | Testnet |
| GEGEVENS | ✅ | Aeneid Testnet |
| Tempo | ✅ | Testnet |
| Tron | ✅ | |
| Unichain | ✅ | Sepolia |
| Vana | ✅ | Moksha Testnet |
| Worldchain | ✅ | Sepolia |
| X Layer | ✅ | Testnet |
| XRP Ledger | ✅ | Testnet |
| XRPL EVM | ✅ | Testnet |
| zkSync | ✅ | Sepolia |
| Zora | ✅ |
API-eindpunten
De Webhooks API biedt de volgende eindpunten voor het beheren van je webhooks:
Webhooks aanmaken
Webhooks aangemaakt met behulp van vooraf gedefinieerde sjablonen die veelvoorkomende toepassingen omvatten:
- Webhook aanmaken op basis van een sjabloon: Maak een webhook aan met behulp van vooraf gedefinieerde sjablonen
Als u een filter nodig hebt dat niet in onze sjablonen is opgenomen, neem dan contact op met de helpdesk om een nieuw sjabloon aan te vragen. Voor geavanceerde filtermogelijkheden met aangepaste JavaScript-functies kunt u overwegen om gebruik te maken van Streams.
Beschikbare sjablonen
- evmWalletFilter: Bepaalde EVM-walletadressen in de gaten houden
- evmContractEvents: Bepaalde contractgebeurtenissen volgen
- evmAbiFilter: Contracten controleren aan de hand van ABI-definities
- solanaWalletFilter: Bepaalde Solana in de gaten houden
- bitcoinWalletFilter: Bepaalde Bitcoin -adressen in de gaten houden
- xrplWalletFilter: Bepaalde XRP Ledger in de gaten houden
- hyperliquidWalletEventsFilter: Bepaalde Hyperliquid in de gaten houden
- stellarWalletTransactionsSourceAccountFilter: Bepaalde Stellar in de gaten houden
Hoe gebruik je sjablonen?: Bij het aanmaken van een webhook op basis van een sjabloon, wordt de templateArgs Het object bevat de sjabloonspecifieke eigenschappen rechtstreeks. Het sjabloontype wordt aangegeven in het URL-pad (webhooks{templateId}), en de templateArgs bevat de daadwerkelijke configuratiegegevens voor dat sjabloon. Je kunt zowel inline-waarden opgeven (bijvoorbeeld rechtstreeks wallet-adressen) als verwijzingen naar namen van lijsten in de KV-opslag.
Voorbeeld: Voor de evmWalletFilter sjabloon, dan zou je het volgende doen:
- Gebruik deze URL:
webhooks - Opnemen in de hoofdtekst (inline):
"templateArgs": { "wallets": ["0x1234..."] } - Of (lijstverwijzing):
"templateArgs": { "walletsListName": "my_wallets_list" }
Verwijzen naar een lijst met KV-opslagplaatsen in templateArgs geeft de webhook alleen aan welke lijst moet worden gebruikt — de inhoud van de lijst wordt hierdoor niet bijgewerkt. Om items aan die lijst toe te voegen of eruit te verwijderen, gebruik je de endpoint ‘Update List’ van de Key-Value Store API’s.
Webhooks beheren
- Alle Webhooks ophalen: Geef een overzicht van alle actieve webhooks
- Webhook ophalen op basis van ID: Details van een specifieke webhook ophalen
- Webhook bijwerken: De configuratie van een bestaande webhook wijzigen
- Webhook-sjabloon bijwerken: Een webhook bijwerken die is aangemaakt op basis van een sjabloon
- Webhook verwijderen op basis van ID: Een specifieke webhook verwijderen
- Alle Webhooks verwijderen: Alle webhooks verwijderen
Webhooks beheren
- Webhook activeren: Een gepauzeerde webhook starten
- Webhook pauzeren: Een webhook tijdelijk pauzeren
Authenticatie
Voor alle API-verzoeken is authenticatie vereist met behulp van je Quicknode . Vermeld je API-sleutel in de verzoekheaders:
x-api-key: UW_API-SLEUTEL
Foutafhandeling
De API retourneert standaard HTTP-statuscodes:
200 OK: Verzoek geslaagd201 Aangemaakt: Bron succesvol aangemaakt400 Ongeldig verzoek: Ongeldige verzoekparameters401 Toegang geweigerd: Ongeldige of ontbrekende API-sleutel
Webhook-configuratie
Bij het aanmaken of bijwerken van webhooks kun je de volgende parameters instellen:
- Naam: Een beschrijvende naam voor je webhook
- Netwerk: Het blockchain-netwerk dat moet worden gemonitord
- Kennisgevings-e-mail: e-mailadres voor kennisgevingen van beëindiging
- Bestemmingskenmerken: Object met de volgende inhoud:
- URL: Het endpoint de gegevens worden verzonden
- Beveiligingstoken: token voor webhook-authenticatie
- Compressie: Optionele gzip-compressie voor payloads
- Status: Of de webhook actief is of gepauzeerd
- Sjabloonargumenten: Sjabloonspecifieke argumenten (voor op sjablonen gebaseerde webhooks)
Op sjablonen gebaseerde Webhooks
webhooks op basis van sjablonen webhooks een eenvoudige manier om veelgebruikte webhook-configuraties aan te maken:
evmWalletFilter
Bepaalde EVM-walletadressen in de gaten houden:
{
"templateArgs": {
"wallets": ["0x1234...", "0x5678..."]
}
}
evmContractEvents
Bepaalde contractgebeurtenissen bijhouden (beide velden zijn optioneel, maar er moet ten minste één worden ingevuld):
{
"templateArgs": {
"contracts": ["0x1234..."],
"eventHashes": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"]
}
}
solanaWalletFilter
Bepaalde Solana in de gaten houden:
{
"templateArgs": {
"accounts": ["9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"]
}
}
bitcoinWalletFilter
Bepaalde Bitcoin -adressen in de gaten houden:
{
"templateArgs": {
"wallets": ["bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh"]
}
}
evmAbiFilter
Contracten controleren aan de hand van ABI-definities (abi is vereist, contracten (is optioneel):
{
"templateArgs": {
"abi": "[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"from\",\"type\":\"address\"}]}]",
"contracts": ["0x1234..."]
}
}
xrplWalletFilter
Bepaalde XRP Ledger in de gaten houden:
{
"templateArgs": {
"wallets": ["rN7n3473SaZBCG4dFL83w7p1W9cgZw6]"]
}
}
hyperliquidWalletEvenementenFilter
Bepaalde Hyperliquid in de gaten houden:
{
"templateArgs": {
"wallets": ["0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"]
}
}
stellarWalletTransactiesBronrekeningFilter
Bepaalde Stellar in de gaten houden:
{
"templateArgs": {
"wallets": ["GDQP2KPQGKIHYJGXNUIYOMHARUARCA7DJT5FO2FFOOUJ3B2BNQKFIGS"]
}
}
Lijstverwijzingen gebruiken
In plaats van waarden direct in de code op te geven, kun je verwijzen naar lijsten in de KV-opslag. Dit is handig voor het beheren van grote verzamelingen adressen:
{
"templateArgs": {
"walletsListName": "my_wallets_list"
}
}
Voor contractgebeurtenissen met kv-opslaglijsten:
{
"templateArgs": {
"contractsListName": "my_contracts_list",
"eventHashesListName": "my_event_hashes_list"
}
}
Geavanceerd filteren
Als je geavanceerde filtermogelijkheden met aangepaste JavaScript-functies wilt, kun je overwegen om gebruik te maken van Streams, dat volledige ondersteuning biedt voor aangepaste filterfuncties. Streams u op JavaScript gebaseerde filterlogica schrijven om blockchain-gegevens te verwerken en te filteren voordat ze worden geleverd.
Raadpleeg de documentatie over filters voor meer informatie over filterfuncties in Streams.
Webhook-verzending
Wanneer een webhook wordt geactiveerd, Quicknode een POST-verzoek naar de door u opgegeven URL met de gefilterde blockchain-gegevens. De payload bevat:
- data: De gefilterde blockchain-gebeurtenissen
- metadata: Informatie over de webhook en de verzending
Beveiliging
HMAC-verificatie (aanbevolen)
De aanbevolen manier om endpoint bestemmings endpoint van je webhook te beveiligen endpoint door HMAC-verificatie te implementeren. Deze cryptografische methode zorgt ervoor dat de binnenkomende berichten afkomstig zijn van Webhooks niet zijn gemanipuleerd. Raadpleeg onze handleiding over het valideren Streams binnenkomende Streams voor gedetailleerde informatie over het implementeren van HMAC-verificatie.
IP-toegangslijst (extra beveiliging)
Als extra beveiligingsmaatregel kun je de toegang tot je endpoint beperken endpoint bepaalde IP-adressen. Webhooks gegevens vanaf het volgende IP-adres:
141.148.40.227
Door dit IP-adres aan je toelatingslijst toe te voegen, kun je een extra beveiligingslaag aanbrengen om ervoor te zorgen dat alleen legitiem Webhooks door je webhook-server wordt geaccepteerd.
Hulp krijgen
Als je hulp nodig hebt bij de Webhooks API:
- Raadpleeg de Webhooks
- Raadpleeg de documentatie over filters
- Bekijk onze gidsen
- Contact our support team