ГеоКонтакт API

07.11

Введение

ГеоКонтакт API — интерфейс передачи сторонним ресурсам данных о местоположении пользователя системы ГеоКонтакт.

Условия использования

Использование ГеоКонтакт API означает согласие с политикой пользования сервисом, представленной в Пользовательском соглашении. При несоблюдении условий Соглашения ГеоКонтакт оставляет за собой право препятствовать использованию данного интерфейса в рамках определенного ресурса и/или сервиса.

Специфика

Передача данных на сервер основывается на HTTP/1.1 GET-запросах, формат получения данных с сервера — XML 1.0. Кодировка XML — UTF8.

Передача и получение данных без авторизации

Передача запроса: GET http://xml01.geokontakt.ru/?id=$id
где $id (int) — идентификатор пользователя. Пользователи могут узнать свой id в профиле на сайте ГеоКонтакт.

Ответ сервера:

<?xml version="1.0" encoding="utf-8"?>
<user>
    <name>Имя пользователя</name>
    <location>Местоположение пользователя</location>
    <avatar_url>Ссылка на аватар пользователя</avatar_url>
    <url>Ссылка на карту с отмеченным местоположением пользователя</url>
</user>

В случае, если пользователь отказался открыто предоставлять сведения о своем местоположении, сервер вернет следующий ответ:

<?xml version="1.0" encoding="utf-8"?>
<user>
    <url>http://www.geokontakt.ru/</url>
</user>

Передача и получение данных с авторизацией

Передача запроса: GET http://xml01.geokontakt.ru/?email=$email&password=$hash
где $email (str) — E-mail пользователя, $hash — MD5(пароль).

Ответ сервера:

<?xml version="1.0" encoding="utf-8"?>
<user>
    <name>Имя пользователя</name>
    <location>Местоположение пользователя</location>
    <avatar_url>Ссылка на аватар пользователя</avatar_url>
    <url>Ссылка на карту с отмеченным местоположением пользователя</url>
    <groups>
        <group>
            <title>Название группы</title>
            <scope>Область видимости группы (0 — общедоступная, 1 — закрытая)</scope>
            <location>Географические предпочтения группы</location>
            <avatar_url>Ссылка на аватар группы</avatar_url>
            <user>
                <user_id>Идентификатор пользователя (int)</user_id>
                <name>Имя пользователя</name>
                <address>Местоположение пользователя</address>
            </user>
            [<user>...</user>]
        </group>
        [<group>...</group>]
    </groups>
</user>

В случае, если пользователь отказался открыто предоставлять сведения о своем местоположении, сервер вернет следующий ответ:

<?xml version="1.0" encoding="utf-8"?>
<user>
    <url>http://www.geokontakt.ru/</url>
</user>

Пример использования

Исходный код для flash-виджета без авторизации может скачать любой желающий :)

Результат работы виджета показан ниже. Обращаем ваше внимение, что этот демо-флеш показывает реальное местоположение нашего сотрудника. Поэтому если он ограничивает доступ к просмотру, то его местоположение не отображается.

Вы не можете комментировать новость, пока не зарегистрируетесь.