Sign inGet Started

Get a phone number lookup by URL

GET
/v1/lookup/phone-number/{number}
curl -X GET "https://us1.platform.bird.com/v1/lookup/phone-number/{number}" \
  -H "Authorization: Bearer $TOKEN"
Response200
{
  "phone_number": "+441904123456",
  "country_code": "GB",
  "network_info": {
    "carrier_name": "BT",
    "mcc": "234",
    "mnc": "00"
  },
  "original_network_info": null,
  "flags": [],
  "line_type": "service",
  "classification": {
    "status": "ok",
    "value": "premium_rate"
  },
  "score": {
    "status": "ok",
    "value": 48
  },
  "presence": {
    "status": "ok",
    "reachable": true
  },
  "roaming": {
    "status": "unavailable"
  }
}

Performs the same lookup as Create a phone number lookup, with the number in the URL. The response includes the number's serving and issuing networks, porting state, country, and line type. Repeat type to request additional blocks, such as ?type=classification&type=score; only blocks with an ok status incur an additional charge.

Because the number is in the URL, it can appear in proxies, access logs, and browser history. This form does not accept an Idempotency-Key; each retry performs and charges for another lookup.

Parameters

numberstring

The number to look up, in international format. The leading + is optional, and 00 works in its place, so 31612345678 and +31612345678 are the same number, with nothing to percent-encode. If you do send the +, percent-encode it as %2B when your client does not do that for you.

Query Parameters

typearray

An additional data block to request. Repeat the parameter for multiple blocks; each block is billed separately only when its status is ok.

Response Payload

phone_number
string
required

The number that was looked up, in E.164 format.

country_code
nullable string

The ISO 3166-1 alpha-2 country of the number. Absent when the number belongs to no single country, as a non-geographic range does.

network_info
nullable object

The network that serves the number today. Absent when no network could be identified.

Show child attributes
original_network_info
nullable object

The network that issued the number's range. It differs from network_info when the number has been ported. Absent when the issuing network could not be identified.

Show child attributes
flags
array of string
required

Notable characteristics of the number. Empty when none apply.

line_type
string
required
classification
object

The allocated service of the number's range. Absent unless you requested the classification property.

Show child attributes
presence
object

Whether the number is live on its network. Absent unless you requested the presence property.

Show child attributes
roaming
object

Whether the number is roaming. Absent unless you requested the roaming property.

Show child attributes
sim_swap
object

When the number's SIM last changed. Absent unless you requested the sim_swap property.

Show child attributes
sim_swap.status
string
required
sim_swap.last_swapped_at
nullable string

When the SIM was last changed. Absent when only a recency band is known.

sim_swap.min_days
nullable integer

The lower bound, in days, of how long ago the SIM was last changed. Networks that do not release an exact date report a band instead; absent when no lower bound is known.

sim_swap.max_days
nullable integer

The upper bound, in days, of how long ago the SIM was last changed. Absent when no upper bound is known; with a lower bound present, that means the change was at least min_days ago.

porting
object

The number's porting record. Absent unless you requested the porting property.

Show child attributes
score
object

The number's credibility score. Absent unless you requested the score property.

Show child attributes

Continue with the documentation, guides and examples for this topic.