Skip to content
Andrey Bondar edited this page Mar 10, 2016 · 25 revisions

Базовый url /api

Регистрация (/user/sign_up)

Точка для регистрации нового пользователя и получения для него access token

POST:

  • username
  • first_name
  • last_name
  • password

Ответ:

OK(200):

{
    "access_token": "03377553167d20a4o021",
    "refresh_token": "eeb3c5a3316114640f75",
    "user": {
        "username": "Username",
        "first_name": "First",
        "last_name": "Last",
        "phone": "+79261234567",
        "vk_profile": "",
        "fb_profile": "http://facebook.com/233760706964073"
    }
}

Такое имя пользователя уже зарегистрировано(400):

{
    "error": "username already taken"
}

Регистрация/Вход через vk/fb (/sign_up/{vk/fb})

POST:

  • token (access token социальной сети)
  • username (желаемое имя пользователя) [Не нужно если уже заходили через эту соц сеть]

Ответ:

OK(200):

{
    "access_token": "03377553167d20a4o021",
    "refresh_token": "eeb3c5a3316114640f75",
    "user": {
        "username": "Username",
        "first_name": "First",
        "last_name": "Last",
        "phone": "+79261234567",
        "vk_profile": "",
        "fb_profile": "http://facebook.com/233760706964073"
    }
}

Такое имя пользователя уже зарегистрировано(400):

{
    "error": "username already taken"
}

Не найден пользователь, соответствующий аккаунту в соц сети, но при этом не было предоставлено имя пользователя для регистрации(404):

{
    "error": "user not found, register new by including username in request"
}

Вход по имени пользователя и паролю (/user/sign_in)

POST:

  • username
  • password

Ответ:

OK(200):

{
    "access_token": "03377553167d20a4o021",
    "refresh_token": "eeb3c5a3316114640f75",
    "user": {
        "username": "Username",
        "first_name": "First",
        "last_name": "Last",
        "phone": "+79261234567",
        "vk_profile": "",
        "fb_profile": "http://facebook.com/233760706964073"
    }
}

Неверно введено имя пользователя или пароль(403):

{
    "error": "wrong username or password"
}

Обновление token (/token/refresh)

Получение нового access_token по refresh_token

POST:

  • refresh_token

OK(200):

{
    "access_token": "03377553167d20a4o021",
    "refresh_token": "eeb3c5a3316114640f75",
    "user": {
        "username": "Username",
        "first_name": "First",
        "last_name": "Last",
        "phone": "+79261234567",
        "vk_profile": "",
        "fb_profile": "http://facebook.com/233760706964073"
    }
}

Дан неправильный refresh_token(400):

{
    "error": "invalid token"
}

Профиль (/user)

API для работы с профилем пользователя

Только для авторизованных пользователей

Для авторизации включить в header запроса пару token : <access_token> (<access_token> выдаётся при авторизации)

GET:

/user/<id> - где <id> - валидный id пользователя

OK(200):

{
    "username": "Username",
    "first_name": "First",
    "last_name": "Last",
    "phone": "+79261234567",
    "vk_profile": "",
    "fb_profile": ""
}

Пользователь не найден(404):

{
    "error": "no such user"
}

Команда (/band)

API для работы с командами

Только для авторизованных пользователей

Для авторизации включить в header запроса пару token : <access_token> (<access_token> выдаётся при авторизации)

Создание (/)

POST:

  • name (Название команды)
  • description (Описание команды)