Документация API

Доступные методы
Метод URL Описание Параметры
GET/POST /api/v1/phone/validate Валидация номера phone, country, api_key
Параметры:
Параметр Описание Пример Обязательный
api_key API ключ your_key Да
phone Телефонный номер +393201234567 Да
country Код страны IT, ["IT","US","DE"] Нет
Работа с несколькими странами

Параметр country поддерживает несколько форматов:

  • Одна страна: IT
  • Несколько стран через запятую: IT,US,DE
  • Несколько стран через точку с запятой: IT;US;DE
  • Несколько стран через пробел: IT US DE
  • Массив стран (POST): ["IT", "US", "DE"]

API пробует парсить номер с каждой страной по очереди до нахождения валидного результата. Это особенно полезно для номеров в национальном формате.

Коды ответов
Код Описание Пример
200 Успешный запрос
{
  "success": true,
  "data": {
    "is_valid": true,
    "type_id": 1,
    "type_name": "Mobile",
    "is_mobile": true,
    "is_fixed_line": false,
    "phone_code": "+39",
    "country_code": "IT",
    "location": null,
    "international": "+39 320 123 4567",
    "national": "320 123 4567",
    "e164": "+393201234567",
    "rfc3966": "tel:+39-320-123-4567"
  },
  "error": null,
  "request_id": "a430273e63f07ef5805f04e5f8a94d16f0351fd7"
}
400 Некорректный запрос (ошибка в параметрах)
{
  "success": false,
  "data": null,
  "error": "Invalid phone number",
  "request_id": "b1e2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
}
401 Неавторизован (неверный или отсутствует API-ключ)
{
  "success": false,
  "data": null,
  "error": "Invalid API key",
  "request_id": "c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7"
}
403 Доступ запрещён (нет прав или заблокирован)
{
  "success": false,
  "data": null,
  "error": "Access denied",
  "request_id": "d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8"
}
404 Метод или ресурс не найден
{
  "success": false,
  "data": null,
  "error": "Method or resource not found",
  "request_id": "e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9"
}
429 Превышен лимит запросов
{
  "success": false,
  "data": null,
  "error": "Request limit exceeded",
  "request_id": "f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0"
}
500 Внутренняя ошибка сервера
{
  "success": false,
  "data": null,
  "error": "Internal server error",
  "request_id": "a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1"
}
Тестовый API-ключ: test
Если вы используете этот ключ в запросах, API всегда возвращает демонстрационный (мок) ответ.
Баланс не расходуется, реальные проверки не выполняются.
Пример:
curl "https://numlook.ru/api/v1/phone/validate?phone=+393201234567&api_key=test"
Примеры использования
cURL команды
Валидация номера:
cURL
curl "https://numlook.ru/api/v1/phone/validate?phone=+393201234567&api_key=your_key"
С несколькими странами:
cURL
curl "https://numlook.ru/api/v1/phone/validate?phone=3201234567&country=IT,US,DE&api_key=your_key"
POST запрос с массивом стран:
cURL
curl -X POST "https://numlook.ru/api/v1/phone/validate" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "3201234567",
    "country": ["IT", "US", "DE"],
    "api_key": "your_key"
  }'
JavaScript (fetch)
Валидация номера:
JavaScript
// Number validation
fetch('https://numlook.ru/api/v1/phone/validate?phone=+393201234567&api_key=your_key')
.then(response => response.json())
.then(data => console.log(data));
С несколькими странами:
JavaScript
// With multiple countries
fetch('https://numlook.ru/api/v1/phone/validate?phone=3201234567&country=IT,US,DE&api_key=your_key')
.then(response => response.json())
.then(data => console.log(data));
POST запрос с массивом стран:
JavaScript
// POST request with array of countries
fetch('https://numlook.ru/api/v1/phone/validate', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    phone: '3201234567',
    country: ['IT', 'US', 'DE'],
    api_key: 'your_key'
  })
})
.then(response => response.json())
.then(data => console.log(data));
PHP
Валидация одного номера:
PHP
// Single number validation
$apiKey = 'your_key';
$phone = '+393201234567';

$response = file_get_contents(
    "https://numlook.ru/api/v1/phone/validate?phone=" . urlencode($phone) . "&api_key=" . $apiKey
);

$data = json_decode($response, true);
var_dump($data);
С несколькими странами:
PHP
// With multiple countries
$apiKey = 'your_key';
$phone = '3201234567';
$countries = 'IT,US,DE';

$response = file_get_contents(
    "https://numlook.ru/api/v1/phone/validate?phone=" . urlencode($phone) . "&country=" . urlencode($countries) . "&api_key=" . $apiKey
);

$data = json_decode($response, true);
var_dump($data);
POST запрос с массивом стран:
PHP
// POST request with array of countries
$apiKey = 'your_key';
$postData = json_encode([
    'phone' => '3201234567',
    'country' => ['IT', 'US', 'DE'],
    'api_key' => $apiKey
]);

$context = stream_context_create([
    'http' => [
        'method' => 'POST',
        'header' => 'Content-Type: application/json',
        'content' => $postData
    ]
]);

$response = file_get_contents('https://numlook.ru/api/v1/phone/validate', false, $context);
$data = json_decode($response, true);
var_dump($data);