Data
Webhooks
Receive real-time HTTP callbacks when Oxinion events occur in your deployment.
Overview
Webhooks push Oxinion events to your server the moment they happen — no polling required. Register an HTTPS endpoint and choose which event types to subscribe to.
Webhook payload
json
1// Example: geofence.entered webhook payload
2{
3 "id": "evt_01abc123",
4 "type": "geofence.entered",
5 "created": "2026-06-15T10:30:00Z",
6 "data": {
7 "geofence": { "name": "Flagship Store" },
8 "user": { "id": "user_123" },
9 "location": { "lat": 40.758, "lng": -73.985 }
10 }
11}
Receiving webhooks in Next.js
typescript
1// app/api/oxinion/route.ts
2export async function POST(req: Request) {
3 const { type, data } = await req.json();
4
5 switch (type) {
6 case 'geofence.entered':
7 // data.geofence.name, data.user.id, data.location
8 await handleGeofenceEnter(data);
9 break;
10 case 'geofence.exited':
11 await handleGeofenceExit(data);
12 break;
13 case 'geofence.dwelled':
14 await handleGeofenceDwell(data);
15 break;
16 }
17
18 return new Response('ok');
19}
Subscribable events
geofence.entered
geofence.exited
geofence.dwelled