Skip to content

Realtime Detection

Realtime detection answers one question about one identifier, immediately: is this phone number — or this email address — registered on a given platform?

The engine is the same one the console uses. It accepts a phone number or an email address, checks it against one to ten realtime products, and returns a verdict per product.

You haveUse
One identifier, or a handful, and you need the answer nowRealtime
Thousands of identifiers, and you can waitBulk detection

Typical realtime cases are form validation at signup or checkout, one-off lookups inside an internal tool, and a small number of checks inside a workflow that is already running. Bulk is built for files and large arrays: it is asynchronous, priced per row checked, and finished tasks are downloadable.

The series is carried in the path, and it must agree with the products you select:

SeriesEndpointidentifier
PhonePOST /v1/realtime/check/phoneE.164 number, for example +8613800138000
EmailPOST /v1/realtime/check/emailEmail address, for example user@example.com

A request cannot mix series: selecting a phone product and an email product in the same call is rejected. country is optional for a complete E.164 number, and it must be omitted for email.

One call takes one identifier and one to ten products:

  • one request_id for the call
  • one entry per product in results
  • one charge per entry

Because every entry is billed on its own, a call can succeed for some products and fail for others. That is reported as status: partial_succeeded, and each entry carries its own billing_status — read those instead of trusting HTTP 200 alone.

  1. Have an API key — see Authentication.
  2. Read the product IDs you intend to use off Realtime products.
  3. Send a unique Idempotency-Key with every call; it is required, not optional.