Решение проблем | 2GIS Documentation
Geocoder API

Решение частых проблем поиска

При использовании поисковых API вы можете получить не тот результат, который ожидали: например, поисковая выдача будет содержать слишком много результатов или не содержать интересующий вас объект. В данной статье собраны наиболее частые проблемы поиска и возможные пути их решения.

Возможные причины:

Убедитесь, что имена параметров написаны в нужном регистре и без опечаток: см. Справочник API.

Пример ошибочного запроса (неверный регистр параметра q):

https://catalog.api.2gis.com/3.0/items/geocode?Q=Москва, Садовническая, 25&key=YOUR_KEY
Ответ
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 404,
        "error": {
            "message": "Results not found",
            "type": "itemNotFound"
        },
        "issue_date": "20240524"
    }
}

Пример исправленного запроса:

https://catalog.api.2gis.com/3.0/items/geocode?q=Москва, Садовническая, 25&key=YOUR_KEY
Ответ
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 200,
        "issue_date": "20240524"
    },
    "result": {
        "items": [
            {
                "address_name": "Садовническая улица, 25",
                "full_name": "Москва, Садовническая улица, 25",
                "id": "4504235282713264",
                "name": "Садовническая улица, 25",
                "purpose_name": "Жилой дом",
                "type": "building"
            }
        ],
        "total": 1
    }
}

Проверьте список доступных значений в Справочнике API.

Пример ошибочного запроса (у параметра type не существует значения house):

https://catalog.api.2gis.com/3.0/items/geocode?lon=37.618947&lat=55.752954&type=house&key=YOUR_KEY
Ответ
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 400,
        "error": {
            "message": "Param 'type' is invalid. Value 'house' is outside of allowed values: 'coordinates','station_entrance','street','adm_div.country','adm_div.district','road','attraction','adm_div.region','adm_div.place','adm_div','parking','adm_div.city','adm_div.district_area','station_platform','crossroad','kilometer_road_sign','adm_div.settlement','gate','building','adm_div.division','adm_div.living_area'",
            "type": "paramIsOutsideSet"
        },
        "issue_date": "20240524"
    }
}

Чтобы убедиться, что данные действительно отсутствуют в 2ГИС, попробуйте найти необходимый объект вручную на карте: откройте сайт https://2gis.ru/ и введите адрес, имя или координаты объекта в строку поиска. Если вы нашли нужный объект, скорректируйте запрос и отправьте снова.

Из-за неровности рельефа и погрешностей, координаты одного и того же объекта в разных источниках могут отличаться. Используйте параметр radius для поиска объекта в определённом радиусе от координаты. Рекомендуемое значение — от 300 метров.

Пример запроса без указания радиуса:

https://catalog.api.2gis.com/3.0/items/geocode?lon=36.207245&lat=51.756514&type=building&key=YOUR_KEY
Ответ
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 404,
        "error": {
            "message": "Results not found",
            "type": "itemNotFound"
        },
        "issue_date": "20240524"
    }
}

Пример запроса с указанием радиуса:

https://catalog.api.2gis.com/3.0/items/geocode?lon=36.207245&lat=51.756514&type=building&key=YOUR_KEY&radius=200
Ответ
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 200,
        "issue_date": "20240524"
    },
    "result": {
        "items": [
            {
                "full_name": "Курск, Подземное сооружение",
                "id": "70030076246895032",
                "name": "Подземное сооружение",
                "purpose_name": "Подземное сооружение",
                "type": "building"
            },
            {
                "address_name": "Никитская, 66",
                "full_name": "Курск, Никитская, 66",
                "id": "10274472305106104",
                "name": "Никитская, 66",
                "purpose_name": "Частный дом",
                "type": "building"
            },
            {
                "address_name": "Островского, 8а",
                "full_name": "Курск, Островского, 8а",
                "id": "10274472305101732",
                "name": "Островского, 8а",
                "purpose_name": "Автосервис",
                "type": "building"
            }
        ],
        "total": 3
    }
}

Возможные причины:

Используйте больше фильтрующих параметров.

Например, можно указать тип объекта, который необходимо найти. Пример запроса без указания типа:

https://catalog.api.2gis.com/3.0/items/geocode?lon=37.611915&lat=55.754061&key=YOUR_KEY
Ответ (возвращаются 6 объектов)
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 200,
        "issue_date": "20240524"
    },
    "result": {
        "items": [
            {
                "full_name": "Москва, улица Моховая",
                "id": "4504338361746011",
                "name": "улица Моховая",
                "type": "street"
            },
            {
                "full_name": "Москва, Арбат",
                "id": "4504209512726530",
                "name": "Арбат",
                "subtype": "district",
                "type": "adm_div"
            },
            {
                "full_name": "Москва, Центральный административный округ",
                "id": "4504647599390721",
                "name": "Центральный административный округ",
                "subtype": "division",
                "type": "adm_div"
            },
            {
                "full_name": "Москва",
                "id": "4504222397630173",
                "name": "Москва",
                "subtype": "city",
                "type": "adm_div"
            },
            {
                "full_name": "Москва город федерального значения",
                "id": "5349042514588558",
                "name": "Москва город федерального значения",
                "subtype": "region",
                "type": "adm_div"
            },
            {
                "full_name": "Москва, Тверской",
                "id": "4504209512726536",
                "name": "Тверской",
                "subtype": "district",
                "type": "adm_div"
            }
        ],
        "total": 6
    }
}

Пример запроса с указанием типа объекта:

https://catalog.api.2gis.com/3.0/items/geocode?lon=37.611915&lat=55.754061&key=YOUR_KEY&type=street
Ответ (возвращается 1 объект)
{
    "meta": {
        "api_version": "3.0.17799",
        "code": 200,
        "issue_date": "20240524"
    },
    "result": {
        "items": [
            {
                "full_name": "Москва, улица Моховая",
                "id": "4504338361746011",
                "name": "улица Моховая",
                "type": "street"
            }
        ],
        "total": 1
    }
}