Skip to main content
Webhook lookups are rolling out and may not be enabled on your account yet.
Webhook lookups are an additional supported path that allow us to return results to you in a asycnhronous manner. If you want to use a webhook based flow, add a webhook_url to your query parameters and we should reply with a 202 right away to indicate that we’ve received your request. From there we will then POST the result to that URL when it’s ready. You can optionally use this whenever you want an asynchronous based flow, OR when certain countries require it. The countries that have a hard requirement to use webhook mode are:
  • Australia (AU) - this can be between 30 seconds to 24 hours
For most countries this should only take a few seconds at most under nominal conditions. For our special cases listed above, we will have different timings available.

Start a lookup

Receipt

202
correlation_id identifies the lookup. Provide this to support if you’re having any specific issues Response headers:

The push

When the lookup finishes we send one POST to your URL. Every body has status ("succeeded" or "failed"), error_code (null on success), correlation_id, phone_number and country.

Errors

We will only push a final and single error to your webhook if we fail to resolve any requests within a 24 hour time window. These appear in both synchronous responses and pushes. Client errors where possible return immediately instead of charging you:

Receiving the webhook request (your endpoint)

  • Reply with any 2xx within 10 seconds. We ignore the body.
  • 5xx, 408, 425 and 429 are retried with backoff (30 seconds up to 1 hour), up to 10 attempts. Any other status is treated as permanent and not retried. Redirects aren’t followed.
  • Deduplicate on correlation_id: if your 2xx is lost or late, the same push can arrive again.
  • The URL has to stay reachable over https from the public internet. We resolve the host again at delivery and refuse private, loopback and link-local addresses.

Timing

A lookup_expired push arrives 24 hours after the receipt.