De Admin API en webhooks in de praktijk
Integraties met Shopify zijn meestal twee mechanismen: de Admin API, die je aanroept om te lezen en schrijven, en webhooks, die jou aanroepen wanneer er iets gebeurt.
Beide zijn eenvoudig. Wat een betrouwbare integratie scheidt van een onbetrouwbare is hoe je de gevallen afhandelt waarin ze zich misdragen — en dat zullen ze.
De twee mechanismen#
| Admin API | Webhooks | |
|---|---|---|
| Richting | Jij roept Shopify aan | Shopify roept jou aan |
| Goed voor | Status lezen, wijzigingen schrijven, backfills | Snel reageren op gebeurtenissen |
| Faalwijze | Rate limits, versiewijzigingen | Duplicaten, levering in verkeerde volgorde, gemiste gebeurtenissen |
| Moet afhandelen | Retries en paginering | Idempotentie en verificatie |
Regels die integraties betrouwbaar maken#
- Verifieer elke webhook-handtekening voordat je de payload vertrouwt. Niet-geverifieerde endpoints zijn een open deur.
- Maak elke handler idempotent — dezelfde gebeurtenis zal uiteindelijk twee keer aankomen.
- Neem geen volgorde aan. Een annulering kan aankomen vóór de creatie waarop je wachtte.
- Retourneer snel en verwerk asynchroon; trage endpoints worden opnieuw geprobeerd en dan uitgeschakeld.
- Reconcilieer dagelijks tegen de API. Webhooks missen gebeurtenissen; een nachtelijke sweep vangt wat is weggeglipt.
Rate limits zijn een ontwerpinput#
Shopify meet API-toegang. Dat is geen obstakel om te omzeilen met retries; het is een beperking waarvoor je moet ontwerpen. Batch reads, vraag alleen de velden op die je nodig hebt, en gebruik bulkoperaties voor backfills in plaats van elk product één aanroep tegelijk te doorlopen.
Als je integratie alleen werkt wanneer niets anders draait, werkt het niet. Test het terwijl een import bezig is.
Versiebeheer#
API-versies zijn gedateerd en verlopen. Zet de upgrade in de agenda in plaats van het te ontdekken via een fout. Een kleine integratie kost een uur om vooruit te gaan; een die vier versies heeft overgeslagen kost een week.
Veelgestelde vragen
Webhooks of polling?
Webhooks voor snelheid, een periodieke reconciliatie voor correctheid. De meest betrouwbare integraties gebruiken beide.
Hoe stop ik dubbele verwerking?
Sla de gebeurtenis-identifier op en negeer herhalingen. Idempotentie is de meest waardevolle gewoonte hier.
Wat breekt het eerst op schaal?
Rate limits, meestal tijdens een backfill die records één voor één doorloopt in plaats van bulkoperaties te gebruiken.
shopify admin apishopify webhooksshopify integratieshopify api rate limitsshopify graphql api