---
title: "Look up carrier + line type"
method: GET
path: "/v1/sms/lookup"
tags: ["SMS"]
---

# Look up carrier + line type

`GET /v1/sms/lookup`

Carrier name and line type (mobile / landline / voip / toll-free) for a
number, plus `smsReachable` (landlines can't receive SMS). Use it to
validate recipients before sending. Each lookup is billed by the
carrier-data provider, so call it explicitly (e.g. pre-validating an
opt-in list), not on every send.

## Query parameters

- `number` string, required

## Response `200`

Lookup result. An unknown/invalid number returns lineType `unknown` with `smsReachable` false rather than an error.

- object
  - `phoneNumber` string
  - `carrierName` string, nullable
  - `lineType` 'mobile' | 'landline' | 'voip' | 'toll-free' | 'unknown'
  - `smsReachable` boolean — True when the line type can receive SMS (not a landline).

## Other responses

- `401` — Unauthorized
- `502` — Lookup provider failed

---

[API](https://skmtc.net/zernio/apis/zernio-api.md) · [All operations](https://skmtc.net/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zernio/zernio-api/revisions/f81ca70ea6b9/schema)
