Webhooks

Get order, inventory and listing events pushed to your server, signed and retried.

Instead of polling, register an HTTPS endpoint and Nembol POSTs you an event whenever something happens — a new order arrives from any channel, stock changes, a listing goes live or errors out.

Create endpoints in the dashboard (Settings → Developers → Webhooks) or via the API. Each endpoint has a signing secret, shown once at creation.

The delivery

POST /your/endpoint HTTP/1.1
Content-Type: application/json
X-Nembol-Signature: t=1784900412,v1=5257a869e7…

{
  "id": "evt_2c91…",
  "type": "order.created",
  "api_version": "2026-07-24",
  "store_id": "5f2a…",
  "created_at": "2026-07-24T16:03:12Z",
  "data": {
    "object": { "id": "ord_…", "channel": "etsy", "total": "49.90", "currency": "USD" }
  }
}

data.object is a full snapshot of the resource at event time. You can also re-fetch it by id for the freshest state.

The contract (read this twice)

  • At-least-once: the same event can be delivered more than once. Deduplicate by event.id.
  • No ordering guarantee: events can arrive out of order. Use created_at (or re-fetch the resource) rather than assuming sequence.
  • Unknown types: new event types are added over time — ignore types you don't handle, and return 2xx anyway.
  • Respond fast with 2xx: within 10 seconds, or the delivery counts as failed. Do real work asynchronously — enqueue, then return 200.
  • Verify the signature before trusting anything: verify signatures.

Retries

Failed deliveries (non-2xx, timeout, connection error) are retried with exponential backoff over ~72 hours: 1m → 5m → 30m → 2h → 12h → … If an endpoint keeps failing, it is auto-disabled and the store owner is notified in the dashboard and by email. Every attempt is visible in the dashboard delivery log, with manual redeliver.

Missed a window entirely? Reconcile with the event log API: GET /v1/events?created_after=… returns the last 30 days of events.

Need help?

The API is in private beta — email us and a human replies, usually within one business day.

On this page