Met uitgaande webhooks ontvang je automatisch meldingen zodra er iets verandert in Print.one. Je eigen systemen (bijvoorbeeld een CRM, dashboards of externe software) kunnen daardoor direct reageren op deze updates. Uitgaande webhooks noem je ook wel HTTP-callbacks.
Zodra er een gebeurtenis in Print.one plaatsvindt, sturen wij een HTTP-request naar de door jou ingestelde URL. Je systeem kan het request lezen en hier iets mee doen, zoals:
Een status tonen in je dashboard
Een CRM bijwerken
Een interne notificatie versturen
Er zijn verschillende soorten triggers die door het systeem van Print.one worden verzonden. Deze zijn te vinden in onze API-documentatie. Daar vind je ook een overzicht van alle beschikbare triggers en voorbeelden van payloads die bij elke trigger verzonden worden.
Reageert jouw server niet binnen 30 seconden? Dan verloopt het verzoek en wordt het als mislukt beschouwd. Het duurt soms langer dan 30 seconden om bepaalde acties te doen met webhooks. We raden daarom aan om de webhookverzoeken asynchroon te verwerken. Dat houdt in dat je systeem eerst een bevestiging terugstuurt, zoals een 200-response, zodat Print.one weet dat de webhook goed is ontvangen en pas daarna op de achtergrond de rest afhandelt.
Voor lokale tests raden we voor het inspecteren van webhook-uitzendingen aan om httpdump.app te gebruiken. Voor het bouwen van webhook-consumenten op je ontwikkelmachine raden we ngrok aan.
Webhooks instellen
1. Ga in de navigatie naar Integrate → Webhooks
2. Klik op Create webhook
3. Kies de URL, triggers en eventuele filters
4. Sla de configuratie op

Een trigger bepaalt met welke gebeurtenissen Print.one een webhook naar jouw systeem stuurt. Je kunt meerdere triggers selecteren. Elke trigger is een aparte webhook en elke keer dat een gekozen gebeurtenis plaatsvindt, sturen we je één webhook.
Bepaalde triggers ondersteunen filters om meldingen specifieker te maken. Als de trigger filters ondersteund, zal na het activeren van de trigger het ‘Filters’ onderdeel getoond worden:

Als je meerdere filters instelt, moeten alle filters kloppen voordat een webhook verzonden wordt. Filters kunnen tot vier verschillende ‘matcher’s’ ondersteunen:
equals or not-equals: Deze controleren of de property gelijk is aan de aangegeven waarde → is een exacte vergelijking
in or not-in: Deze controleren of de property gelijk is aan 1 van de opgegeven waardes → de waarde moet, of mag juist niet, voorkomen in een lijst
Standaard bevatten alle webhooks de volgende headers:
Headernaam | Waarde |
|---|---|
|
|
| Webhook signature, used to validate the request |
|
|
|
|
Soms moet je een webhook uitschakelen, omdat je bijvoorbeeld onderhoud moet plegen aan de server die webhooks ontvangt of door andere problemen. In de configuratie kun je een webhook pauzeren en op inactief zetten. Haal hiervoor het vinkje bij ‘Active’ weg en er worden geen verzoeken meer naar de externe server gestuurd.
Om zeker te weten dat een webhook ook echt van ons komt, wordt elke webhook ondertekend met een signature. Op de overzichtspagina van je webhooks vind je je webhook secret.
Deze secret gebruik je om:
Dezelfde signature te berekenen om de oorsprong van het verzoek te valideren
Te controleren of het overeenkomt met de signature die wij meesturen
Te bevestigen of het verzoek van Print.one komt
Belangrijk: deel je secret niet met anderen.
Om inkomende verzoeken automatisch te controleren, bieden we onze JavaScript-library. Gebruik je een andere programmeertaal? Dan kun je de stappen eenvoudig replieren.