Обзор

UserEcho предоставляет API, что позволяет выполнять все операции, доступные для пользователей и администраторов через веб-интерфейс и многое другое.

API состоит из базового и расширенного набора функций. Базовое API позволяет делать запросы на чтение. на текущий момент в стадии разработки, оно позволит делать операции записи.

ПОМНИТЕ! Вы никогда не должны предоставлять какие-либо ссылки с токеном доступа агента поддержки своим обычным пользователям. В этом случае Вы предоставите пользователю доступ ко всем функциям агента поддержки! В этом случае весь Ваш контент может быть получен пользователем или даже удален. Вместо этого, Вы можете использовать анонимный токен доступа в сочетании с SSO пользователя или проксировать запросы на своей стороне, чтобы пользователь не видел токен напрямую.

Формат запросов

Все обращения к API должны совершаться по адресу:
https://[alias].userecho.ru/api/v2/

Типовой формат запроса:
https://[alias].userecho.ru/api/v2/[command].[format]?access_token=[api_token]
где:
[alias] - алиас вашего проекта.
[command] - любая из поддерживаемых команд.
[format] - формат вывода. Мы поддерживаем json и xml .
[access_token] - Ваш токен доступа. Вы можете получить ключ по адресу Настройки->Дополнительно->API.

Вы должны заменить [user_id],[feedback_id],[forum_id],... соответствующими значениями

Формат ответов

Мы поддерживаем форматы выдачи JSON и XML. Если Вам небходим другой формат, запросите его на форуме поддержки. Замените [format] на json или xml.

Формат ответа

Ответ содержит "status" он может принимать значения "success" или "error". Если "status" равен "success" то вы получите данные в параметре "data". В случае ошибки, причина будет указана в параметре "message".

Параметр "details" может содержать дополнительную информацию. Например текущую страницу, количество данных, итд..

Дополнительные параметры

Мы поддерживаем постраничную выдачу данных во всех запросах. По умолчанию выдача во всех запросах ограничена 50-ю записями.
Для постраничной выдачи используются два параметра.
page - выберите страницу
limit - количество записей на странице

Пример запроса

Для примера получим список пользователей вашего форума.
https://[alias].userecho.ru/api/v2/users.json?access_token=[replace with access token] - возвращает всех пользователей. https://[alias].userecho.ru/api/v2/users.json?page=11&limit=2&access_token=[replace with access token] - возвратит 11-ю страницу списка пользователей

{
    "status": "success",
    "data": [
        {
            "rating": 23,
            "display_name": "Best user",
            "avatar_url": "https://secure.gravatar.com/avatar/09b4a1f47e5d064b5344c7e6433dd751?default=https%3A%2F%2Fcdn.userecho.ru%2Fimages%2Fno_avatar_48.jpg&s=48",
            "updates_count": 1,
            "id": 7966,
            "is_staff": false,
            "last_activity": "2013-12-01T20:51:10.895Z",
            "date_joined": "2013-12-01T20:51:10.895Z"
        },
        {
            "rating": 6,
            "display_name": "MARK3906",
            "avatar_url": "https://secure.gravatar.com/avatar/92eedc79ef0eb55e8868f808157360b7?default=https%3A%2F%2Fcdn.userecho.ru%2Fimages%2Fno_avatar_48.jpg&s=48",
            "updates_count": 1,
            "id": 7967,
            "is_staff": false,
            "last_activity": "2013-12-01T20:51:16.254Z",
            "date_joined": "2013-12-01T20:51:16.254Z"
        }
    ],
    "details": {
        "count": 78,
        "limit": 2,
        "from": 21,
        "page": 11
    }
}
Пример ответа об ошибке
{
    "status": "fail",
    "message": "User doesn't exists"
}

Документация по всем функциям.