# Список сервисов

### IP-API (API)

<https://ip-api.com/>

**Страны: Все**

Запрос в реальном времени, есть регистрация (платный (€13.3 в месяц) и бесплатный тариф (45 запросов в минуту)), без регистрации

### IpBase (API)

<https://ipbase.com/>

**Страны: Все**

Запрос в реальном времени, есть регистрация (платный ($9.99 в месяц) и бесплатный тариф (150 запросов в месяц))

### MaxMind (API, local DB)

<https://www.maxmind.com/>

**Страны: Все**

Есть платный (запрос в реальном времени, нужна регистрация) и бесплатный тариф (запрос через базу на сервере, нужна регистрация для получения ключа, для обновления базы используйте CRON задачу, файл cron есть в модуле)

{% code lineNumbers="true" fullWidth="true" %}

```bash
/**
 * Запуск действий по расписанию, рекомендуется запускать раз в неделю
 *
 * Пример вызова:
 * 22 22 * * 3 /usr/bin/php /var/www/site.ru/www/cron/maxmind.php
 * Пример вызова с передачей php.ini
 * 22 22 * * 3 /usr/bin/php --php-ini /etc/php.ini /var/www/site.ru/www/cron/maxmind.php
 * Реальный путь на сервере к корневой директории сайта уточните в службе поддержки хостинга.
 */
```

{% endcode %}

*\* при первом запуске - запустите CRON задачу вручную для скачивания файла базы*

### DaData (API)

[DaData](https://asmp.su/dadata)

**Страны: Россия**

Есть платный и бесплатный тариф (запрос в реальном времени, нужна регистрация)

### 2GIS (API)

<https://platform.2gis.ru/>

**Страны: Россия**

Есть платный и демо тариф (1 месяц) (запрос в реальном времени, нужна регистрация)

### Яндекс Геокодер (API)

<https://yandex.ru/map-constructor/location-tool/>

**Страны: Все**

Есть платный (запрос в реальном времени, нужен API ключ) и бесплатный тариф (запрос в реальном времени, нужен API ключ / возможно без него)

Работает только с координатами и Geolocation API web браузера (если пользователь согласится предоставить свое местоположение)

{% code lineNumbers="true" fullWidth="true" %}

```php
$oGeoData = GeoIp_Controller::instance('yandex')->execute('60.6084,56.8497');
```

{% endcode %}

### Google Геокодер (API)

<https://developers-dot-devsite-v2-prod.appspot.com/maps/documentation/utils/geocoder/embed?hl=ru>

**Страны: Все**

Есть платный (запрос в реальном времени, нужен API ключ) и бесплатный тариф (запрос в реальном времени, нужен API ключ)

Работает только с координатами и Geolocation API web браузера (если пользователь согласится предоставить свое местоположение)

{% code lineNumbers="true" fullWidth="true" %}

```php
$oGeoData = GeoIp_Controller::instance('google')->execute('60.6084,56.8497');
```

{% endcode %}

### GeoIP (local DB)

<https://www.php.net/manual/ru/book.geoip.php>

**Страны: Все**

Не рекомендуемый вариант. Запрос через базу на сервере, нужно доступное расширение **extension = geoip.so** на хостинге

### Sypex Geo (API, local DB)

<https://sypexgeo.net/>

**Страны: Все**

Есть платный (запрос в реальном времени, нужна регистрация) и бесплатный тариф (запрос в реальном времени, можно с регистрацией или без или работа через базу на сервере, для обновления базы используйте CRON задачу, файл cron есть в модуле)

{% hint style="danger" %}
Проблемы с доступности local DB, работает только API
{% endhint %}

{% code lineNumbers="true" fullWidth="true" %}

```bash
/**
 * Запуск действий по расписанию, рекомендуется запускать раз в неделю
 *
 * Пример вызова:
 * 22 22 * * 3 /usr/bin/php /var/www/site.ru/www/cron/sypexgeo.php
 * Пример вызова с передачей php.ini
 * 22 22 * * 3 /usr/bin/php --php-ini /etc/php.ini /var/www/site.ru/www/cron/sypexgeo.php
 * Реальный путь на сервере к корневой директории сайта уточните в службе поддержки хостинга.
 */
```

{% endcode %}

*\* при первом запуске - запустите CRON задачу вручную для скачивания файла базы*

Есть возможность указать адрес сервера API. Сервера расположены в разных странах и городах. Благодаря чему можно значительно уменьшить пинг (ping) до сервера, а соответственно и время доступа к API. В данный момент доступны 14 серверов.

### IpGeoBase (local DB)

<http://ipgeobase.ru/>

**Страны: Россия, Украина**

Запрос в реальном времени без регистрации полностью бесплатно или работа через базу на сервере.

{% hint style="danger" %}
Сервис больше не существует и не поддерживается!
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.morozovpimnev.ru/geoip/spisok-servisov.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
