Общее
Этот раздел API посвящён отображению и сохранению наборов звуков для пользователей:
- вызов /sound_sets/create для создания набора звуков
- вызов /sound_sets/update для обновления существующего набора звуков
- вызов /sound_sets/list для того, чтобы отобразить сохранённые наборы звуков пользователя
- вызов /sound_sets/show для отображения состава «анонимных» наборов звуков
Создание набора звуков является платной фичей. Во втором случае созданный набор будет «анонимным» и информацию о его составе Таким образом данный API работает только при наличии платного доступа у пользователя.
В случае наличия оплаченной подписки приложение должно при обращении к экрану Звуков считывать набор сцен (/list) и выстраивать список сохранённых наборов. При выборе сохранённого набора требуется вычитать его содержимое (звуки и их расположение на экране) через ендпоинт /show. Создание нового набора идёт через ендпоинт /create. В ответ ендпоинт будет возвращать идентификаторы созданного набора. При обновлении набора (перемещении значков звуков по экрану) требуется вызывать /update.
/create
Описание: сохраняет набор звуков для пользователя
Полный путь к методу: https://www.s1eep.app/api/sound_sets/create
Тип запроса: POST
Требования безопасности: API-ключ
Дополнительные ожидаемые параметры:
- _user_token — для закрепления набора за конкретным пользователем (необязательно, в случае отсутствия набор будет «анонимным»)
- name — название набора звуков
- items[] — массив JSON-строчек с информацией о звуке с полями sound_id, x (координата 1) и y (координата 2). Пример: {"sound_id":10,"x":60.37,"y":33.56}
Дополнительные возвращаемые параметры:
- sound_set_id — идентификатор созданного набора
Пример успешного ответа:
{ "_code": 200, "_msg": "OK", "_need_payment": false, "_data": { "sound_set_id": 9 } }
Пример ошибки:
{ "_code": 400, "_msg": "Data validation error: The items field is required.", "_need_payment": false, "_data": "{}" }
/list
Описание: отображает сохранённые наборы звуков пользователя
Полный путь к методу: https://www.s1eep.app/api/sound_sets/list
Полный путь к методу: https://www.s1eep.app/api/sound_sets/list
Тип запроса: POST
Требования безопасности: API-ключ + пользовательский токен
Дополнительные ожидаемые параметры:
- нет
Дополнительные возвращаемые параметры:
- sound_sets_id — массив словарей со следующими ключами:
- id — идентификатор набора звуков
- name — название набора звуков
- sound_set_items_count — количество звуков в наборе
- sound_set_items — массив словарей с информацией о звуках в наборе со следующими ключами:
- sound_id — идентификатор звука
- x — координата 1 звука
- y — координата 2 звука
Пример ответа:
{ "_code": 200, "_msg": "OK", "_need_payment": false, "_data": { "sound_sets": [ { "id": 8, "name": "Another list", "sound_set_items_count": 3, "sound_set_items": [ { "sound_id": 5, "x": 60.37, "y": 33.56 }, { "sound_id": 2, "x": 22.91, "y": 11.16 }, { "sound_id": 7, "x": 88.91, "y": 81.5 } ] } ] } }
/show
Описание: показывает содержание «анонимных» наборов
Полный путь к методу: https://www.s1eep.app/api/sound_sets/show
Тип запроса: POST
Требования безопасности: API-ключ
Дополнительные ожидаемые параметры:
- sound_set_ids[] — массив идентификаторов наборов
Дополнительные возвращаемые параметры:
- sound_sets — массив словарей с данными о наборах. Включает в себя следующие поля:
- id — идентификатор набора
- name — название набора
- sound_set_items — массив словарей с информацией о звуках в наборе со следующими ключами:
- sound_id — идентификатор звука
- x — координата 1 звука
- y — координата 2 звука
Пример успешного ответа:
{ "_code": 200, "_msg": "OK", "_need_payment": false, "_data": { "sound_sets": [ { "id": 9, "name": "Anonymous list", "sounds": [], "sound_set_items": [ { "sound_id": 10, "x": 60.37, "y": 33.56 }, { "sound_id": 11, "x": 22.91, "y": 11.16 }, { "sound_id": 9, "x": 88.91, "y": 81.5 } ] } ] } }
Пример ошибки:
{ "_code": 400, "_msg": "Data validation error: The sound_set_ids field is required.", "_need_payment": false, "_data": "{}" }