REST API валидации телефона
Один запрос — валидность номера, формат E.164, страна, тип, оператор диапазона, регион и часовые пояса. Разбор идёт по встроенному справочнику мировой нумерации, без обращения к сети оператора.
Быстрый старт
Начните использовать API валидации телефона за три шага
Изучите эндпоинт
В Swagger ниже доступен {number} с необязательным
параметром countryCode.
Протестируйте
Выполните GET /api/phone/%2B79031234567 — получите
валидность, страну, тип номера и оператора диапазона.
Интегрируйте
Нормализуйте номера в базе к E.164 и отсекайте опечатки в формах регистрации и заказа.
Возможности API
Что делает API валидации телефона удобным для интеграции
REST + JSON
Простые GET запросы, ответы в JSON без лишних слоёв.
Строгая валидность
Номер сверяется с выделенными диапазонами страны, а не только с длиной.
Четыре формата
E.164, международный, национальный и RFC 3966 для атрибута href.
Оператор и регион
Оператор диапазона, географическая привязка и часовые пояса номера.
Офлайн-разбор
Справочник нумерации локальный: ответ за миллисекунды, без внешних вызовов.
Часовые пояса
Пояса IANA, к которым относится диапазон номера.
Swagger
OpenAPI спецификация и примеры запросов.
CORS
Удобно для браузерных приложений и dev-инструментов.
Знак «плюс» в пути кодируйте как %2B
Иначе он превратится в пробел. Номера без «+» разбираются только вместе с параметром
countryCode. Для теста подойдут Postman, Thunder Client или curl.
Swagger документация API
Откройте спецификацию OpenAPI, чтобы проверить запросы и ответы API валидации телефона.
Почему выбирают наш API
Преимущества REST API валидации телефона для интеграции
Простая интеграция
Один GET эндпоинт и один необязательный параметр. Подключается любым HTTP-клиентом без SDK.
Разбор без обращения в сеть
Валидность, форматы, страна, тип и оператор диапазона считаются локально и возвращаются за миллисекунды.
Любая страна мира
Страна определяется по коду номера, а для записи без «+» — по параметру countryCode.
Оплата только за выполненное
Строка, которая телефоном не является, отсекается до тарификации: вы получаете 400 бесплатно.
Значения numberType
Тип определяется по диапазону, в который попадает номер
| Значение | Что означает |
|---|---|
Mobile |
Мобильный номер. |
FixedLine |
Стационарный (городской) номер. |
FixedLineOrMobile |
Нумерация страны не разделяет стационарные и мобильные номера — например, в США. Отличить одно от другого по справочнику невозможно. |
TollFree |
Бесплатный для звонящего номер: 8-800 и мировые аналоги. |
PremiumRate |
Номер с повышенной тарификацией звонка. |
SharedCost |
Плата за звонок делится между звонящим и принимающим. |
Voip |
Номер IP-телефонии. |
PersonalNumber, Pager, Uan, Voicemail |
Персональный переадресуемый номер, пейджер, универсальный номер доступа (обычно корпоративный) и голосовая почта. |
Unknown |
Справочник не знает такого диапазона. Не путайте с isValid: false: тип может быть неизвестен и у валидного номера. |
Поле isValid означает, что номер записан правильно и попадает в реально
выделенный диапазон своей страны. Более мягкое isPossible проверяет только
длину: оно полезно, когда справочник нумерации страны отстаёт от реальности и настоящий
номер помечен невалидным.
Границы сервиса
Чего API не возвращает — и почему этого не появится
| Вопрос | Отвечает ли API | Пояснение |
|---|---|---|
| Может ли такой номер существовать? | Да | Поля isValid и isPossible. |
| Как правильно записать номер? | Да | Форматы e164, international, national, rfc3966. |
| Какой стране принадлежит номер? | Да | Поля country, countryCode, countryCallingCode. |
| Пользуется ли номером живой абонент? | Нет | Это знает только сеть оператора. Сведения относятся к конкретному человеку. |
| Кто обслуживает номер сегодня? | Нет | originalCarrier — оператор диапазона, а не абонента. См. предупреждение ниже. |
| Кому принадлежит номер? | Нет | Персональные данные. Сервис их не запрашивает, не хранит и не возвращает. |
Про originalCarrier и перенос номера (MNP)
В поле originalCarrier возвращается оператор, которому диапазон номера
выделен изначально. С 2013 года абонент вправе перенести номер
к другому оператору, сохранив его (Mobile Number Portability). Справочник нумерации
о переносах не знает: сведения о том, кто обслуживает конкретный номер сегодня, есть
только у сети оператора. Перенесённых номеров в России миллионы, поэтому для
произвольного номера originalCarrier — обоснованная догадка,
а не факт. Не стройте на нём тарификацию звонков, выбор SMS-маршрута или
иную логику, требующую точного знания оператора.
Как считаются деньги
Один тариф. За строку, которая телефоном не является, вы не платите
- У сервиса единственный тариф — разбор номера. Есть бесплатная квота: справочник локальный и ничего нам не стоит.
- Ответ
400(«это не телефонный номер») не тарифицируется вовсе: работа не выполнялась. - Внешних вызовов у сервиса нет, поэтому нет и ответа
503«источник недоступен».
Готовы подключить валидацию телефона?
Используйте API для нормализации базы номеров и отсечения опечаток в формах или откройте GUI для ручного разбора.