May 28, 2018

Api Panda

Запрос токена

/oauth/token

headers:

{
  Content-Type: application/x-www-form-urlencoded,
  X-Requested-With: XMLHttpRequest
}

body:

{
  grant_type: password,
  client_id: <id>,
  client_secret: <secret key>,
  username: <login>,
  password: <password>,
  scope: ''
}

POST, PUT, DELETE ,GET – заголовок методов

В случае ошибки PUT, DELETE добавить свойство _method=PUT/DELETE при отправлении и сделать POST запрос.

headers:

{
  X-Requested-With: XMLHttpRequest,
  Content-Type: application/x-www-form-urlencoded,
  Authorization: Bearer <access token>
}  

Языки

/api/v2/languages/все языки без вложенностей

~/languages/?arg1=val1&arg2=val2

parameters:

  • levels=1 – включить вложенность ровней
  • lessons=1 – включить уроки в уровни
  • tasks=1 – включить задачи. Только: id, state, template

~/languages/:id/один язык без вложенности

[ :id – id языка ]

~/languages/:id/?arg1=val1&arg2=val2

parameters:

  • levels=1 – включить вложенность ровней
  • lessons=1 – включить уроки в уровни
  • tasks=1 – включить задачи. Только: id, state, template

Уровни

/api/v2/levels/все уровни без вложенности

~/levels/?arg1=val1&arg2=val2

parameters:

  • language_id=:id – id языка (выборка по языку)
  • lessons=1 – включить уроки в уровни
  • tasks=1 – включить задачи. Только: id, state, template

/api/v2/levels/:id/ – определенный уровень

[ :id – id урока ]

~/levels/:id/?arg1=val1&arg2=val2

parameters:

  • lessons=1 – включить уроки в уровни
  • tasks=1 – включить задачи. Только: id, state, template

Задания

GET /api/v2/tasks/все задания подробно

~/tasks/?arg1=val1&arg2=val2

parameters:

  • fields=1 – включить поля шаблона

GET /api/v2/tasks/:id/задание подробно

~/tasks/:id/?arg1=val1&arg2=val2

parameters:

  • status=1 – получить только статус

PUT /api/v2/tasks/:idответ на задание

body:

  • right-or-not, create-word, insert-word, drop-words, drag-fill, fill-word, true-or-false
{
  "result": ""
}
  • skipped-letters, insert-two-words, relations, name-images,
{
  "result[]": ["",""]
}
  • alphabet, chat, slides
{}

Юзер

GET /api/v2/user/получить авторизованного пользователя

PUT /api/v2/user/languages/:id изменить язык


POST /api/auth/register регистрация пользователя

{
  "name": "",
  "first_name": "",
  "last_name": "",
  "language_id": "",
  "email": "",
  "password": "",
  "password_confirmation": ""
}

POST /api/v2/user/изменение пользователя

{
  "name": "",
  "email": "",
  "first_name": "",
  "last_name": "",
  "language_id": "",
  "location": "",
  "avatar_url": "",
  "_method": "put
}

POST /api/v2/user/passwordизменение пароля пользователя

{
  "current_password": "",
  "new_password": "",
  "new_password_confirmation": "",
  "_method": "put
}

POST /api/password/emailвосстановление пароля по почте

{
	"email": ""
}

response data

{
	"token": ""
}

POST /api/password/resetизменение пароля при восстановлении

{
	"email": "",
	"password": "",
	"password_confirmation": "",
	"token": ""
}