РазделыПоиск

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

Поиск адреса

Подсказки по мере ввода: человек набирает начало адреса, API возвращает подходящие адреса из ГАР — от региона до квартиры.

GETPOSThttps://api.adresnitsa.ru/v1/search

Подходит любой ключ: публичный и секретный.

Параметры

ПараметрТипЧто это
qстрока

Обязательный. Адрес или его начало, как его ввёл человек, до 300 байт. Регистр, «ё» и сокращения вроде «ул» или «пр-кт» не важны.

count1–50

Сколько адресов вернуть. По умолчанию 10.

parentid или GUID

Искать только внутри этого объекта: региона, города, района, улицы.

levelsсписок

Только эти уровни: номера 1–17 или имена region, district, settlement, city, locality, planning, street, stead, house, flat, room, parking. В GET — через запятую, в POST — массив.

detailstrue/false

Добавить к каждому адресу все поля: индекс, коды, координаты, метро (все поля). По умолчанию false.

В GET параметры идут в строке запроса, в POST — в JSON с теми же именами. Неизвестный параметр — ошибка 400 bad_parameter.

Улица

Город и начало названия улицы. Первой идёт сама улица, за ней дома на ней.

curl
curl -G https://api.adresnitsa.ru/v1/search \
  -H "Authorization: Token ВАШ_КЛЮЧ" \
  --data-urlencode "q=санкт-петербург невский" \
  -d count=5
JavaScript
const url = new URL("https://api.adresnitsa.ru/v1/search");
url.search = new URLSearchParams({ q: "санкт-петербург невский", count: "5" });
const res = await fetch(url, {
  headers: { Authorization: "Token ВАШ_КЛЮЧ" },
});
const data = await res.json();
Python
import requests

res = requests.get(
    "https://api.adresnitsa.ru/v1/search",
    params={"q": "санкт-петербург невский", "count": 5},
    headers={"Authorization": "Token ВАШ_КЛЮЧ"},
    timeout=5,
)
data = res.json()
PHP
<?php
$url = "https://api.adresnitsa.ru/v1/search?" . http_build_query([
    "q" => "санкт-петербург невский",
    "count" => 5,
]);
$ctx = stream_context_create(["http" => [
    "header" => "Authorization: Token ВАШ_КЛЮЧ\r\n",
    "ignore_errors" => true,
]]);
$data = json_decode(file_get_contents($url, false, $ctx), true);
Ответ200 OKданные 2026.01.02 v.219
{
  "count": 5,
  "query": "санкт-петербург невский",
  "results": [
    {
      "level": 8,
      "guid": "d5954ac1-4745-451c-a482-acc0bd381ad0",
      "address": "г Санкт-Петербург, Невский пр-кт",
      "id": 1450752,
      "components": ["г Санкт-Петербург", "Невский пр-кт"]
    },
    {
      "level": 10,
      "guid": "0b022b73-c8de-4ea0-ba19-6b54c8eb500e",
      "address": "г Санкт-Петербург, Невский пр-кт, соор 34/1",
      "id": 157832996,
      "components": ["г Санкт-Петербург", "Невский пр-кт", "соор 34/1"]
    },
    {
      "level": 10,
      "guid": "dc65f4e8-6eb1-4058-815b-7132705d7481",
      "address": "г Санкт-Петербург, Невский пр-кт, д 35",
      "id": 57912498,
      "components": ["г Санкт-Петербург", "Невский пр-кт", "д 35"]
    },
    {
      "level": 10,
      "guid": "cf9f0961-29f6-4f31-9a04-c1981283d6ff",
      "address": "г Санкт-Петербург, Невский пр-кт, соор 84/1",
      "id": 157833008,
      "components": ["г Санкт-Петербург", "Невский пр-кт", "соор 84/1"]
    },
    {
      "level": 10,
      "guid": "8ffadb74-00fb-415f-aadc-ff1b01e9c067",
      "address": "г Санкт-Петербург, Невский пр-кт, д 114",
      "id": 58042164,
      "components": ["г Санкт-Петербург", "Невский пр-кт", "д 114"]
    }
  ]
}

Дом со всеми полями

Тот же поиск через POST и с details: true: в ответе сразу индекс, ОКТМО, кадастровый номер, координаты, метро, МКАД и документы. Отдельный запрос за полями не нужен.

curl
curl https://api.adresnitsa.ru/v1/search \
  -H "Authorization: Token ВАШ_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"q": "москва сухонская 11", "count": 1, "details": true}'
JavaScript
const res = await fetch("https://api.adresnitsa.ru/v1/search", {
  method: "POST",
  headers: {
    Authorization: "Token ВАШ_КЛЮЧ",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ q: "москва сухонская 11", count: 1, details: true }),
});
const data = await res.json();
Python
import requests

res = requests.post(
    "https://api.adresnitsa.ru/v1/search",
    json={"q": "москва сухонская 11", "count": 1, "details": True},
    headers={"Authorization": "Token ВАШ_КЛЮЧ"},
    timeout=5,
)
data = res.json()
PHP
<?php
$body = json_encode(["q" => "москва сухонская 11", "count" => 1, "details" => true], JSON_UNESCAPED_UNICODE);
$ctx = stream_context_create(["http" => [
    "method" => "POST",
    "header" => "Authorization: Token ВАШ_КЛЮЧ\r\n" .
        "Content-Type: application/json\r\n",
    "content" => $body,
    "ignore_errors" => true,
]]);
$data = json_decode(file_get_contents("https://api.adresnitsa.ru/v1/search", false, $ctx), true);
Ответ200 OKданные 2026.01.02 v.219
{
  "count": 1,
  "query": "москва сухонская 11",
  "results": [
    {
      "level": 10,
      "guid": "5ee84ac0-eb9a-4b42-b814-2f5f7c27c255",
      "details": {
        "geo": {"lon": 37.6536694, "lat": 55.878344999999996, "qc": 0},
        "id": 26847188,
        "components": ["г Москва", "ул Сухонская", "д 11"],
        "postalCode": "127642",
        "oktmo": "45362000",
        "metro": [
          {
            "distance": 1.1,
            "colour": "#ffa500",
            "line": "Калужско-Рижская",
            "name": "Медведково"
          },
          {
            "distance": 1.2,
            "colour": "#ffa500",
            "line": "Калужско-Рижская",
            "name": "Бабушкинская"
          },
          {
            "distance": 2.6,
            "colour": "#ffa500",
            "line": "Калужско-Рижская",
            "name": "Свиблово"
          }
        ],
        "address": "г Москва, ул Сухонская, д 11",
        "multiApartment": true,
        "lastChangedBy": {
          "typeName": "Распоряжение",
          "kindName": "Технический документ",
          "organisation": "ДЕПАРТАМЕНТ ГОРОДСКОГО ИМУЩЕСТВА ГОРОДА МОСКВЫ",
          "number": "71183",
          "date": "2022-12-05",
          "name": "О размещении реквизитов объектов адресации в Адресном реестре объектов недвижимости города Москвы и государственном адресном реестре"
        },
        "federalDistrict": "Центральный",
        "level": 10,
        "kind": "Дом",
        "ifnsFl": "7715",
        "kladr": "77000000000283600",
        "regionCode": "77",
        "addressParts": {
          "city": "г Москва",
          "street": "ул Сухонская",
          "region": "г Москва",
          "byLevel": [
            {"level": 1, "text": "г Москва", "id": 1405113},
            {"level": 8, "text": "ул Сухонская", "id": 1404570},
            {
              "level": 10,
              "kind": "Дом",
              "text": "д 11",
              "id": 26847188,
              "self": true
            }
          ]
        },
        "postFileDate": "2026-10-05",
        "ifnsUl": "7715",
        "cadastral": "77:02:0004008:1017",
        "country": "Россия",
        "timeZone": "Europe/Moscow",
        "osmDate": "2026-10-10",
        "isoCode": "RU-MOW",
        "levelName": "Здание (строение), сооружение",
        "geonameId": 524901,
        "postOffice": {
          "type": "О",
          "date": "2002-04-04",
          "name": "МОСКВА 642"
        },
        "guidActual": true,
        "beltway": {"hit": "IN_MKAD"},
        "guid": "5ee84ac0-eb9a-4b42-b814-2f5f7c27c255",
        "utcOffset": "UTC+3",
        "assignedBy": {
          "typeName": "Распоряжение",
          "kindName": "Нормативный документ",
          "organisation": "",
          "number": "10732",
          "date": "2017-04-14",
          "name": "О присвоении адреса объекту адресации"
        },
        "okato": "45280583000"
      },
      "address": "г Москва, ул Сухонская, д 11",
      "id": 26847188,
      "components": ["г Москва", "ул Сухонская", "д 11"]
    }
  ]
}

Только в одном городе

Если город уже выбран, передайте его GUID или id в parent, а в q — только улицу. Здесь — Казань: её GUID пришёл в поиске «казань» с levels=city.

curl
curl -G https://api.adresnitsa.ru/v1/search \
  -H "Authorization: Token ВАШ_КЛЮЧ" \
  --data-urlencode "q=баумана" \
  -d parent=93b3df57-4c89-44df-ac42-96f05e9cd3b9 \
  -d count=5
JavaScript
const url = new URL("https://api.adresnitsa.ru/v1/search");
url.search = new URLSearchParams({ q: "баумана", parent: "93b3df57-4c89-44df-ac42-96f05e9cd3b9", count: "5" });
const res = await fetch(url, {
  headers: { Authorization: "Token ВАШ_КЛЮЧ" },
});
const data = await res.json();
Python
import requests

res = requests.get(
    "https://api.adresnitsa.ru/v1/search",
    params={"q": "баумана", "parent": "93b3df57-4c89-44df-ac42-96f05e9cd3b9", "count": 5},
    headers={"Authorization": "Token ВАШ_КЛЮЧ"},
    timeout=5,
)
data = res.json()
PHP
<?php
$url = "https://api.adresnitsa.ru/v1/search?" . http_build_query([
    "q" => "баумана",
    "parent" => "93b3df57-4c89-44df-ac42-96f05e9cd3b9",
    "count" => 5,
]);
$ctx = stream_context_create(["http" => [
    "header" => "Authorization: Token ВАШ_КЛЮЧ\r\n",
    "ignore_errors" => true,
]]);
$data = json_decode(file_get_contents($url, false, $ctx), true);
Ответ200 OKданные 2026.01.02 v.219
{
  "count": 5,
  "query": "баумана",
  "results": [
    {
      "level": 8,
      "guid": "6281e764-f9b2-462b-bbba-dcb1ab7527c4",
      "address": "г Казань, ул Баумана",
      "id": 173194,
      "components": ["г Казань", "ул Баумана"]
    },
    {
      "level": 10,
      "guid": "e5962ca2-3ddf-433b-b643-7b14d570e368",
      "address": "г Казань, ул Баумана, д 1/2",
      "id": 162496233,
      "components": ["г Казань", "ул Баумана", "д 1/2"]
    },
    {
      "level": 10,
      "guid": "c2cfb93f-24c0-4f6c-a9b3-bbc39f3111ac",
      "address": "г Казань, ул Баумана, зд 3",
      "id": 73265319,
      "components": ["г Казань", "ул Баумана", "зд 3"]
    },
    {
      "level": 10,
      "guid": "adb0d03e-6a62-47f1-8c32-40563a41f9b0",
      "address": "г Казань, ул Баумана, д 5",
      "id": 73182368,
      "components": ["г Казань", "ул Баумана", "д 5"]
    },
    {
      "level": 10,
      "guid": "ed83e3d8-6aa4-4ebe-9e6e-e573bfd8f49a",
      "address": "г Казань, ул Баумана, д 7",
      "id": 73276869,
      "components": ["г Казань", "ул Баумана", "д 7"]
    }
  ]
}

Только улицы

levels=street оставляет в ответе только улицы — например, для отдельного поля «Улица» в форме.

curl
curl -G https://api.adresnitsa.ru/v1/search \
  -H "Authorization: Token ВАШ_КЛЮЧ" \
  --data-urlencode "q=екатеринбург ленина" \
  -d levels=street \
  -d count=5
JavaScript
const url = new URL("https://api.adresnitsa.ru/v1/search");
url.search = new URLSearchParams({ q: "екатеринбург ленина", levels: "street", count: "5" });
const res = await fetch(url, {
  headers: { Authorization: "Token ВАШ_КЛЮЧ" },
});
const data = await res.json();
Python
import requests

res = requests.get(
    "https://api.adresnitsa.ru/v1/search",
    params={"q": "екатеринбург ленина", "levels": "street", "count": 5},
    headers={"Authorization": "Token ВАШ_КЛЮЧ"},
    timeout=5,
)
data = res.json()
PHP
<?php
$url = "https://api.adresnitsa.ru/v1/search?" . http_build_query([
    "q" => "екатеринбург ленина",
    "levels" => "street",
    "count" => 5,
]);
$ctx = stream_context_create(["http" => [
    "header" => "Authorization: Token ВАШ_КЛЮЧ\r\n",
    "ignore_errors" => true,
]]);
$data = json_decode(file_get_contents($url, false, $ctx), true);
Ответ200 OKданные 2026.01.02 v.219
{
  "count": 5,
  "query": "екатеринбург ленина",
  "results": [
    {
      "level": 8,
      "guid": "6441e17d-e086-48f4-a5a6-0cc1a4a474b9",
      "address": "г Екатеринбург, пр-кт Ленина",
      "id": 1183514,
      "components": ["г Екатеринбург", "пр-кт Ленина"]
    },
    {
      "level": 8,
      "guid": "3b399f8b-ae59-4191-b4e1-f2ba4dea9093",
      "address": "г Екатеринбург, поселок Шабровский, ул Ленина",
      "id": 1201083,
      "components": ["г Екатеринбург", "поселок Шабровский", "ул Ленина"]
    },
    {
      "level": 8,
      "guid": "348d08ee-0a22-4101-bc4b-c3083432f9ff",
      "address": "г Екатеринбург, село Горный Щит, ул Ленина",
      "id": 1189818,
      "components": ["г Екатеринбург", "село Горный Щит", "ул Ленина"]
    },
    {
      "level": 8,
      "guid": "c8b3676f-979b-4f02-b62f-8e4d22868565",
      "address": "г Екатеринбург, пр-кт Ленина/Мира",
      "id": 1208382,
      "components": ["г Екатеринбург", "пр-кт Ленина/Мира"]
    },
    {
      "level": 8,
      "guid": "c0ba9a18-1ff5-47c5-872b-09f4a1d30e17",
      "address": "г Екатеринбург, пр-кт Ленина/Толмачева",
      "id": 95528387,
      "components": ["г Екатеринбург", "пр-кт Ленина/Толмачева"]
    }
  ]
}

Ответ

  • query — запрос, как его получил сервер; count — сколько адресов в ответе.
  • results — адреса, сначала лучшие: id, guid, level, address, components и с details=true — details.
  • Ничего не нашлось — ответ 200 с пустым results.

Каждое поле описано на странице «Все поля».