Nyne Nyne API Login
Person APIs

Phone Finder

Convenience wrapper over /person/lookup-fields that forces fields=["mobile"]. Resolve a person from any identifier (email, phone, social_media_url, or name) and get back their mobile number. The request is queued and returns a request_id; poll the status endpoint or supply a callback_url.

POST https://api.nyne.ai/person/phone API key

Overview

Find a phone number for a person.

Parameters

name string optional
Full name.
company string optional
Employer context.
email string optional
Email identifier.
social_media_url string optional
Profile URL. At least one identifier is required.
callback_url string optional
If set, the completed result is POSTed here when the job finishes. Must be a valid HTTP(S) URL on an allowed host when a callback allow-list is configured.

Retrieving the result

This endpoint is asynchronous. A successful submit returns 202 with a request_id while the job runs in the background. Poll the same path with a GET request — same authentication headers — passing the request_id as a query parameter:

curl "https://api.nyne.ai/person/phone?request_id=<request_id>" \
  -H "X-API-Key: nyne_live_a17f…3c9b" \
  -H "X-API-Secret: nyne_sec_••••••••"

Each poll returns the job's current status; once it is completed the payload carries the result shown under Responses. Polling an unknown or expired request_id returns 404 request_not_found.

Status Meaning
queued · processing · pending The job is still running — keep polling.
completed The job finished; the payload carries the result and completed: true.
failed Terminal — the job could not complete; the error field explains why.

Poll every few seconds at first, backing off for long-running jobs. Polling is free — status checks never burn credits.

Prefer push delivery?
Supply the optional callback_url parameter and the completed payload is POSTed to your endpoint when the job finishes — no polling required.

Credit usage

Credits are charged based on the matched configuration. The listed cost is the per-result unit price.

Feature Credits Notes
Phone Lookup credit_costs.person_phone — charged on a found number
No match 0 Empty results never burn credits
Heads up
A positive credit balance is required before each request. Empty results do not burn credits.

Responses

202 Request queued — poll the status endpoint (or wait for the callback) with the returned request_id
400 Malformed JSON, missing required parameters, or an invalid field
401 Missing or invalid API credentials
402 insufficient_credits — no balance in the selected bucket
403 subscription_required or ip_not_allowed
429 rate_limit_exceeded
503 service_unavailable — backing store/queue unconfigured

A successful response wraps the payload in the { success, data, timestamp } envelope (also shown live in the panel on the right):

{
  "success": true,
  "data": {
    "request_id": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4_1717000000_4271",
    "status": "completed",
    "completed": true,
    "result": {
      "mobile": "+1-555-123-4567"
    },
    "completed_on": "2026-01-15T10:31:00Z"
  },
  "timestamp": "2026-06-12T12:24:49"
}