Проверка телефонных номеров: валидность, страна, тип (мобильный, городской, бесплатный), оператор для российских мобильных и форматы E.164 / национальный / международный. Бесплатно, без регистрации и ключей.
Попробуйте +79161234567 (МТС), +14155552671 (США) или 89001234567 (без + — добавьте ?country=RU).
// результат появится здесь
| Параметр | Описание | Пример |
|---|---|---|
country | ISO-код страны для номеров без префикса + | ?country=RU |
fields | Вернуть только указанные поля (через запятую) | ?fields=valid,type,carrier |
key | ключ платного тарифа (опционально) | ?key=... |
| Поле | Описание | Пример |
|---|---|---|
status | success или fail | success |
phone | Номер как был передан | +7 916 123-45-67 |
valid | Номер существует в плане нумерации страны | true |
possible | Номер возможен по длине (более мягкая проверка) | true |
type | Тип: mobile, fixed_line, fixed_line_or_mobile, toll_free, premium_rate, voip и др. | mobile |
country / countryCode | Страна и её ISO-код | Russia / RU |
callingCode | Телефонный код страны | 7 |
carrier | Оператор для мобильных РФ (по DEF-коду, без учёта MNP) | MTS |
e164 | Формат E.164 | +79161234567 |
international | Международный формат | +7 916 123-45-67 |
national | Национальный формат | 8 (916) 123-45-67 |
rfc3966 | URI для ссылок tel: | tel:+79161234567 |
# curl
curl https://apipark.ru/phone/json/+79161234567
# Номер в национальном формате — укажите страну
curl "https://apipark.ru/phone/json/89161234567?country=RU"
# JavaScript
const res = await fetch('https://apipark.ru/phone/json/' + encodeURIComponent(phone));
const check = await res.json();
if (!check.valid) showError('Введите корректный номер телефона');
savePhone(check.e164); // храните номера в E.164
# Python
import requests
check = requests.get('https://apipark.ru/phone/json/+79161234567').json()
print(check['valid'], check['type'], check['carrier'])
Оператор определяется только для российских мобильных номеров по DEF-коду (первые три цифры после +7) согласно исходным выделениям Россвязи. Перенос номера между операторами (MNP) не учитывается, поэтому результат ориентировочный.
5 запросов в минуту с одного IP-адреса. При превышении вернётся HTTP 429. Заголовки: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.