Webhooks instellen in Simbase

Een webhook is een bericht dat je app ontvangt op het moment dat er iets gebeurt, in plaats van dat je erom hoeft te vragen "Al iets nieuws?""in een lus. Wanneer er iets gebeurt in je Simbase-account, Simbase stuurt die gebeurtenis naar een URL die je in realtime kunt bedienen.

Zo integreer je Simbase in de rest van je stack. Er komt een sms binnen op een simkaart en je Slack-kanaal geeft een melding. Een apparaat wisselt van IMEI en je ticketsysteem opent een incident. Het maandelijkse dataverbruik overschrijdt een drempelwaarde en je gebruiksdashboard wordt bijgewerkt. Dit alles zonder code te schrijven die onze API opvraagt.

Webhooks hebben betrekking op gebeurtenissen die plaatsvinden aan de kant van Simbase: inkomende sms-berichten, wijzigingen in het IMEI-nummer, wijzigingen in de SIM-status en gebruikslimieten.

Klaar om live te gaan? Registreer je webhook-eindpunt op het dashboard, zodat Simbase weet waar gebeurtenissen moeten worden weergegeven.

Hoe Simbase webhooks gebruikt

Wanneer er iets gebeurt op je account, verstuurt Simbase een HTTPS POST-verzoek naar de door jou opgegeven URL, met een JSON-body waarin de gebeurtenis wordt beschreven. Je app leest de body, verwerkt deze naar eigen inzicht en stuurt een antwoord terug met een 2xx-statuscode om te bevestigen dat het bericht is ontvangen.

Je hoeft aan de ontvangende kant niets ingewikkelds te bouwen. De "door jou opgegeven URL" kan een van de volgende zijn:

  • Een automatiseringsplatform zonder programmeerkennis, zoals Zapier of Make.com

  • Een tool voor teamchat zoals Slack of Microsoft Teams, waarbij gebruik wordt gemaakt van de ingebouwde URL’s voor inkomende webhooks (rechtstreeks of via Zapier of Make.com)

  • Een functie in je eigen backend, in elke gewenste programmeertaal

  • Een externe sms-provider zoals Twilio of MessageBird, als je sms-berichten wilt versturen naar openbare telefoonnummers

  • Een serverloze functie op AWS Lambda, Vercel, Cloudflare Workers, Google Cloud Functions, enz.

Als u ons een HTTPS-URL kunt geven, kunnen wij daar evenementen naartoe sturen.

Webhook-gebeurtenissen

Simbase ondersteunt de volgende soorten gebeurtenissen:

Ontvangen sms-berichten

Zwarte, rode en groene simkaarten bevinden zich binnen wat we een gesloten SMS-circuit noemen. Simpel gezegd: de simkaart kan sms’jes versturen naar onze server via het korte nummer +55555 en sms’jes ontvangen van onze server, maar kan geen sms’jes uitwisselen met enig ander telefoonnummer ter wereld. Dit is bewust zo gedaan. Het is een beveiligingsmaatregel die ervoor zorgt dat uw apparaten niet bereikbaar zijn via het openbare SMS-netwerk, zodat niemand uw apparaten kan sms’en, er geen oplichting via premium-nummers uw saldo kan leeghalen en SMS niet kan worden gebruikt als aanvalsvlak tegen uw hardware.

Blauw, geel en cyaan Simkaarten worden geleverd met een MSISDN, zodat externe nummers er sms’jes naar kunnen sturen. Berichten die deze apparaten versturen, blijven binnen Simbase en worden nooit naar een externe telefoon verzonden, dus de webhook werkt op elk profiel op dezelfde manier. Zie SMS voor de details per profiel.

Wanneer je toestel een sms naar +55555 verstuurt, gebeuren er twee dingen:

  1. Het bericht wordt weergegeven op het Simbase-dashboard.

  2. Als je een SMS-webhook hebt geregistreerd, stuurt Simbase het volledige bericht via HTTPS door naar je eindpunt.

Die tweede stap is het onderdeel dat de meeste klanten onderschatten. De payload bevat de berichttekst, het ICCID van de simkaart, de naam van het apparaat en een tijdstempel. Zodra die bij je eindpunt binnenkomt, kun je ermee doen wat je wilt.

Een paar concrete voorbeelden van wat mensen met deze webhook maken:

  • Stuur de tekst van het sms-bericht door naar een Slack- of Microsoft Teams-kanaal, zodat het team de berichten van het apparaat in realtime kan zien. Handig voor asset-trackers, automaten, sensoren op afstand of elk ander apparaat dat via sms rapporten verstuurt.

  • Stuur de gegevens door naar Zapier of Make.com en activeer alle functies die deze platforms ondersteunen: log in bij Google Sheets, verstuur een e-mail, werk een CRM bij, maak een Zendesk- of Intercom-ticket aan, plaats een bericht in Notion, enz. Je hebt geen code nodig.

  • Stuur het sms-bericht door naar een extern telefoonnummer via Twilio, MessageBird of een andere sms-provider. Uw apparaat verstuurt een sms via Simbase, uw webhook ontvangt deze, uw code stuurt de inhoud door naar Twilio en Twilio bezorgt deze aan een gewone mobiele telefoon. Zo bouwen klanten een eenrichtingsverbinding tussen een afgesloten IoT-vloot en een normaal telefoonnummer, zonder de veiligheid van het gesloten circuit op te geven.

  • Analyseer de inhoud van de sms op sensorwaarden of opdrachten en sla deze op in je eigen database of in een tijdreeksdatabase zoals InfluxDB of TimescaleDB.

  • Activeer een actie op de simkaart. Je eindpunt ontvangt het sms-bericht, concludeert dat „dit apparaat zich vreemd gedraagt“ en roept de Simbase-API aan om de simkaart uit te schakelen.

Voor lezers die geen code schrijven, komt het er kort gezegd op neer dat de SMS-webhook ervoor zorgt dat „een SMS die op een simkaart binnenkomt“ wordt omgezet in „Slack kreeg een melding“, „de spreadsheet werd bijgewerkt“, „het team kreeg een e-mail“ of „er werd een ticket aangemaakt“. Je hoeft niet te leren hoe SMS-routing werkt. Je hoeft Simbase alleen maar naar de juiste URL te verwijzen. Zie SMS.

JSON-webhook-body

{
"event": "sms",
"iccid": "8900000000001234567",
"timestamp": "2026-08-06 12:00:00",
"message": "test SMS message",
"deviceName": "Demo device"
}

IMEI-wijziging

Elk apparaat heeft een IMEI (International Mobile Equipment Identity), een unieke 15-cijferige identificatiecode die in de hardware is ingebouwd. Wanneer uw simkaart in een ander apparaat wordt geplaatst, detecteert het mobiele netwerk de nieuwe IMEI en meldt dit. Simbase kan uw eindpunt hiervan op de hoogte stellen zodra dit gebeurt.

Waarom dit van belang is, hangt af van uw bedrijf. Voor het volgen van bedrijfsmiddelen, logistiek of wagenparkbeheer is een onverwachte wijziging van het IMEI-nummer een van de duidelijkste aanwijzingen dat een simkaart uit het daarvoor bestemde apparaat is verwijderd, hetzij door diefstal, knoeien of onderhoud dat uit de hand is gelopen. Voor OEM’s die vooraf geconfigureerde apparaten leveren, zijn IMEI-wijzigingen de manier om te controleren of elke simkaart in het juiste apparaat terecht is gekomen.

Wat mensen doorgaans met deze webhook doen:

  • Deel het voorval via Slack of e-mail, zodat je operationele team het kan onderzoeken.

  • Maak automatisch een ticket aan in je supporttool wanneer het nieuwe IMEI-nummer niet overeenkomt met een verwacht apparaat.

  • Schakel de simkaart uit via de Simbase API als uw beveiligingsbeleid onverwachte IMEI-wijzigingen als een teken van fraude beschouwt.

  • Registreer de wijziging in je activadatabase, zodat je altijd weet welke simkaart in welk apparaat zit, zonder dat je dit handmatig hoeft te controleren.

  • Stuur de gebeurtenis door naar een SIEM of auditlogboek ten behoeve van naleving en forensisch onderzoek.

JSON-webhook-inhoud

{
"event": "imei",
"timestamp": "2026-08-06 12:00:00",
"iccid": "8900000000001234567",
"oldIMEI": "None",
"newIMEI": "355234090012345",
"action": "disabled",
"deviceName": "Demo device"
}

Veranderingen in de SIM-status

Een simkaart heeft een status die aangeeft of deze momenteel is ingeschakeld of uitgeschakeld. Deze status kan om verschillende redenen veranderen:

  • Handmatige activering of deactivering via het dashboard of de API

  • Automatische activering bij het eerste gebruik van de simkaart

  • Negatief saldo

  • Voorvallen zoals diefstal of vermoedelijke fraude

  • Ongeautoriseerde wijzigingen van het IMEI-nummer

Wanneer de status verandert, stuurt Simbase de nieuwe status naar je webhook, zodat de rest van je stack hierop kan reageren. Zie SIM-status.

Wat klanten doorgaans doen bij deze gelegenheid:

  • Zorg ervoor dat een interne CRM-, ERP- of activadatabase altijd synchroon loopt met de werkelijke status van elke simkaart, zonder de Simbase-API te hoeven raadplegen.

  • Ontvang een melding via Slack of e-mail zodra een simkaart wordt geblokkeerd, zodat de helpdesk hiervan op de hoogte is nog voordat de klant belt.

  • Start de facturatieautomatisering zodra een simkaart voor het eerst wordt geactiveerd, door de gebeurtenis via Zapier of je eigen backend door te sturen naar Stripe, Chargebee of een aangepaste facturatiedienst.

  • Signaleer onverwachte situaties in een vroeg stadium. Als een simkaart is geblokkeerd en niemand in je team dat had verwacht, beschouw dat dan automatisch als een incident.

JSON-webhook-body

{
"event": "sim_state",
"timestamp": "2026-08-06 12:00:00",
"iccid": "8900000000001234567",
"old_state": "enabled",
"new_state": "disabled",
"deviceName": "Demo device"
}

Gebruikslimieten bereikt

Je kunt voor elke simkaart een maandelijkse limiet voor data of sms instellen. Zodra het verbruik die limiet overschrijdt, schakelt Simbase de simkaart automatisch uit, en deze webhook brengt de rest van je systeem op de hoogte zodra dat gebeurt.

De limieten worden gecontroleerd wanneer de gebruiksgegevens van de provider binnenkomen, en niet in realtime; daardoor kan een simkaart de limiet iets overschrijden voordat deze wordt geblokkeerd. Zie Gebruiksbeperkingen waarom die overschrijding ontstaat en hoe je daar rekening mee kunt houden in je begroting.

Dit is een nette manier om een apparaat dat niet goed functioneert in een vroeg stadium op te sporen. Een simkaart die normaal gesproken 10 MB per maand verbruikt en plotseling zijn limiet bereikt, probeert je meestal iets duidelijk te maken: een firmwarefout, een mislukte wifi-fallback, een apparaat dat in de debugmodus is blijven staan, een uit de hand gelopen OTA-update of, in het ergste geval, een gestolen simkaart die wordt gebruikt voor tethering.

Wat mensen doorgaans doen bij dit evenement:

  • Stuur een melding naar Slack of per e-mail, zodat het team weet dat een simkaart offline is gegaan voordat de klant belt

  • Maak een incident aan in PagerDuty of Opsgenie voor implementaties met hoge prioriteit

  • Controleer het apparaat en schakel de simkaart vervolgens opnieuw in of verhoog de limiet ervan via de Simbase API

  • Activeer een Zapier- of Make.com-workflow die de eigenaar van het apparaat op de hoogte stelt

  • Registreer de gebeurtenis in een dashboard voor afwijkingen in het gebruik, zodat u in de loop van de tijd trends binnen het gehele wagenpark kunt signaleren

JSON-webhook-body

{
"event": "usage_limits",
"timestamp": "2026-08-06 12:00:00",
"iccid": "8900000000001234567",
"usage_mb": 102,
"threshold_mb": 100,
"usage_sms": 0,
"threshold_sms": null
}

Stappen om webhooks te ontvangen

In een paar stappen kun je evenementmeldingen in je app gaan ontvangen:

  1. Bepaal naar welke gebeurtenissen je wilt luisteren en welke velden in de payload voor jou echt van belang zijn.

  2. Maak een HTTP(S)-eindpunt aan om de gebeurtenissen te ontvangen. Dit kan een route op je backend zijn, een serverloze functie, een Zapier-webhook-URL, een Make.com-webhook-URL, een inkomende Slack-webhook (met een kleine aanpassing vooraf) of een willekeurige andere URL die POST-verzoeken accepteert.

  3. Parseer de JSON-body aan jouw kant en retourneer een 2xx-statuscode. Voor Simbase is alleen de statuscode van belang, niet de inhoud van het antwoord.

  4. Test het eindpunt met een tool zoals Postbode of curl. Als je tijdens het ontwikkelen op je laptop echte Simbase-gebeurtenissen wilt ontvangen, kun je het beste een tunneling-tool zoals ngrok of Cloudflare Tunnel gebruiken.

  5. Plaats je eindpunt achter een openbaar bereikbare HTTPS-URL.

  6. Registreer die URL in de Simbase-dashboard onder ‘Integraties’ → ‘Webhooks’.

  7. Simbase stuurt een testgebeurtenis naar je URL. Als je eindpunt reageert met een 2xx-code, wordt de webhook opgeslagen en begint deze live gebeurtenissen te ontvangen.

Technische gegevens

Methode

Alle verzoeken van Simbase naar je webhook zijn HTTP POST-verzoeken met een JSON-body.

Beveiliging

  • Gebruik IP-filtering niet als beveiligingsmaatregel. Onze servers staan verspreid over de hele wereld en de openbare IP-adressen waarmee ze gegevens verzenden, veranderen in de loop van de tijd, waardoor een lijst met toegestane IP-adressen op het slechtst mogelijke moment niet meer werkt.

HerhalingsschemaAls uw eindpunt niet reageert met een 2xx-statuscode, wordt de aanroep in de wachtrij geplaatst voor een nieuwe poging. Na 15 minuten proberen onze servers het opnieuw. Als ook die poging mislukt, wordt een derde poging ingepland. Als er na drie pogingen nog steeds geen 2xx-statuscode is ontvangen, wordt de gebeurtenis genegeerd en ontvangt u een e-mail hierover, zodat u het eindpunt kunt onderzoeken en indien nodig de verbinding opnieuw kunt tot stand brengen.

Veelgestelde vragen

Simbase probeert het na 15 minuten opnieuw, en nog een keer als dat niet lukt. Als er na drie pogingen geen 2xx-statuscode is ontvangen, wordt de gebeurtenis geannuleerd en ontvang je een e-mail, zodat je het eindpunt kunt repareren en opnieuw verbinding kunt maken.

Nee. Eén webhook per gebeurtenistype. Om een gebeurtenis naar meerdere systemen door te sturen, kun je Simbase koppelen aan een automatiseringsplatform zoals Zapier of Make.com, of aan je eigen eindpunt, en de gebeurtenis van daaruit verder verspreiden.

Ja. De API beschikt over eindpunten om webhooks weer te geven, toe te voegen of te bewerken en te verwijderen, met de mogelijkheid om een testverzoek te versturen voordat je de wijzigingen opslaat. Zie de API-documentatie.

Gerelateerd

  • SMS — de berichten die de webhook voor ontvangen sms-berichten doorstuurt, en hoe deze per profiel verschillen

  • Diefstalbeveiliging — een simkaart aan één IMEI-nummer koppelen, zodat een wijziging wordt geblokkeerd en niet alleen wordt gemeld

  • SIM-status — wat ‘ingeschakeld’ en ‘uitgeschakeld’ betekenen en wat ervoor zorgt dat ze veranderen

  • Gebruiksbeperkingen — stel de limiet in die de webhook voor het gebruik activeert

  • API-sleutels — een sleutel aanmaken en de rechten beperken tot wat de integratie nodig heeft

  • API — webhooks programmatisch weergeven, aanmaken en verwijderen