Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---
- swagger: '2.0'
- ################################################################################
- # API Information #
- ################################################################################
- info:
- version: "2.0.0"
- title: Lamuz API
- ################################################################################
- # Host, Base Path, Schemes and Content Types #
- ################################################################################
- host: beta.lamuz.uz
- basePath: /v2
- schemes:
- - http
- consumes:
- - application/json
- - application/form-data
- produces:
- - application/json
- ################################################################################
- # Security #
- ################################################################################
- security:
- - Bearer: []
- ################################################################################
- # Paths #
- ################################################################################
- paths:
- # ==================== USER ====================
- /users/me:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Получить токен пользователя (Bearer)
- consumes:
- - application/json
- description: |
- Этот метод используется для получения гостевого токена или для того чтобы узнать детали пользователя передав token
- ##### Сценарии
- Запрос работает по двум сценариям
- 1. Без заголовка авторизации. В этом случае вернется гостевой аккаунт
- 2. С заголовком авторизации. В этом случае вернется аккаунт пользователя
- или гостевой аккаунт, если токен пользователя истек.
- ##### ВНИМАНИЕ!
- Токен пользователя может измениться. Это нужно учитывать при
- обработке запроса.
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- responses:
- 200:
- description: Модель пользователя и `token` сессии
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- /users/signup:
- post:
- tags:
- - user
- summary: Регистрация НОВОГО пользователя с E-mail и логин
- description: В данном запросе мы регистрируем нового пользователя.
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: User-info
- description: Логин и пароль пользователя
- required: true
- schema:
- $ref: "#/definitions/User-credentials-signup"
- responses:
- 200:
- description: Модель пользователя и `token` сессии
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- 422:
- description: Unproccesable entity
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /users/signin:
- post:
- tags:
- - user
- summary: Авторизация через логин и пароль
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: Credentials
- description: Ввод логина и пароля пользователя для авторизации в приложении
- required: true
- schema:
- $ref: "#/definitions/User-credentials-login"
- responses:
- 200:
- description: Модель пользователя, `token` сессии и права пользователя
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- 422:
- description: Unproccesable entity
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /users/social:
- post:
- tags:
- - user
- summary: Войти или зарегистрироватся с помощью соц аккаунта
- description: Для облегчения входа систему есть возможность зайти в систему через соц сети. Для этого необходимо отправить нижеуказанные данные. Если пользователь уже есть в системе то просто авторизуется в ином случае создается учетная запись пользователю
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: Social-Info
- description: Социальные данные пользователя
- required: true
- schema:
- $ref: "#/definitions/User-credentials-oAuth"
- responses:
- 200:
- description: Модель пользователя, `token` сессии и права пользователя
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- 422:
- description: Unproccesable entity
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /users/signout:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: (СЕЙЧАС НЕ РАБОТАЕТ ЗАПРОС) Выйти из аккаунта пользователя
- consumes:
- - application/json
- description: |
- В данном запросе мы делаем logout из аккаунта пользователя Lamuz. Ппредварительно НЕОБХОДИМО авторизоваться в аккаунте и получить токен. затем мы используем этот токен для процедуры выхода из аккаунта
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: Credentials
- description: Ввод логина и пароля пользователя для выхода из аккаунта
- required: true
- schema:
- $ref: "#/definitions/User-credentials-logout"
- responses:
- 200:
- description: успешно выходим из аккаунта пользователя
- /users/email:
- post:
- security:
- - Bearer: []
- tags:
- - user
- summary: Запрос на повторную отправку email.
- description: Как пример указан логина testlamuz "http://dashboard.lamuz.uz/#/users/update/5a56ecf2-bbce-66c5-d72e-9023a8a11b49/profile" на продашн сервере. При тесте почта придет по адресу testlamuz@mailinator.com
- parameters:
- - in: body
- name: Type
- description: Тело запроса
- required: true
- schema:
- $ref: "#/definitions/User-resend-email"
- responses:
- 200:
- description: возвращает просто true ))
- /users/activation:
- get:
- tags:
- - user
- summary: активация аккаунта через получаемый E-mail
- parameters:
- - in: query
- type: string
- name: "code"
- required: true
- description: "код активации, который можно вытащить только двумя способами. напрямую с письма почты через просмотрение кода или же с сервера"
- responses:
- 204:
- description: открывается окно в браузере, в котором показывает текст о том, что активация прошла успешно. Пример (Активация прошла успешно!)
- 404:
- description: сервер не сохранил сгенерированный код или ещё что-то. Пример (Ой! Что-то пошло не так!)
- /users/recovery:
- get:
- tags:
- - user
- summary: Восстановление пароля
- description: Внимание - работает асинхронно!!! Этот метод находит почту у логина(пользователь) и отправляет ПИН код для восстановления пароля. Если конечно в системе есть такой логин(пользователь). В старом приложении отсутвовал ввод email при регистрации, в связи с этим у некоторых пользователей (логина) может отсустовать email, в этом случае клиентские приложения должны написать в службу поддержки.
- parameters:
- - in: query
- type: string
- name: email
- default: c0e1r0w1o4m3d7i2@lamuz.slack.com
- description: Почтовый адрес канала "#content" в slack
- - in: query
- type: string
- name: login
- default: test
- description: Login пользователя с почтой канала "#content" в slack
- responses:
- 200:
- description: Пользователь существует
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User-recovery-type'
- 404:
- description: Почта или логин не найдена
- /users/exist:
- get:
- tags:
- - user
- summary: Проверить, доступен ли логин и e-mail в системе (удалить login или e-mail)
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: query
- type: string
- required: false
- name: login
- default: davronuz
- description: login или email
- - in: query
- type: string
- required: false
- name: email
- default: davronuz@bk.ru
- description: login или email
- responses:
- 200:
- description: Проверяет доступность логина (т.е. не занят ли он)
- /users/pin:
- get:
- tags:
- - user
- summary: Проверка полученного ПИН кода при восстановлении пароля
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: query
- type: string
- required: false
- name: login
- default: test
- description: login или email
- - in: query
- type: string
- required: false
- name: email
- default: c0e1r0w1o4m3d7i2@lamuz.slack.com
- description: login или email
- - in: query
- description: "ПИН код отправленный на email или телефон, длина от 4 до 6 цифр"
- type: string
- required: true
- name: pin
- default: "1234"
- responses:
- 200:
- description: возвращает лист треков внутри альбома
- 404:
- description: если ПИН не найден
- 422:
- description: Invalid entity parameters
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /users/{user_id}:
- get:
- tags:
- - user
- summary: Получить данные юзера
- description: данный запрос возвращает информацию данного пользователя (песни, плейлисты, исполнители, альбомы)
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Возвращается информация о пользователе
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- /users/{user_id}/profile:
- put:
- security:
- - Bearer: []
- tags:
- - user
- summary: Обновление данных пользователя
- description: |
- Обновление, редактирование данных пользователя с последующим сохранением.
- > Внимание - отправляемый токен должен принадлежать пользователю с правами модератора. гость не может редактировать!
- parameters:
- - in: path
- type: string
- name: user_id
- description: ID пользователя которому надо обновить данные
- required: true
- default: "b1d01fad-2dc4-d7f9-746c-bd9285cb5cd9"
- - in: body
- name: Обновленные данные профиля
- description: Данные пользователя в личном кабинете
- required: true
- schema:
- $ref: "#/definitions/User-credentials-profile"
- responses:
- 200:
- description: Модель пользователя и `token` сессии
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- /users/permission:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Вернуть список ролей и разрешений
- description: |
- Данный запрос возвращает нам массив с ролями и разрешениями из БД
- > Внимание - отправляемый токен должен принадлежать пользователю с правами модератора/администратора
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- responses:
- 200:
- description: Возвращение массива ролей и разрешений в Lamuz
- schema:
- type: object
- title: Roles and Permission models
- properties:
- data:
- $ref: '#/definitions/Role-with-Permission'
- /users/permission/permission:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Вернуть СПИСОК разрешений
- description: |
- Данный запрос возвращает нам информацию о ролях и информацию о каждом действии из БД
- > Внимание - отправляемый токен должен принадлежать пользователю с правами модератора/администратора
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- responses:
- 200:
- description: возвращается информация о разрешениях в Lamuz
- schema:
- type: object
- title: Permission models
- properties:
- data:
- $ref: '#/definitions/Permission'
- /users/permission/{user_id}:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Вернуть список ролей у пользователя
- description: |
- Данный запрос возвращает нам список ролей у пользователя из БД
- > Внимание - отправляемый токен должен принадлежать пользователю с правами модератора администратора
- parameters:
- - in: path
- type: string
- name: user_id
- description: ID пользователя у которого мы берём данные (Даврон)
- required: true
- default: "16687b3d-6b99-ec7a-73f6-a55f65f0db07"
- - in: query
- type: string
- name: "expand"
- default: profile, publisherInfo
- description: "Включить в результат profile,+publisherInfo"
- responses:
- 200:
- description: Возвращается информация о ролях у пользователя
- # Swagger не распознаёт в *-query* параметре знаки вроде , или +. (есть запрос `get` v2/users/16687b3d-6b99-ec7a-73f6-a55f65f0db07?expand=profile,+publisherInfo) там после `profile` стоит запятая с плюсом. swagger url таким отправляет (v2/users/permission/16687b3d-6b99-ec7a-73f6-a55f65f0db07?expand=profile%2C%20publisherInfo)
- /users/password:
- put:
- security:
- - Bearer: []
- tags:
- - user
- summary: Сброс пароля
- description: Сброс пароля для которого необходимо иметь валидный токен для сброса
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: password
- description: Новый пароль
- required: true
- schema:
- $ref: "#/definitions/User-password-recovery"
- responses:
- 200:
- description: Модель пользователя и `token` сессии
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/User'
- /users/session:
- get:
- tags:
- - user
- summary: Получить СЕССИИ юзера
- description: Данный запрос возвращает информацию данного пользователя (СЕССИИ)
- parameters:
- - in: query
- type: string
- name: user_id
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Возвращается информация о сессиях пользователя
- schema:
- type: object
- title: User session model
- properties:
- data:
- $ref: '#/definitions/User-sessions-details'
- post:
- security:
- - Bearer: []
- tags:
- - user
- summary: Регистрация токена для push-уведомлений
- description: При помощи данного токена мы можем рассылать push-уведомления пользователям Lamuz.
- parameters:
- - $ref: '#/parameters/X-Make'
- - $ref: '#/parameters/X-Model'
- - $ref: '#/parameters/X-Platform'
- - $ref: '#/parameters/X-Platform-Version'
- - in: body
- name: сredentials
- description: не знаю что тут должно быть
- required: true
- schema:
- $ref: "#/definitions/Session-token-recovery"
- responses:
- 200:
- description: Модель пользователя и `token` сессии
- /users:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Получить список всех пользователей
- description: |
- Получение списка всех пользователей в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- parameters:
- - in: query
- type: string
- name: "expand"
- required: false
- default: profile
- description: "Включить в результат поиска профили пользователей =profile,"
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: integer
- format: int32
- name: "page"
- required: false
- default: 1
- description: "Указывает количество страниц"
- - in: query
- type: string
- name: "role"
- required: false
- default: User
- description: "Ключевое слово для поиска пользователей. Если ставить *слово, слово*, *слово*"
- responses:
- 200:
- description: Список всех пользователей
- /users/{user_id}/likes/albums:
- get:
- security:
- - Bearer: []
- tags:
- - likes
- summary: Показать список лайкнутых альбомов юзера.
- description: В этом запросе возвращается список лайкнутых альбомов
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист с лайкнутыми альбомами
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Album-details'
- /users/{user_id}/likes/songs:
- get:
- security:
- - Bearer: []
- tags:
- - likes
- summary: Показать список лайкнутых треков у юзера.
- description: В этом запросе возвращается список лайкнутых треков
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист лайкнутых треков у пользователя
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Track-details'
- /users/{user_id}/likes/artists:
- get:
- security:
- - Bearer: []
- tags:
- - likes
- summary: Показать список лайкнутых исполнителей у юзера.
- description: В этом запросе возвращается список лайкнутых исполнителей
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист лайкнутых исполнителей у пользователя
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Artist-details'
- /users/{user_id}/likes/collections:
- get:
- security:
- - Bearer: []
- tags:
- - likes
- summary: Показать список лайкнутых сборников у юзера.
- description: В этом запросе возвращается список лайкнутых сборников
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист лайкнутых сборников у пользователя
- schema:
- type: object
- title: Детали сборника
- properties:
- data:
- $ref: '#/definitions/Collection-details'
- /users/{user_id}/albums:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Показать список альбомов юзера.
- description: В этом запросе возвращается список альбомов пользователя
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист с альбомами пользователя
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Album-details'
- # Данный запрос ничего не возвращает
- /users/{user_id}/collections:
- get:
- security:
- - Bearer: []
- tags:
- - user
- summary: Показать список сборников у юзера.
- description: В этом запросе возвращается список сборников gjkmpjdfntkz
- parameters:
- - in: path
- type: string
- name: user_id
- required: true
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- responses:
- 200:
- description: Лист сборников у пользователя
- schema:
- type: object
- title: Детали сборника
- properties:
- data:
- $ref: '#/definitions/Collection-details'
- # Данный запрос ничего не возвращает
- # ==================== PUBLISHER ====================
- /publishers/{publisher_id}:
- get:
- security:
- - Bearer: []
- tags:
- - publisher
- summary: Вернуть информацию о издателе
- description: В этом запросе мы получаем информацию о Publisher
- parameters:
- - in: path
- type: string
- name: publisher_id
- required: true
- default: "dbaac40d-ab66-4711-ac9a-af477565f043"
- description: ID паблишера - как пример указан ID LAMUZ MEDIA
- responses:
- 200:
- description: Возвращается информация о издателе
- schema:
- type: object
- title: User model
- properties:
- data:
- $ref: '#/definitions/Publisher'
- # ==================== SEARCH ====================
- /search/playlists:
- get:
- security:
- - Bearer: []
- tags:
- - search
- summary: Поиск и фильтрация альбомов\плейлистов
- description: |
- В этом поиске мы рассматриваем просмотр пользовательских плейлистов, а также можем просмотреть (новинки/топ-плейлисты/топ-исполнителей/последнее загруженное)
- parameters:
- - in: query
- type: string
- name: user_id
- required: false
- default: "4e913b1c-842a-4d94-86c8-936923330790"
- description: ID пользователя - как пример указан ID Ярослава
- - in: query
- type: array
- items:
- type: integer
- format: int32
- default: 1
- collectionFormat: multi
- name: "type[]"
- required: false
- description: "Что именно надо вернуть? 1=Плейлист пользователя, 2=Альбом исполнителя, 3=Сборник, 4=Системный плейлист, 5=Сингл"
- - in: query
- type: array
- items:
- type: string
- default: "099385e1-57f8-41b2-90a7-8e55bc67d26e"
- collectionFormat: multi
- name: "genre_id[]"
- required: false
- description: "http://dashboard.lamuz.uz/#/library/genres - по этому url доступен весь список жанров"
- - in: query
- type: string
- name: "name"
- required: false
- default: "*alb*"
- description: "Ключевое слово для поиска плейлиста. Если ставить *слово, слово*, *слово*"
- - in: query
- type: string
- name: "expand"
- required: false
- default: artists
- description: "Включить в результат поиска исполнителя=artists,"
- - in: query
- type: string
- name: "sort"
- required: false
- default: -likes
- description: "Сортировка результата плейлистов по -likes-, -updated_at-, -created_at-, -released_at- (минус в концовке работает не верно)"
- responses:
- 200:
- description: Возвращает список плейлистов пользователя (также можно просмотреть новинки/топ-плейлисты/топ-исполнителей/последнее загруженное)
- /search/songs:
- get:
- security:
- - Bearer: []
- tags:
- - search
- summary: Поиск и фильтрация треков
- description: В этом поиске мы рассматриваем поиск всех треков в системе
- parameters:
- - in: query
- type: string
- name: title
- required: false
- default: "hayol*"
- description: Ключевое слово для поиска трека. Звездочка означает курсор, откуда начать поиск *трек, трек*, *трек*
- - in: query
- type: string
- name: "expand"
- required: false
- default: artists
- description: "Включить в результат поиска albums, genre, regions"
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-во возвращаемого результата"
- - in: query
- type: string
- name: "sort"
- required: false
- default: -likes
- description: "Сортировка результата плейлистов по -likes-, -updated_at-, -created_at- (минус в концовке работает не верно)"
- responses:
- 200:
- description: Лист с информацией о треке
- schema:
- type: object
- title: Детали трека
- properties:
- data:
- $ref: '#/definitions/Track-details'
- /search/artists:
- get:
- security:
- - Bearer: []
- tags:
- - search
- summary: Поиск и фильтрация исполнителей
- description: В этом поиске мы рассматриваем поиск всех исполнителей в системе
- parameters:
- - in: query
- type: string
- name: name
- required: false
- default: "dado*"
- description: Ключевое слово для поиска Исполнителя. Звездочка означает курсор, откуда начать поиск *иполнитель, исполнитель*, *исполнитель*
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-во возвращаемого результата"
- - in: query
- type: string
- name: "sort"
- required: false
- default: -created_at
- description: "Сортировка результата плейлистов по -likes-, -updated_at-, -created_at-, (минус в концовке работает не верно)"
- responses:
- 200:
- description: Лист с информацией о треке
- schema:
- type: object
- title: Детали трека
- properties:
- data:
- $ref: '#/definitions/Artist-details'
- # ==================== SONG ====================
- /songs:
- get:
- security:
- - Bearer: []
- tags:
- - songs
- summary: Получить список всех песен
- description: |
- Получение списка всех треков в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- parameters:
- - in: query
- type: string
- name: "expand"
- required: false
- default: albums
- description: "Включить в результат запроса =albums,genre,regions"
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: integer
- format: int32
- name: "status"
- required: false
- default: 1
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- responses:
- 200:
- description: Возвращает список треков по заданным критериям
- schema:
- type: object
- title: Детали трека
- properties:
- data:
- $ref: '#/definitions/Track-details'
- /songs/{song_id}:
- get:
- security:
- - Bearer: []
- tags:
- - songs
- summary: Получить информацию о композиции
- description: Получить информацию о композиции, чей ID мы указываем в запросе.
- parameters:
- - in: path
- type: string
- name: song_id
- required: true
- description: ID песни - необходимо брать из дашборда/девдаша.
- responses:
- 200:
- description: Возвращает всю информацию (которая мы загружали в БД) о композиции
- schema:
- type: object
- title: Детали композиции
- properties:
- data:
- $ref: '#/definitions/Track-details'
- delete:
- security:
- - Bearer: []
- tags:
- - songs
- summary: Удалить песню
- description: В этом запросе мы удаляем композицию, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: song_id
- required: true
- description: ID трека - данный ID присутствует у каждого объекта контента
- responses:
- 204:
- description: трек просто удаляется и возвращается пустое body. в ответе вернулось только слово "NOCONTENT"
- put:
- security:
- - Bearer: []
- tags:
- - songs
- summary: Редактировать песню
- description: |
- В данном запросе мы Редактируем композицию.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- parameters:
- - in: path
- type: string
- name: song_id
- required: true
- default: "89072e61-a0ce-9727-38d7-dc864d6e4edc"
- description: ID трека - данный ID присутствует у каждого объекта контента
- - in: body
- name: Обновленные данные композиции
- description: Данные композиции
- required: true
- schema:
- $ref: "#/definitions/Track-changes-details"
- responses:
- 200:
- description: Изменённая композиция
- 422:
- description: Ошибка в случае неправильного ввода данных для редактирования трека или если что-то не заполнили
- ###################### в запросе PUT НЕОБХОДИМО ОФОРМИТЬ ТЕЛО JSON ДЛЯ ОТПРАВКИ!!! ##########################
- /songs/{song_id}/listen:
- put:
- security:
- - Bearer: []
- tags:
- - songs
- summary: Получить информацию о количестве прослушиваний композиции
- description: Получить информацию о количестве прослушиваний композиции, чей ID мы указываем в запросе.
- parameters:
- - in: path
- type: string
- name: song_id
- required: true
- description: ID песни - необходимо брать из дашборда/девдаша.
- responses:
- 200:
- description: Возвращает всю информацию о прослушиваниях для композиции
- schema:
- type: object
- title: Детали композиции
- properties:
- data:
- $ref: '#/definitions/Track-details'
- ###################### данный запрос НЕ РАБОТАЕТ! ##########################
- # ==================== CATEGORY ====================
- /categories:
- get:
- security:
- - Bearer: []
- tags:
- - categories
- summary: Показать все категории
- description: Категории это что-то вроде папки где есть разные сборники плейлистов на все настроения и жанры
- parameters:
- - in: query
- type: string
- name: title
- required: false
- description: Ключевое слово для поиска в категориях
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: integer
- name: "type"
- required: false
- default: 2
- description: "На момент создания этого описания было два типа 1 и 2. Первый виден на первой версии приложения. Второй тип на новой версии приложения"
- responses:
- 200:
- description: Список всех категорий
- schema:
- type: object
- title: Детали категорий
- properties:
- data:
- $ref: '#/definitions/Category-details'
- post:
- security:
- - Bearer: []
- tags:
- - categories
- summary: Создание новой Категории
- description: |
- Создание новой КАТЕГОРИИ в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- consumes:
- - multipart/form-data # and/or application/x-www-form-urlencoded
- parameters:
- - in: formData
- name: id
- description: Уникальный ID создаваемой Категории.
- required: false
- type: string
- - in: formData
- name: title
- description: Заголовок (Главное имя) создаваемой Категории.
- required: true
- type: string
- - in: formData
- name: position
- description: Занимаемая позиция создаваемого объекта (Для категории порядковый номер среди других категорий).
- required: false
- type: integer
- - in: formData
- name: description
- description: Описание создаваемой Категории.
- required: false
- type: string
- - in: formData
- name: cover
- description: Главная картинка создаваемой Категории (используется URL картинки, которую загрузили заранее).
- required: false
- type: string
- - in: formData
- name: cover_id
- description: Уникальный ID кавера создаваемой Категории.
- required: false
- type: string
- - in: formData
- name: icon
- description: Иконка формата png для создаваемой Категории (используется URL картинки, которую загрузили заранее).
- required: false
- type: string
- - in: formData
- name: type
- description: Тип для создаваемой Категории.
- required: true
- type: integer
- - in: formData
- name: created_at
- description: Дата создания создаваемой Категории.
- required: false
- type: integer
- - in: formData
- name: updated_at
- description: Дата обновления создаваемой Категории.
- required: false
- type: integer
- - in: formData
- name: image
- description: Картинка-кавер формата jpeg для создаваемой Категории (используется полное название файла картинки, которую загрузили).
- required: true
- type: file
- - in: formData
- name: iconImage
- description: Картинка-иконка формата png для создаваемой Категории (используется полное название файла картинки, которую загрузили).
- required: true
- type: file
- responses:
- 200:
- description: okay
- ###################### в запросе POST НЕОБХОДИМО ОФОРМИТЬ ПОЛЕ PARAMETERS ДЛЯ ОТПРАВКИ!!! ##########################
- /categories/{category_id}:
- delete:
- security:
- - Bearer: []
- tags:
- - categories
- summary: Удалить категорию
- description: В этом запросе мы удаляем категорию, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: category_id
- required: true
- description: ID категории - данный ID присутствует у каждого объекта контента
- responses:
- 204:
- description: Если у Категории не было никакого контента, то он просто удаляется и возвращается пустое body. в ответе вернулось только слово "NOCONTENT"
- # ==================== GENRES ====================
- /genres:
- get:
- security:
- - Bearer: []
- tags:
- - genres
- summary: Показать все жанры
- description: В данном запросе мы получаем все жанры, используемые в БД и в приложении Lamuz (для треков/альбомов/плейлистов)
- parameters:
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: string
- name: "name"
- description: "название жанра"
- - in: query
- type: integer
- name: "page"
- required: false
- default: 1
- description: "Указывает количество страниц"
- responses:
- 200:
- description: "Лист с ЖАНРАМИ"
- schema:
- type: object
- title: Детали жанра
- properties:
- data:
- $ref: '#/definitions/Genre-details'
- # ==================== ARTIST ====================
- /artists:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Получить список всех исполнителей
- description: |
- Получение списка всех исполнителей в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- parameters:
- - in: query
- type: integer
- name: "limit"
- required: false
- default: 50
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: string
- name: "name"
- required: false
- description: Ключевое слово для поиска Исполнителя. Звездочка означает курсор, откуда начать поиск *иполнитель, исполнитель*, *исполнитель*
- - in: query
- type: integer
- format: int32
- name: "page"
- required: false
- default: 1
- description: "Указывает количество страниц"
- - in: query
- type: string
- name: "sort"
- required: false
- default: -created_at
- description: "Сортировка результата плейлистов по -likes-, -updated_at-, -created_at-, -released_at- (минус в концовке работает не верно)"
- responses:
- 200:
- description: Возвращает список исполнителей по заданным критериям
- schema:
- type: object
- title: Детали трека
- properties:
- data:
- $ref: '#/definitions/Artist-details'
- post:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Создать исполнителя в базе данных
- description: |
- В данном запросе создаём исполнителя в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора.
- consumes:
- - multipart/form-data
- parameters:
- - in: formData
- name: name
- description: Имя нового Артиста в БД
- required: true
- type: string
- - in: formData
- name: image
- description: Картинка нового Артиста в БД
- type: file
- responses:
- 201:
- description: Возвращает информацию по созданному Артисту
- schema:
- type: object
- title: Детали артиста
- properties:
- data:
- $ref: '#/definitions/Created-Artist-details'
- /artists/{artist_id}:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Получить информацию об исполнителе
- description: Получить инфу об исполнителе (биография, альбомы, синглы, связанные артисты, дуэты), чей ID мы указываем в запросе.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "6e8a82d5-2a60-0112-d51a-ed108a825e15"
- description: ID артиста - как пример указан ID исполнителя Skrillex
- responses:
- 200:
- description: Возвращает всю информацию (которая мы загружали в БД) об исполнителе
- schema:
- type: object
- title: Детали артиста
- properties:
- data:
- $ref: '#/definitions/Artist-details'
- delete:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Удалить исполнителя
- description: В данном запросе мы удаляем исполнителя по введёному ID. (у данного исполнителя нет никаких треков, синглов, плейлистов и альбомов)
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- description: ID артиста - данный ID присутствует у каждого объекта контента
- responses:
- 204:
- description: Если у исполнителя не было никакого контента, то он просто удаляется и возвращается пустое body. в ответе вернулось только слово "NOCONTENT"
- post:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Редактировать данные у артиста
- description: |
- В данном запросе мы редактируем информацию у артиста.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде! для использования данного запроса необходимо ввести токен модератора
- parameters:
- - in: path
- type: string
- name: artist_id
- description: ID артиста которому надо обновить данные
- required: true
- default: "9656b1d4-3153-8cc4-5367-72837a030c2b"
- - in: body
- name: Обновленные данные Артиста
- description: отправляем схему для изменений в профиле у артиста
- required: true
- schema:
- $ref: "#/definitions/Artist-edited-profile"
- responses:
- 200:
- description: Возвращает всю информацию (которая мы загружали в БД) об исполнителе
- /artists/{artist_id}/likes:
- post:
- security:
- - Bearer: []
- tags:
- - artist
- - likes
- summary: Поставить лайк исполнителю
- description: В данном запросе мы ставим лайк исполнителя по введёному ID.
- parameters:
- - in: path
- type: string
- name: artist_id
- description: ID артиста которому ставим лайк
- required: true
- default: "7d4b47fb-dd26-ca09-8b64-d1a91085c998"
- - in: body
- name: Пустая модель для отметки лайк Артисту
- description: Отправляем пустую модель для отметки лайк
- required: true
- schema:
- $ref: "#/definitions/Like-for-artist"
- responses:
- 204:
- description: Исполнителю добавляется лайк
- delete:
- security:
- - Bearer: []
- tags:
- - artist
- - likes
- summary: Поставить лайк исполнителю
- description: В данном запросе мы ставим лайк исполнителя по введёному ID.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "9656b1d4-3153-8cc4-5367-72837a030c2b"
- description: ID артиста - данный ID присутствует у каждого объекта контента
- responses:
- 204:
- description: Исполнителю добавляется лайк
- ###################### в запросах НЕОБХОДИМО ОФОРМИТЬ ПОЛЕ PARAMETERS ДЛЯ ОТПРАВКИ!!! ##########################
- /artists/{artist_id}/albums:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Показать все альбомы исполнителя.
- description: В этом запросе возвращается список альбомов исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "6e8a82d5-2a60-0112-d51a-ed108a825e15"
- description: ID артиста - как пример указан ID исполнителя Skrillex
- responses:
- 200:
- description: "Лист с альбомами исполнителя"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Album-details'
- 404:
- description: "Not Found"
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /artists/{artist_id}/songs:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Показать все "популярные" синглы исполнителя.
- description: В этом запросе возвращается список "популярных" синглов исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "6e8a82d5-2a60-0112-d51a-ed108a825e15"
- description: ID артиста - как пример указан ID исполнителя Skrillex
- responses:
- 200:
- description: "Лист с популярными синглами исполнителя"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Track-details'
- 404:
- description: "Not Found"
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /artists/{artist_id}/feat:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Показать все совместные альбомы исполнителя.
- description: В этом запросе возвращается список совместных альбомов исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "6e8a82d5-2a60-0112-d51a-ed108a825e15"
- description: ID артиста - как пример указан ID исполнителя Skrillex
- responses:
- 200:
- description: "Лист со всеми совместными альбомами исполнителя"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Track-details'
- 404:
- description: "Not Found"
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /artists/{artist_id}/singles:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Показать все синглы исполнителя.
- description: В этом запросе возвращается список всех синглов исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "e41ff901-8c09-71ee-1770-a7649defc915"
- description: ID артиста - как пример указан ID исполнителя MiyaGi
- responses:
- 200:
- description: "Лист со всеми синглами исполнителя"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Track-details'
- 404:
- description: "Not Found"
- schema:
- type: object
- title: Error model
- properties:
- data:
- $ref: '#/definitions/Error-response'
- /artists/{artist_id}/related:
- get:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Показать всех похожих исполнителей у исполнителя, которого мы рассматриваем
- description: В этом запросе возвращается список всех похожих исполнителей у исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "e41ff901-8c09-71ee-1770-a7649defc915"
- description: ID артиста - как пример указан ID исполнителя MiyaGi
- responses:
- 200:
- description: "Лист со всеми похожими исполнителями"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Track-details'
- post:
- security:
- - Bearer: []
- tags:
- - artist
- summary: Сохранить список связанных исполнителей
- description: В этом запросе сохраняется список всех похожих исполнителей у исполнителя, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: artist_id
- required: true
- default: "9656b1d4-3153-8cc4-5367-72837a030c2b"
- description: "ID артиста, к которому необходимо добавить ПОХОЖИХ исполнителей"
- - in: body
- name: Похожие исполнители
- description: отправляем id артистов, которые должны добавиться в раздел Похожих
- required: true
- schema:
- $ref: "#/definitions/Related-Artist-Model"
- responses:
- 200:
- description: "Лист со всеми похожими исполнителями"
- # ====================== Не ЗНАЮ КАК ОФОРМИТЬ ЗАПРОС POST ===================================
- # ==================== PLAYLIST ====================
- /playlists:
- get:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Отображение плейлистов внутри Категории
- description: Возвращает плейлисты в Категории
- parameters:
- - in: query
- type: array
- items:
- type: integer
- format: int32
- default: 1
- collectionFormat: multi
- name: "type[]"
- required: false
- description: "Что именно надо вернуть? 1=Плейлист пользователя, 2=Альбом исполнителя, 3=Сборник, 4=Системный плейлист, 5=Сингл"
- - in: query
- type: string
- name: category_id
- required: false
- default: "c855eed3-8065-07bf-fd88-908eff2ac13b"
- description: ID категории - например Dance/EDM
- - in: query
- type: string
- name: "expand"
- required: false
- default: artists
- description: "Включить в результат поиска исполнителя `=artists`"
- - in: query
- type: string
- name: "name"
- required: false
- description: "Включить в результат поиска название пользовательского плейлиста `=name`"
- - in: query
- type: integer
- format: int32
- name: "limit"
- required: false
- default: 30
- description: "Лимит кол-ва возвращаемого результата"
- - in: query
- type: integer
- format: int32
- name: "page"
- required: false
- default: 1
- description: "Указывает количество страниц внутри Категории"
- - in: query
- type: string
- name: "sort"
- required: false
- default: position
- description: "Сортировка результата плейлистов по `position`"
- - in: query
- type: integer
- format: int32
- name: status
- required: false
- default: 1
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- - in: query
- type: string
- name: "title"
- required: false
- description: "Включить в результат поиска заголовок ХЗ ЧЕГО `=title`"
- responses:
- 200:
- description: Возвращает список плейлистов внутри категории
- schema:
- type: object
- title: Детали плейлиста
- properties:
- data:
- $ref: '#/definitions/Playlist-details'
- post:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Создать плейлист в зависимости от типа в базе данных
- description: |
- В данном запросе создаём Плейлист в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на дашборде или девдаше! для использования данного запроса необходимо ввести токен модератора.
- consumes:
- - multipart/form-data
- parameters:
- - in: formData
- name: type
- description: Тип нового Плейлиста в БД (тип 1 - пользовательский плейлист; тип 2 - альбом; тип 3 - сборник; тип 4 - системный плейлист; тип 5 - сингл)
- required: true
- type: string
- - in: formData
- name: released_at
- description: Дата релиза нового Плейлиста в БД
- required: true
- type: string
- default: "2017-03-07"
- - in: formData
- name: name
- description: Имя нового Плейлиста в БД
- required: true
- type: string
- - in: formData
- name: image
- description: Картинка нового Плейлиста в БД
- type: file
- responses:
- 201:
- description: Возвращает информацию по созданному Артисту
- schema:
- type: object
- title: Детали артиста
- properties:
- data:
- $ref: '#/definitions/Created-Artist-details'
- /playlists/{playlist_id}:
- get:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Показать информацию плейлиста.
- description: В этом запросе возвращается информация плейлиста, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- default: "87877d0a-500c-5f1c-b70c-3dc219e13cec"
- description: ID плейлиста - как пример указан ID плейлиста "Назад в 2016"
- responses:
- 200:
- description: "Лист с популярными синглами исполнителя"
- schema:
- type: object
- title: Детали альбомов
- properties:
- data:
- $ref: '#/definitions/Playlist-details'
- delete:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Удалить плейлист
- description: |
- В этом запросе мы удаляем плейлист, чей ID мы указываем.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- description: ID плейлиста - данный ID присутствует у каждого объекта контента
- responses:
- 204:
- description: Если у плейлиста не было никакого контента, то он просто удаляется и возвращается пустое body. в ответе вернулось только слово "NOCONTENT"
- put:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Редактировать ротацию треков внутри плейлиста.
- description: В этом запросе мы редактируем ротацию треков плейлиста, чей ID мы указываем.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- description: ID плейлиста в котором хотим произвести изменения.
- - in: body
- name: Model
- description: Изменённые данные ротации треков
- required: true
- schema:
- type: array
- items:
- $ref: '#/definitions/Playlist-rotation-model'
- responses:
- 200:
- description: "Лист с информацией о плейлисте"
- # ====================== Не ЗНАЮ КАК ОФОРМИТЬ ДАННЫЙ ЗАПРОС ===================================
- /playlists/{playlist_id}/songs:
- get:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Показать список треков данного альбома
- description: Этот метода возвращает лист треков + инфорамация в каких еще альбомах этот трек встречается. ?expand=albums именно для этого служит.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- default: "c81308af-0e28-2dfe-0ab6-bc6fc5833c4b"
- description: Это ID альбома или плейлиста. Как пример стоит альбома Шахзоды - Мухаббатим
- - in: query
- type: string
- name: expand
- default: albums
- description: albums = альбомы где встречается этот трек, artists = исполнители встречающиеся в этом треке
- responses:
- 200:
- description: Лист с информацией о треке
- schema:
- type: object
- title: Детали трека
- properties:
- data:
- $ref: '#/definitions/Track-details'
- 404:
- description: Если плейлист не найден
- post:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Добавить треки в плейлист
- description: |
- В этом запросе мы добавляем треки в плейлист, чей ID мы указываем.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- description: "ID плейлиста, к которому необходимо добавить другие треки"
- responses:
- 200:
- description: "Треки добавились в плейлист"
- /playlists/{playlist_id}/songs/{song_id}:
- delete:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Удалить из плейлиста один трек
- description: |
- В этом запросе мы удаляем трек (song_id) из плейлиста (playlist_id)
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- description: ID плейлиста - данный ID присутствует у каждого объекта контента
- - in: path
- type: string
- name: song_id
- required: true
- description: ID песни - необходимо брать из дашборда/девдаша.
- responses:
- 204:
- description: Трек удаляется и возвращается пустое body. в ответе вернулось только слово "NOCONTENT". В дашборде трек удалился из плейлиста.
- /playlists/{playlist_id}/copy/{type}:
- get:
- security:
- - Bearer: []
- tags:
- - playlists
- summary: Создать копию плейлиста с указанием типа для этого плейлиста.
- description: |
- В этом запросе Создаём копию плейлиста с указанием типа для этого плейлиста.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- parameters:
- - in: path
- type: string
- name: playlist_id
- required: true
- default: "77c20564-9f3e-8134-cea4-28b63124250d"
- description: ID плейлиста - Men's health (devdash)
- - in: path
- type: integer
- name: type
- required: true
- description: "тип 1 - пользовательский плейлист; тип 2 - альбом; тип 3 - сборник; тип 4 - системный плейлист; тип 5 - сингл"
- responses:
- 200:
- description: Возвращается информация о созданной копии плейлиста
- schema:
- type: object
- title: Детали созданной копии плейлиста
- properties:
- data:
- $ref: '#/definitions/Playlist-copy-details'
- # ==================== UPDATES ====================
- /updates/{type}/{version}:
- get:
- security:
- - Bearer: []
- tags:
- - updates
- summary: Проверить наличие обновлений
- description: |
- В этом запросе мы проверяем наличие обновлений для пользователей.
- "Детальное описание на: http://help.lamuz.uz/index.php?title=%D0%9E%D0%B1%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F"
- parameters:
- - in: path
- type: string
- name: type
- required: true
- description: Это тип операционной системы (Android 1 / iOS 2)
- - in: path
- type: string
- name: version
- default: "1.4"
- required: true
- description: Это текущая версия приложения
- responses:
- 200:
- description: Если есть обновление для этой версии
- schema:
- type: object
- title: Детали обновления
- properties:
- data:
- $ref: '#/definitions/Updates-details'
- 304:
- description: Если текущая версия является последней (актуальной)
- 404:
- description: Если запись наличия этой версии в БД обновлений нету
- # ==================== ANALITICS ====================
- /analytics:
- get:
- security:
- - Bearer: []
- tags:
- - analytics
- summary: Отображение аналитики по прослушиваниям (iOS/Android или ВСЁ СРАЗУ)
- description: |
- Получение списка всех прослушиваний пользователей в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- parameters:
- - in: query
- type: string
- name: "song_id"
- description: "включить в результат запроса прослушивание только этого трека"
- - in: query
- type: string
- name: "from"
- default: "2017-02-10"
- description: "включить в результат запроса дату, С которой ведём отчёт для статистики"
- - in: query
- type: string
- name: "platform"
- default: "android"
- description: "включить в результат запроса ОС пользователя (android/ios)"
- - in: query
- type: string
- name: "to"
- default: "2017-02-15"
- description: "включить в результат запроса дату, ДО которой ведём отчёт для статистики"
- - in: query
- type: integer
- name: "type"
- required: false
- default: 1
- description: "прослушан ли трек более чем на 50% (тип 1 - прослушан и тип 0 - не прослушан)"
- responses:
- 200:
- description: отобразить статистику по прослушиваниям по введённому периоду времени и типу ОС клиента
- put:
- security:
- - Bearer: []
- tags:
- - analytics
- summary: Добавление записей в статистику
- description: Данный запрос отправляет эти данные клиента на сервер для того, чтобы статистика прослушиваний пополнялась
- parameters:
- - in: body
- name: Обновленные данные прослушиваний для статистики
- description: Элементы статистики прослушивания
- required: true
- schema:
- $ref: "#/definitions/Elements-of-the-listening-statistics"
- responses:
- 200:
- description: Данные добавились
- /analytics/users:
- get:
- security:
- - Bearer: []
- tags:
- - analytics
- summary: Отображение активности пользователей (iOS/Android или ВСЁ СРАЗУ)
- description: |
- Получение списка всех прослушиваний пользователей в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- Для использования данного запроса необходимо ввести токен модератора или администратора.
- В данном запросе мы рассматриваем работу аналитики по отслеживанию активности пользователей.
- parameters:
- - in: query
- type: string
- name: "from"
- required: true
- default: "2017-01-03"
- description: "включить в результат запроса дату, С которой ведём отчёт для статистики"
- - in: query
- type: string
- name: "platform"
- default: "android"
- description: "включить в результат запроса ОС пользователя (Android/iOS)"
- - in: query
- type: string
- name: "to"
- required: true
- default: "2017-03-03"
- description: "включить в результат запроса дату, ДО которой ведём отчёт для статистики"
- responses:
- 200:
- description: отобразить статистику по активности пользователей по введённому периоду времени и типу ОС клиента
- /analytics/registrations:
- get:
- security:
- - Bearer: []
- tags:
- - analytics
- summary: Отображение количества регистраций пользователей (iOS/Android или ВСЁ СРАЗУ)
- description: |
- Получение списка всех регистраций пользователей в базе данных.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- Для использования данного запроса необходимо ввести токен модератора или администратора.
- В данном запросе мы рассматриваем работу аналитики по отслеживанию регистраций пользователей.
- parameters:
- - in: query
- type: string
- name: "from"
- required: true
- default: "2017-01-03"
- description: "включить в результат запроса дату, С которой ведём отчёт для статистики"
- - in: query
- type: string
- name: "platform"
- default: "android"
- description: "включить в результат запроса ОС пользователя (Android/iOS)"
- - in: query
- type: string
- name: "to"
- required: true
- default: "2017-03-03"
- description: "включить в результат запроса дату, ДО которой ведём отчёт для статистики"
- responses:
- 200:
- description: отобразить статистику по регистрациям пользователей по введённому периоду времени и типу ОС клиента
- /analytics/uploads:
- get:
- security:
- - Bearer: []
- tags:
- - analytics
- summary: Отображение количества загрузок треков в БД
- description: |
- Получение списка всех загруженных треков в базу данных за определённую дату или промежуток времени.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- Для использования данного запроса необходимо ввести токен модератора или администратора.
- В данном запросе мы рассматриваем работу аналитики по отслеживанию загруженных треков
- parameters:
- - in: query
- type: string
- name: "from"
- required: true
- default: "2017-01-03"
- description: "включить в результат запроса дату, С которой ведём отчёт для статистики"
- - in: query
- type: string
- name: "to"
- required: true
- default: "2017-03-03"
- description: "включить в результат запроса дату, ДО которой ведём отчёт для статистики"
- responses:
- 200:
- description: отобразить статистику по загрузкам треков в базу данных по введённому периоду времени
- # ==================== NOTIFICATIONS ====================
- /notifications:
- get:
- security:
- - Bearer: []
- tags:
- - notification
- summary: Вернуть список уведомлений (пуши)
- description: |
- Вернуть список пуш уведомлений
- > Внимание - отправляемый токен должен принадлежать пользователю с правами модератора. гость не может редактировать!
- parameters:
- - in: query
- type: integer
- format: int32
- name: limit
- default: 50
- description: Лимит возвращаемого результата
- - in: query
- type: integer
- format: int32
- name: page
- default: 1
- description: Номер страницы (пагинация)
- responses:
- 200:
- description: Возвращается массив со списком уведомлений на пуши
- schema:
- type: object
- title: Notification model
- properties:
- data:
- $ref: '#/definitions/Notification-details'
- # ==================== CODES ====================
- /codes/{code_id}:
- get:
- security:
- - Bearer: []
- tags:
- - code
- summary: Запрос в приложение, через уникальный код, отправляемый через share
- description: В этом запросе мы получаем объект, основанный на коде от модели (используется для акций URL). коды применимы к Треку, Плейлисту (Любой плейлист вне зависимости от типа), Артисту
- parameters:
- - in: path
- type: string
- name: code_id
- required: true
- default: "OoQmu6n"
- description: уникальный код share для объекта - как пример указан код на трек из devdash.lamuz.uz "Me, Myself & I - Marc Stout & Scott Svejda Remix"
- responses:
- 200:
- description: Возвращается информация о композиции
- schema:
- type: object
- title: Track model
- properties:
- data:
- $ref: '#/definitions/Track-details'
- # ==================== ADVERTISING ====================
- /ads/campaign:
- get:
- security:
- - Bearer: []
- tags:
- - ADS
- summary: Вернуть список с рекламными объявлениями
- description: |
- Получение списка всей рекламы в базе данных. Данный запрос работает только с дашбордом/девдашем.
- > Внимание! для использования данного запроса необходимо быть Модератором или Администратором на http://dashboard.lamuz.uz или http://devdash.lamuz.uz.
- Для использования данного запроса необходимо ввести токен модератора или администратора.
- responses:
- 200:
- description: Возвращается список рекламных объявлений
- schema:
- type: object
- title: ADS model
- properties:
- data:
- $ref: '#/definitions/ADS-details'
- # ==================== SYNC ====================
- /users/sync/likes/1:
- post:
- security:
- - Bearer: []
- tags:
- - user
- - sync
- summary: Синхронизация и добавление Трека
- description: |
- В данном запросе мы производим синхронизацию для добавление Треку лайк.
- > Внимание - отправляемый токен должен принадлежать пользователю с активной сессией.
- consumes:
- - application/json
- parameters:
- - in: body
- name: Синхронизация лайков для Треков
- description: В данной модели мы отправляем (actionTime - время добавления треку лайка, entityId - id для трека, которому ставим лайк, status - 1 лайк / 0 - дизлайк)
- required: true
- schema:
- $ref: "#/definitions/Sync-Track-Model"
- responses:
- 200:
- description: Возвращается информация для одного трека из 3-х и модель трека со статусом лайка и последней датой синхронизации
- schema:
- $ref: "#/definitions/Sync-like-Track-details"
- # ====================== ВОЗВРАЩАЕТСЯ ТОЛЬКО ОДИН ТРЕК ИЗ 3-Х ===================================
- /users/sync/likes/3:
- post:
- security:
- - Bearer: []
- tags:
- - user
- - sync
- summary: Синхронизация и добавление Артиста
- description: |
- В данном запросе мы производим синхронизацию для добавление Артисту лайк.
- > Внимание - отправляемый токен должен принадлежать пользователю с активной сессией.
- consumes:
- - application/json
- parameters:
- - in: body
- name: Синхронизация лайков для Артистов
- description: В данной модели мы отправляем (actionTime - время добавления артисту лайка, entityId - id для артиста, которому ставим лайк, status - 1 лайк / 0 - дизлайк)
- required: true
- schema:
- $ref: "#/definitions/Sync-Artist-Model"
- responses:
- 200:
- description: Возвращает модель артиста со статусом лайка и последней датой синхронизации
- schema:
- $ref: "#/definitions/Sync-like-Artist-details"
- /users/sync/likes/4:
- post:
- security:
- - Bearer: []
- tags:
- - user
- - sync
- summary: Синхронизация и добавление лайка Плейлисту
- description: |
- В данном запросе мы производим синхронизацию для добавление Плейлисту лайк.
- > Внимание - отправляемый токен должен принадлежать пользователю с активной сессией.
- consumes:
- - application/json
- parameters:
- - in: body
- name: Синхронизация лайков для Плейлиста
- description: В данной модели мы отправляем (actionTime - время добавления плейлисту лайка, entityId - id для плейлиста, которому ставим лайк, status - 1 лайк / 0 - дизлайк)
- required: true
- schema:
- $ref: "#/definitions/Sync-Playlist-Model"
- responses:
- 200:
- description: Возвращает модель артиста со статусом лайка и последней датой синхронизации
- schema:
- $ref: "#/definitions/Sync-like-Playlist-details"
- ################################################################################
- # definitions #
- ################################################################################
- definitions:
- Roles:
- type: object
- properties:
- type:
- type: integer
- format: int32
- description: Не знаю что это значит
- name:
- type: string
- description: Название роли
- description:
- type: string
- description: описание данной роли
- ruleName:
- type: string
- description: Не знаю что это значит
- data:
- type: string
- description: "Не знаю что это значит (null)"
- createdAt:
- type: integer
- format: int32
- description: Дата создания роли
- updatedAt:
- type: integer
- format: int32
- description: Дата обновления роли
- User:
- type: object
- properties:
- token:
- type: string
- description: токен пользователя в виде hash, валидный на 7 дней [php-backend/config/api/params.php]
- user:
- type: object
- properties:
- id:
- type: string
- description: "UUID пользователя"
- status:
- type: integer
- format: int32
- description: 0=заблокирован, 1=активный, 2=удален, 3=email не подтвержден
- login:
- type: string
- fb_id:
- type: string
- vk_id:
- type: string
- ok_id:
- type: string
- gp_id:
- type: string
- created_at:
- type: string
- description: Дата создания пользователя
- roles:
- type: array
- items:
- $ref: '#/definitions/Roles'
- cover:
- type: string
- description: URL на картинку пользователя
- cover_id:
- type: string
- description: ХЗ что это
- account_number:
- type: integer
- format: int32
- description: номер из биллинга, например для оплаты через пайнет
- code:
- type: string
- description: уникальный реферальный код пользователя в системе. Это линк на его профиль
- balance:
- type: integer
- format: int64
- description: баланс денег на счету у пользователя, указывается в сумах (тийн - не уверен)
- isPremium:
- type: boolean
- description: Показатель состояния пользователя в системе премиум или нет (true/false)
- profile:
- type: object
- properties:
- first_name:
- type: string
- last_name:
- type: string
- email:
- type: string
- phone:
- type: string
- gender:
- type: integer
- format: int32
- description: 1=мужчина, 0-женщина
- birthday:
- type: integer
- format: int32
- description: пример даты рождения 1998 или 2000
- Publisher:
- type: object
- properties:
- id:
- type: string
- description: "ID Издателя"
- status:
- type: integer
- format: int32
- description: 0=заблокирован, 1=активный, 2=удален, 3=email не подтвержден
- login:
- type: string
- fb_id:
- type: string
- vk_id:
- type: string
- ok_id:
- type: string
- gp_id:
- type: string
- created_at:
- type: string
- description: Дата создания Издателя
- roles:
- type: array
- items:
- $ref: '#/definitions/Roles'
- cover:
- type: string
- description: URL на картинку Издателя
- cover_id:
- type: string
- description: ХЗ что это
- code:
- type: string
- description: уникальный реферальный код Издателя в системе. Это линк на его профиль
- account_number:
- type: integer
- format: int32
- description: номер из биллинга, например для оплаты через пайнет
- balance:
- type: integer
- format: int64
- description: баланс денег на счету у Издателя, указывается в сумах (тийн - не уверен)
- isPremium:
- type: boolean
- description: Показатель состояния Издателя в системе премиум или нет (true/false)
- User-credentials-login:
- type: object
- required:
- - login
- - password
- properties:
- login:
- type: string
- default: davronuz
- password:
- type: string
- default: davronuz
- repassword:
- type: string
- User-credentials-logout:
- type: object
- required:
- - login
- - password
- properties:
- login:
- type: string
- default: davronuz
- password:
- type: string
- default: davronuz
- User-credentials-oAuth:
- type: object
- required:
- - network
- - id
- properties:
- network:
- type: string
- description: facebook, vk, odnoklassniki, google
- default: facebook
- id:
- type: string
- description: ID который возвращает соц сеть
- default: "973438249400230"
- birthday:
- type: integer
- format: int32
- description: пример даты рождения 1998 или 2000
- default: 1991
- first_name:
- type: string
- default: Yaroslav
- last_name:
- type: string
- default: Samardak
- gender:
- type: integer
- format: int32
- description: 1=мужчина, 0-женщина
- default: 1
- email:
- type: string
- default: samardak.yaroslav@gmail.com
- image:
- type: string
- description: URL на фото профиля в соц сети
- default: "https://graph.facebook.com/973438249400230/picture?height\u003d500\u0026width\u003d500\u0026migration_overrides\u003d%7Boctober_2012%3Atrue%7D"
- User-credentials-profile:
- type: object
- properties:
- first_name:
- type: string
- description: обязательно имя
- default: Даврон
- last_name:
- type: string
- description: обязательно фамилия
- default: Узакбаев
- email:
- type: string
- description: обязательно email
- default: davron_1995@bk.ru
- birthday:
- type: integer
- format: int32
- description: пример даты рождения 1998 или 2000
- default: 1995
- gender:
- type: integer
- format: int32
- description: 1=мужчина, 0-женщина
- default: 1
- User-credentials-signup:
- type: object
- required:
- - login
- - email
- - password
- - repassword
- - birthday
- - gender
- properties:
- login:
- type: string
- description: обязательно login
- default: swagger-test
- email:
- type: string
- description: обязательно email
- default: swagger-test@mailinator.com
- password:
- type: string
- default: swagger
- repassword:
- type: string
- default: swagger
- birthday:
- type: integer
- format: int32
- description: пример даты рождения 1998 или 2000
- default: 1990
- gender:
- type: integer
- format: int32
- description: 1=мужчина, 0-женщина
- default: 1
- User-resend-email:
- type: object
- required:
- - type
- - userId
- properties:
- type:
- type: string
- description: определяет какой шаблон письма отправить (на данный момент был только signup)
- default: signup
- userId:
- type: string
- default: "5a56ecf2-bbce-66c5-d72e-9023a8a11b49"
- description: это ID логина testlamuz на продашн сервере. Почта testlamuz@mailinator.com
- User-password-recovery:
- type: object
- required:
- - password
- - repassword
- properties:
- password:
- type: string
- repassword:
- type: string
- User-recovery-type:
- type: object
- properties:
- recovery_mode:
- type: integer
- format: int32
- description: Всегда возвращает 0 или null не знаю что это значит
- recovery_data:
- type: string
- description: Тут может быть номер телефона или секретный вопрос ответ
- email:
- type: integer
- format: int32
- description: Всегда возвращает 1 не знаю что это значит
- # Check-user-login/email:
- # type: object
- # required:
- # - login
- # properties:
- # login:
- # type: string
- # email:
- # type: string
- Updates-details:
- type: object
- properties:
- id:
- type: string
- description: хз что это (ID какой-то)
- version:
- type: string
- description: Версия приложения
- core_version:
- type: string
- description: Версия ядра
- platform:
- type: integer
- format: int32
- description: "Какую платформу используем Android 1 / iOS 2"
- type:
- type: integer
- format: int32
- description: "Обязательное ли обновление или нет. 1- да / 0 - нет"
- days:
- type: integer
- format: int32
- description: "раз в сколько дней напоминать пользователю о обновлении"
- cover:
- type: string
- description: линк на изображение в окне обновления
- default: "http://devdl.lamuz.uz/update/default.jpg?ts=1"
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- Track-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный номер трека в системе
- title:
- type: string
- description: название трека
- duration:
- type: integer
- format: int32
- description: длина произведения в секундах
- listen:
- type: integer
- format: int32
- description: количество прослушиваний
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- language:
- type: string
- description: язык на котором спета песня
- year:
- type: integer
- format: int32
- description: год выпуска трека, например 2000 (четыре цифры)
- url:
- type: string
- description: сайт откуда взят трек
- composer:
- type: string
- description: кто является композитором, если это классическая музыка.
- publisher_id:
- type: string
- description: уникальный номер правообладаетля в системе
- country:
- type: string
- description: страна где был выпущен этот трек
- censorship:
- type: boolean
- description: если есть мат то пишем true
- original_artist:
- type: string
- description: оригинальный исполнитель трека, если трек является кавером
- created_at:
- type: string
- description: дата загрузки трека в систему
- updated_at:
- type: string
- description: дата, когда были обновлены данные в треке
- representation:
- type: string
- description: линк для ядра(плеер) в виде JSON где есть инфо о видах репрезентации (качеств трека)
- cover:
- type: string
- description: линк на картину трека\альбома. Иногда называется кавер
- cover_id:
- type: string
- description: Айдишка трека, точно незнаю что это
- likes:
- type: integer
- format: int32
- description: количество нажатых лайков
- artists:
- type: array
- items:
- $ref: '#/definitions/Artist-details'
- mainArtist:
- type: array
- items:
- $ref: '#/definitions/mainArtist-details'
- code:
- type: string
- description: код для того чтобы поделиться треком с другом
- available:
- type: boolean
- description: указывает доступен ли трек для проигрывания для данного пользователя ture\false
- publish_date:
- type: integer
- format: int32
- description: дата с какого числа должен трек быть доступен в системе. Если это премьера правообладатель может захотеть чтобы дата была в будущем
- genre:
- type: array
- items:
- $ref: '#/definitions/Genre-details'
- albums:
- type: array
- items:
- $ref: '#/definitions/Album-details'
- regions:
- type: array
- items:
- $ref: '#/definitions/Regions-details'
- Artist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id исполнителя
- default: "c46993b8-8bdb-46a8-afa4-f274b1805cd0"
- name:
- type: string
- description: имя исполнителя
- default: Dado
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- playlist_count:
- type: integer
- format: int32
- description: количество плейлистов у данного исполнителя
- songs_count:
- type: integer
- format: int32
- description: количество песен у данного исполнителя
- biography:
- type: string
- description: биография данного исполнителя
- cover:
- type: string
- description: линк на кавер исполнителя
- cover_id:
- type: string
- description: уникальтый id исполнителя (хз что это)
- default: "903f53bc-84ea-4097-9e68-bd8186166d9d"
- likes:
- type: integer
- format: int32
- description: количество пользователей, отметивших лайком исполнителя
- created_at:
- type: integer
- format: int32
- description: дата создания исполнителя
- updated_at:
- type: string
- format: date-time
- description: дата обновления записей об исполнителе
- available:
- type: string
- description: хз что это значит
- code:
- type: string
- description: шорт код для share
- default: "ap5BhBWX"
- mainArtist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id исполнителя
- default: "c46993b8-8bdb-46a8-afa4-f274b1805cd0"
- name:
- type: string
- description: имя исполнителя
- default: Dado
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- playlist_count:
- type: integer
- format: int32
- description: количество плейлистов у данного исполнителя
- songs_count:
- type: integer
- format: int32
- description: количество песен у данного исполнителя
- biography:
- type: string
- description: биография данного исполнителя
- cover:
- type: string
- description: линк на кавер исполнителя
- cover_id:
- type: string
- description: уникальтый id исполнителя (хз что это)
- default: "903f53bc-84ea-4097-9e68-bd8186166d9d"
- likes:
- type: integer
- format: int32
- description: количество пользователей, отметивших лайком исполнителя
- created_at:
- type: integer
- format: int32
- description: дата создания исполнителя
- updated_at:
- type: string
- format: date-time
- description: дата обновления записей об исполнителе
- available:
- type: string
- description: хз что это значит
- code:
- type: string
- description: шорт код для share
- default: "ap5BhBWX"
- Album-details:
- type: object
- properties:
- id:
- type: string
- description: не нашёл в дашборде этот id
- default: "2476c1ec-2bc1-48c6-9538-4f47faf89ffa"
- name:
- type: string
- description: название Альбома
- default: "Безупречная Любовь"
- type:
- type: integer
- format: int32
- description: код, для данного контента (2 - Альбом)
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- songs_count:
- type: integer
- format: int32
- description: количество треков у данного альбома
- default: 11
- description:
- type: string
- description: возможно тут должно быть описание альбома
- default: "null"
- duration:
- type: integer
- format: int32
- description: продолжительность данного альбома
- user_id:
- type: string
- default: "49742231-1926-46a2-aec2-06224993b62e"
- description: уникальный ID модератора, который загрузил этот альбом (в данном случае ID Владимира Филатова)
- released_at:
- type: integer
- format: int32
- description: дата релиза данного альбома
- created_at:
- type: integer
- format: int32
- description: дата создания данного альбома
- visible:
- type: integer
- format: int32
- description: 1 - отображать, 0 - не отображать
- likes:
- type: integer
- format: int32
- description: количество лайков у альбома
- cover:
- type: string
- default: "http://dl.lamuz.uz/album/image/68d50b52-e3c1-4d0e-8e46-14fcc0402a78.jpg?ts=2091e8205ea9023d52d260b1a18b6901"
- description: линк на кавер Альбома
- cover_id:
- type: string
- default: "68d50b52-e3c1-4d0e-8e46-14fcc0402a78"
- description: уникальный ID кавера у альбома
- code:
- type: string
- description: шорт код для share
- default: "bexxhXQe"
- Playlist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id плейлиста
- default: "f95074c2-b0ef-e1a3-97ee-eb1f50de6e32"
- name:
- type: string
- description: название Плейлиста
- default: "Танцуй как Ребенок"
- type:
- type: integer
- format: int32
- description: код, для данного контента (тип 1 - пользовательский плейлист; тип 2 - альбом; тип 3 - сборник; тип 4 - системный плейлист; тип 5 - сингл)
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- songs_count:
- type: integer
- format: int32
- description: количество треков у данного плейлиста
- description:
- type: string
- description: ХЗ (возможно тут должно быть описание плейлиста)
- duration:
- type: integer
- format: int32
- description: Общая длительность данного плейлиста
- user_id:
- type: string
- default: "68066b8c-8282-4500-bad6-0c708f06ca82"
- description: уникальный ID пользователя, который создал данный объект
- released_at:
- type: integer
- format: int32
- description: дата релиза данного плейлиста
- created_at:
- type: integer
- format: int32
- description: дата создания данного плейлиста
- visible:
- type: integer
- format: int32
- description: 1 - отображать, 0 - не отображать
- likes:
- type: integer
- format: int32
- description: количество лайков у плейлиста
- cover:
- type: string
- default: "http://dl.lamuz.uz/playlist/image/c86214d1-32f4-958e-eee5-4db543da90c1.png?ts=2d8842a4ea842955cd5d969d3bf76c27"
- description: линк на кавер Плейлиста
- cover_id:
- type: string
- default: "c86214d1-32f4-958e-eee5-4db543da90c1"
- description: уникальный ID кавера у плейлиста
- code:
- type: string
- description: шорт код для share
- default: "vKK5I6Yr"
- Collection-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id Сборника
- default: "be05e409-cc4e-8135-1e7c-03a5ac99c9df"
- name:
- type: string
- description: название Сборника
- default: "Музыка для Путешествий в Машине"
- type:
- type: integer
- format: int32
- description: код, для данного контента (3 - Сборник)
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- songs_count:
- type: integer
- format: int32
- description: количество треков у данного Сборника
- description:
- type: string
- description: ХЗ (возможно тут должно быть описание Сборника)
- duration:
- type: integer
- format: int32
- description: продолжительность данного Сборника
- user_id:
- type: string
- default: "68066b8c-8282-4500-bad6-0c708f06ca82"
- description: уникальный ID пользователя
- released_at:
- type: integer
- format: int32
- description: дата релиза данного Сборника
- created_at:
- type: integer
- format: int32
- description: дата создания данного Сборника
- visible:
- type: integer
- format: int32
- description: 1 - отображать, 0 - не отображать
- likes:
- type: integer
- format: int32
- description: количество лайков у Сборника
- cover:
- type: string
- default: "http://dl.lamuz.uz/collection/image/490b9228-446e-d9aa-3891-608133f9c98d.png?ts=902bb829fa6147d90429baabc6ba7ee2"
- description: линк на кавер Сборника
- cover_id:
- type: string
- default: "490b9228-446e-d9aa-3891-608133f9c98d"
- description: уникальный ID кавера у Сборника
- code:
- type: string
- description: шорт код для share
- default: ""
- category:
- type: string
- description: к какой категории относится Сборник. но обычно возвращается поле "null"
- position:
- type: string
- description: позиция Сборника, но обычно возвращается "null"
- Category-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный ID категории
- default: "3d10fe57-398a-7457-1a29-5c64e8d9f77f"
- title:
- type: string
- description: название Категории
- default: "Новогодняя"
- position:
- type: integer
- format: int32
- default: 1
- description: номер позиции Категории (всего 25)
- description:
- type: string
- default: "null"
- description: это описание категории (null - это пустое описание, т.е. его нет)
- cover:
- type: string
- default: "http://dl.lamuz.uz/category/image/90310340-298a-2beb-22cc-a412bdf1df3b.jpg?ts=72ae6f0b9adbf7101ba367150e9b3a89"
- description: линк на кавер Категории
- cover_id:
- type: string
- default: "90310340-298a-2beb-22cc-a412bdf1df3b"
- description: уникальный ID кавера Категории
- icon:
- type: string
- default: "http://dl.lamuz.uz/category/image/8d917a7a-3dac-588a-a2e9-c487f0cce7c4.png?ts=72ae6f0b9adbf7101ba367150e9b3a89"
- description: Иконка с описанием данной категории. Например белая иконка ёлочных шаров с надписью "Новогодняя".
- type:
- type: integer
- format: int32
- default: 2
- description: хз что это
- created_at:
- type: integer
- format: int32
- default: 1481014056
- description: дата создания данной категории
- updated_at:
- type: integer
- format: int32
- default: 1483522764
- description: дата обновления данной категории
- Notification-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный ID уведомления
- type:
- type: integer
- format: int32
- description: тип уведомления (всего есть 7 типов уведомлений. каждый тип определяет какое уведомление отправляется пользователю и что за содержимое в этом самом уведомлении)
- platform:
- type: integer
- format: int32
- description: Платформа, на которую отправляется уведомление (1 - Android, 2 - iOS)
- title:
- type: string
- description: это описание уведомления (Заголовок)
- body:
- type: string
- default: "null"
- description: тело сообщения, в devdash отображается при отправке через Android
- entity_id:
- type: string
- description: нужен при передаче типа уведомлений альбом или трек, где передается идентификатор сущности
- description:
- type: string
- default: "null"
- description: Возможно это описание уведомления
- url:
- type: string
- default: "null"
- description: URL на уведомление, но оно пустое
- collapse_key:
- type: string
- default: "null"
- description: Не знаю, что это
- created_at:
- type: integer
- format: int32
- description: дата создания данного уведомления
- Genre-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный ID жанра
- name:
- type: string
- description: уникальное название жанра
- Regions-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный ID региона
- name:
- type: string
- description: уникальное название региона
- description:
- type: string
- description: Полное название региона
- Session-token-recovery:
- type: object
- properties:
- cm_token:
- type: string
- default: "dcxqxEwPGvY:APA91bFiDo6JK72JpwtvsNLJdWcQjRMH4BND9FiCLMXdty315vpZqx4KJl4h1Wxy-82aF3BB8_L9sgB0N3FJYFfceB7E1c3qlm2eXHyKMq5LNApVQ9ju5oifqB179zJ7FjPYM2XNvQV2"
- description: токен GCM или iCloud Message
- Elements-of-the-listening-statistics:
- type: object
- properties:
- data:
- type: object
- properties:
- asset_id:
- type: string
- description: ID проигрываемой сущности (uuid)
- default: "96707d2d-cfae-d4e2-6e84-2ac992b5cf5e"
- duration:
- type: integer
- format: int32
- description: Длительность песни, сек
- default: 275
- listenTime:
- type: integer
- format: int32
- description: Уникальное проигранное время, сек
- default: 125
- region_id:
- type: string
- description: ID региона в котором была прослушана песня
- default: "csNMZVQBhJ2KCnYFvJ0dnQ=="
- skippedAt:
- type: integer
- format: int32
- description: В какую секунду был сделан skip
- default: 0
- software_id:
- type: string
- description: Software bundle ID
- default: "Aep/aSIBzFVQIrke4h2DxLdV8xl9T32l7BrNkjMkOpk="
- totalListenTime:
- type: integer
- format: int32
- description: Общее время проигрывания трека, сек
- default: 125
- user_id:
- type: string
- description: ID пользователя (uuid)
- default: "sgNa77aLRCXY2Vl5nj+jzQ=="
- timestamp:
- type: string
- description: Время генерации статистических данных на устройстве (завершение проигрывания). Формат времени ISO-8601.
- default: "2017-02-13T10:02:42+05:00"
- output_device:
- type: integer
- format: int32
- description: Источник звучания (1 - Наушники 2 - Колонки 3 - Bluetooth device)
- default: 2
- type:
- type: integer
- format: int32
- default: 1
- # decription: является ли песня прослушанной по достижению порога для засчитывания прослушивания трека 80% - порог. 1 - прослушан, 2 - не прослушан
- version:
- type: string
- default: "1.1"
- # decription: Каждый уровень берет поле version и приписывает к концу строки свою версию через точку. Пример: Из уровня Core в уровень Application приходит версия: "1". Уровень Application имеет версию "2", поэтому он [уровень] расширяет версию до "1.2". Версия "1.2" отправляется на сервер, который имеет версию "3". Сервер расширяет версию до "1.2.3" и сохраняет в хранилище.
- User-sessions-details:
- type: object
- properties:
- user_id:
- type: string
- description: ID пользователя
- token:
- type: string
- description: токен пользователя для одной сессии
- created_at:
- type: integer
- format: int32
- description: дата создания сессии пользователя
- updated_at:
- type: integer
- format: int32
- description: дата обновления сессии пользователя
- ip:
- type: string
- description: GEOIP пользователя для сессии
- model:
- type: string
- description: модель устройства пользователя для сессии
- make:
- type: string
- description: Производитель устройства пользователя для сессии
- platform:
- type: string
- description: Тип ОС устройства пользователя для сессии
- platform_version:
- type: string
- description: Версия ОС устройства пользователя для сессии
- cm_token:
- type: string
- description: токен GCM или iCloud Message
- # ==================== PERMISSION ====================
- Role-with-Permission:
- type: object
- properties:
- Guest-permission:
- type: array
- items:
- $ref: "#/definitions/Guest-permission"
- User-permission:
- type: array
- items:
- $ref: "#/definitions/User-permission"
- Moderator-permission:
- type: array
- items:
- $ref: "#/definitions/Moderator-permission"
- Publisher-permission:
- type: array
- items:
- $ref: "#/definitions/Publisher-permission"
- Administrator-permission:
- type: array
- items:
- $ref: "#/definitions/Administrator-permission"
- Restricted-permission:
- type: array
- items:
- $ref: "#/definitions/Restricted-permission"
- Permission:
- type: object
- properties:
- restricted_region:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "restricted_region"
- description: Название разрешения для роли
- description:
- type: string
- default: "an see entites in restricted region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update user"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "canUpdateUserProfile"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Guest:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Guest"
- description: Название разрешения для роли
- description:
- type: string
- default: "Guest"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- User:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "User"
- description: Название разрешения для роли
- description:
- type: string
- default: "User"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Moderator:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Moderator"
- description: Название разрешения для роли
- description:
- type: string
- default: "Moderator"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Publisher:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Publisher"
- description: Название разрешения для роли
- description:
- type: string
- default: "Publisher"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- # необходимо дописать список разрешений GET /users/permission/permission: (29 всего в ответе)
- Guest-permission:
- type: object
- properties:
- playlist_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "playlist_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read playlist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- category_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "category_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read category"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- artist_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "artist_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read artist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- genre_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "genre_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read genre"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- song_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "song_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read song"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- User-permission:
- type: object
- properties:
- Guest:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Guest"
- description: Название разрешения для роли
- description:
- type: string
- default: "Guest"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- playlist_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "playlist_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create playlist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "canCreatePlaylist"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- playlist_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "playlist_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete playlist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "isAuthor"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- playlist_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "playlist_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update playlist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "isAuthor"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update user"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "canUpdateUserProfile"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- analitics_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "analytics_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Save analytics data"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Moderator-permission:
- type: object
- properties:
- User:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "User"
- description: Название разрешения для роли
- description:
- type: string
- default: "User"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- category_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "category_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create category"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- category_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "category_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete category"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- category_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "category_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update category"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- artist_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "artist_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create artist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- artist_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "artist_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete artist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- artist_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "artist_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update artist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- genre_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "genre_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create genre"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- genre_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "genre_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete genre"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- genre_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "genre_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update genre"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- song_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "song_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create song"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- song_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "song_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete song"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- song_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "song_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update song"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create user"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read user"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- notification:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "notification"
- description: Название разрешения для роли
- description:
- type: string
- default: "Notification management"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- analitics_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "analytics_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Reade analytics data"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- region_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "region_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- region_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "region_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- region_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "region_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Publisher-permission:
- type: object
- properties:
- User:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "User"
- description: Название разрешения для роли
- description:
- type: string
- default: "User"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- artist_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "artist_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create artist"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- song_create:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "song_create"
- description: Название разрешения для роли
- description:
- type: string
- default: "Create song"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- analitics_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "analytics_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Reade analytics data"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- region_read:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "region_read"
- description: Название разрешения для роли
- description:
- type: string
- default: "Read region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Administrator-permission:
- type: object
- properties:
- Moderator:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Moderator"
- description: Название разрешения для роли
- description:
- type: string
- default: "Moderator"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Publisher:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 1
- description: ХЗ что это
- name:
- type: string
- default: "Publisher"
- description: Название разрешения для роли
- description:
- type: string
- default: "Publisher"
- description: Описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- restricted_region:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "restricted_region"
- description: Название разрешения для роли
- description:
- type: string
- default: "an see entites in restricted region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete user"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- user_role_update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "user_role_update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Update user role"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "canNotChangeOwnRole"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- update:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "update"
- description: Название разрешения для роли
- description:
- type: string
- default: "Updates management"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- region_delete:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "region_delete"
- description: Название разрешения для роли
- description:
- type: string
- default: "Delete region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- Restricted-permission:
- type: object
- properties:
- restricted_region:
- type: object
- properties:
- type:
- type: integer
- format: int32
- default: 2
- description: ХЗ что это
- name:
- type: string
- default: "restricted_region"
- description: Название разрешения для роли
- description:
- type: string
- default: "an see entites in restricted region"
- description: описание разрешения для роли
- ruleName:
- type: string
- default: "null"
- description: ХЗ что это (название правила)
- data:
- type: string
- default: "null"
- description: ХЗ что это
- created_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата создания разрешения
- updated_at:
- type: integer
- format: int32
- default: 1487145472
- description: дата обновления разрешения
- # ==================== ADS ====================
- ADS-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный ID рекламы
- title:
- type: string
- description: уникальное название рекламы
- description:
- type: string
- description: описание для данной рекламы
- cover:
- type: string
- description: линк для иконки данной рекламы
- representation:
- type: string
- description: линк для ядра(плеер) в виде JSON где есть инфо о видах репрезентации (качеств трека)
- url:
- type: string
- description: url адрес на данную рекламу
- language:
- type: string
- description: язык данной рекламы
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- # ===============================================
- Track-changes-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный номер трека в системе
- title:
- type: string
- description: название трека
- duration:
- type: integer
- format: int32
- description: длина произведения в секундах
- listen:
- type: integer
- format: int32
- description: количество прослушиваний
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- language:
- type: string
- description: язык на котором спета песня
- year:
- type: integer
- format: int32
- description: год выпуска трека, например 2000 (четыре цифры)
- url:
- type: string
- description: сайт откуда взят трек
- composer:
- type: string
- description: кто является композитором, если это классическая музыка.
- publisher_id:
- type: string
- description: уникальный номер правообладаетля в системе
- country:
- type: string
- description: страна где был выпущен этот трек
- censorship:
- type: boolean
- description: если есть мат то пишем true
- original_artist:
- type: string
- description: оригинальный исполнитель трека, если трек является кавером
- created_at:
- type: string
- description: дата загрузки трека в систему
- updated_at:
- type: string
- description: дата, когда были обновлены данные в треке
- representation:
- type: string
- description: линк для ядра(плеер) в виде JSON где есть инфо о видах репрезентации (качеств трека)
- cover:
- type: string
- description: линк на картину трека\альбома. Иногда называется кавер
- cover_id:
- type: string
- description: Айдишка трека, точно незнаю что это
- likes:
- type: integer
- format: int32
- description: количество нажатых лайков
- artists:
- type: array
- items:
- $ref: '#/definitions/Artist-details'
- mainArtist:
- type: array
- items:
- $ref: '#/definitions/mainArtist-details'
- code:
- type: string
- description: код для того чтобы поделиться треком с другом
- available:
- type: boolean
- description: указывает доступен ли трек для проигрывания для данного пользователя ture\false
- publish_date:
- type: integer
- format: int32
- description: дата с какого числа должен трек быть доступен в системе. Если это премьера правообладатель может захотеть чтобы дата была в будущем
- genre:
- type: array
- items:
- $ref: '#/definitions/Genre-details'
- albums:
- type: array
- items:
- $ref: '#/definitions/Album-details'
- regions:
- type: array
- items:
- $ref: '#/definitions/Regions-details'
- Playlist-copy-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id плейлиста
- name:
- type: string
- description: название Плейлиста
- type:
- type: integer
- format: int32
- description: код, для данного контента (тип 1 - пользовательский плейлист; тип 2 - альбом; тип 3 - сборник; тип 4 - системный плейлист; тип 5 - сингл)
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- songs_count:
- type: integer
- format: int32
- description: количество треков у данного плейлиста
- description:
- type: string
- description: ХЗ (возможно тут должно быть описание плейлиста)
- duration:
- type: integer
- format: int32
- description: продолжительность данного плейлиста
- user_id:
- type: string
- description: уникальный ID пользователя, который создал данный объект
- released_at:
- type: integer
- format: int32
- description: дата релиза данного плейлиста
- created_at:
- type: integer
- format: int32
- description: дата создания данного плейлиста
- visible:
- type: integer
- format: int32
- description: 1 - отображать, 0 - не отображать
- likes:
- type: integer
- format: int32
- description: количество лайков у плейлиста
- cover:
- type: string
- description: линк на кавер Плейлиста
- cover_id:
- type: string
- description: уникальный ID кавера у плейлиста
- code:
- type: string
- description: шорт код для share
- # Add-related-artists:
- # type: object
- # properties:
- # artists:
- # type: string
- # description: имя исполнителя, которого мы добавляем к основному исполнителю, как ПОХОЖЕГО
- # default: "096eb4d1-8b44-28f4-7df1-70fdadcaf6a4"
- Artist-edited-profile:
- type: object
- properties:
- id:
- type: string
- description: уникальный id исполнителя
- default: "9656b1d4-3153-8cc4-5367-72837a030c2b"
- name:
- type: string
- description: имя исполнителя
- default: Давронио
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- playlist_count:
- type: integer
- format: int32
- description: количество плейлистов у данного исполнителя
- songs_count:
- type: integer
- format: int32
- description: количество песен у данного исполнителя
- biography:
- type: string
- description: биография данного исполнителя
- default: биография артиста Давронио
- cover:
- type: string
- description: линк на кавер исполнителя
- default: "http://devdl.lamuz.uz/artist/image/e0ec67df-98aa-8381-12d7-fde681ff8fcc.jpg?ts=99ec520125ccd3320b7bb0d3be03cfef"
- cover_id:
- type: string
- description: уникальтый id исполнителя (хз что это)
- default: "e0ec67df-98aa-8381-12d7-fde681ff8fcc"
- likes:
- type: integer
- format: int32
- description: количество пользователей, отметивших лайком исполнителя
- created_at:
- type: integer
- format: int32
- description: дата создания исполнителя
- updated_at:
- type: string
- format: date-time
- description: дата обновления записей об исполнителе
- available:
- type: string
- description: хз что это значит
- code:
- type: string
- description: шорт код для share
- default: "nJOmlFZ8"
- Playlist-rotation-model:
- type: string
- properties:
- song1:
- type: string
- description: позиция первого трека
- default: "2dbb6d71-305b-2d0e-17df-db14d9217f4c: 5"
- song2:
- type: string
- description: позиция второго трека
- default: "3cae0c07-81ef-a6ac-f759-7ff2fbeb5ef7: 9"
- song3:
- type: string
- description: позиция третьего трека
- default: "3f0159be-9030-c3c8-96f3-c84892a616ad: 15"
- Like-for-artist:
- type: string
- properties:
- like:
- type: string
- description: пустая модель
- Created-Artist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id исполнителя
- default: "9fa5d8dc-cfe6-0410-6b52-874d6e38568c"
- name:
- type: string
- description: имя исполнителя
- default: Swagger Test
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- playlist_count:
- type: integer
- format: int32
- description: количество плейлистов у данного исполнителя
- songs_count:
- type: integer
- format: int32
- description: количество песен у данного исполнителя
- biography:
- type: string
- description: биография данного исполнителя
- cover:
- type: string
- description: линк на кавер исполнителя
- default: "http://devdl.lamuz.uz/artist/image/d7ae9b33-632e-e640-d917-33314bdc153c.jpg?ts=aa5309deeff2d86dfe3127675dbf30ff"
- cover_id:
- type: string
- description: уникальтый id исполнителя (хз что это)
- default: "d7ae9b33-632e-e640-d917-33314bdc153c"
- likes:
- type: integer
- format: int32
- description: количество пользователей, отметивших лайком исполнителя
- created_at:
- type: integer
- format: int32
- description: дата создания исполнителя
- updated_at:
- type: integer
- format: int32
- description: дата обновления записей об исполнителе
- available:
- type: string
- description: хз что это значит
- code:
- type: string
- description: шорт код для share
- default: "nakBSOrj"
- # ===================== SYNC MODELS ========================
- Sync-History-Item:
- type: object
- properties:
- actionTime:
- type: string
- description: Время добавления сущности, которой добавляем лайк (трек, артист, плейлист/альбом)
- entityId:
- type: string
- description: уникальный id сущности, которой добавляем лайк (трек, артист, плейлист/альбом)
- status:
- type: string
- default: "0"
- description: "Статус для сущности (трек, артист, плейлист/альбом) (1 - лайк / 0 - дизлайк)"
- Sync-Track-Model:
- type: object
- properties:
- history:
- type: array
- items:
- $ref: "#/definitions/Sync-History-Item"
- lastSync:
- type: string
- description: Время последней синхронизации
- default: "2017-03-03T12:21:45+05:00"
- Sync-Artist-Model:
- type: object
- properties:
- history:
- type: array
- items:
- $ref: "#/definitions/Sync-History-Item"
- lastSync:
- type: string
- description: Время последней синхронизации
- default: "2017-03-03T12:21:45+05:00"
- Sync-Playlist-Model:
- type: object
- properties:
- history:
- type: array
- items:
- $ref: "#/definitions/Sync-History-Item"
- lastSync:
- type: string
- description: Время последней синхронизации
- default: "2017-03-03T12:21:45+05:00"
- # ================== SYNC ANSWER MODEL ==================
- Sync-like-Track-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный номер трека в системе
- title:
- type: string
- description: название трека
- duration:
- type: integer
- format: int32
- description: длина произведения в секундах
- listen:
- type: integer
- format: int32
- description: количество прослушиваний
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- language:
- type: string
- description: язык на котором спета песня
- year:
- type: integer
- format: int32
- description: год выпуска трека, например 2000 (четыре цифры)
- url:
- type: string
- description: сайт откуда взят трек
- composer:
- type: string
- description: кто является композитором, если это классическая музыка.
- publisher_id:
- type: string
- description: уникальный номер правообладаетля в системе
- country:
- type: string
- description: страна где был выпущен этот трек
- censorship:
- type: boolean
- description: если есть мат то пишем true
- original_artist:
- type: string
- description: оригинальный исполнитель трека, если трек является кавером
- created_at:
- type: string
- description: дата загрузки трека в систему
- updated_at:
- type: string
- description: дата, когда были обновлены данные в треке
- representation:
- type: string
- description: линк для ядра(плеер) в виде JSON где есть инфо о видах репрезентации (качеств трека)
- cover:
- type: string
- description: линк на картину трека\альбома. Иногда называется кавер
- cover_id:
- type: string
- description: Айдишка трека, точно незнаю что это
- likes:
- type: integer
- format: int32
- description: количество нажатых лайков
- artists:
- type: array
- items:
- $ref: '#/definitions/Artist-details'
- mainArtist:
- type: array
- items:
- $ref: '#/definitions/mainArtist-details'
- code:
- type: string
- description: код для того чтобы поделиться треком с другом
- available:
- type: boolean
- description: указывает доступен ли трек для проигрывания для данного пользователя ture\false
- publish_date:
- type: integer
- format: int32
- description: дата с какого числа должен трек быть доступен в системе. Если это премьера правообладатель может захотеть чтобы дата была в будущем
- likeStatus:
- type: integer
- format: int32
- description: Статус лайка (после лайка -1; после дизлайка -0)
- actionTime:
- type: string
- format: date
- description: Время последних действий с данным объектом
- Sync-like-Artist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id исполнителя
- name:
- type: string
- description: имя исполнителя
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- playlist_count:
- type: integer
- format: int32
- description: количество плейлистов у данного исполнителя
- songs_count:
- type: integer
- format: int32
- description: количество песен у данного исполнителя
- biography:
- type: string
- description: биография данного исполнителя
- cover:
- type: string
- description: линк на кавер исполнителя
- cover_id:
- type: string
- description: уникальтый id кавера исполнителя
- likes:
- type: integer
- format: int32
- description: количество пользователей, отметивших лайком исполнителя
- created_at:
- type: integer
- format: int32
- description: дата создания исполнителя
- updated_at:
- type: string
- format: date
- description: дата обновления записей об исполнителе
- available:
- type: string
- description: хз что это значит
- code:
- type: string
- description: шорт код для share
- likeStatus:
- type: integer
- format: int32
- description: Статус лайка (после лайка -1; после дизлайка -0)
- actionTime:
- type: string
- format: date
- description: Время последних действий с данным объектом
- Sync-like-Playlist-details:
- type: object
- properties:
- id:
- type: string
- description: уникальный id плейлиста
- name:
- type: string
- description: название Плейлиста
- type:
- type: integer
- format: int32
- description: код, для данного контента (тип 1 - пользовательский плейлист; тип 2 - альбом; тип 3 - сборник; тип 4 - системный плейлист; тип 5 - сингл)
- status:
- type: integer
- format: int32
- description: "Статус у данного элемента STATUS_ON_MODERATION = 0; STATUS_ACTIVE = 1; STATUS_DELETED = 2;"
- songs_count:
- type: integer
- format: int32
- description: количество треков у данного плейлиста
- description:
- type: string
- description: ХЗ (возможно тут должно быть описание плейлиста)
- duration:
- type: integer
- format: int32
- description: общая длительность данного плейлиста
- user_id:
- type: string
- description: уникальный ID пользователя, который создал данный объект
- released_at:
- type: integer
- format: int32
- description: дата релиза данного плейлиста
- created_at:
- type: integer
- format: int32
- description: дата создания данного плейлиста
- visible:
- type: integer
- format: int32
- description: 1 - отображать, 0 - не отображать
- likes:
- type: integer
- format: int32
- description: количество лайков у плейлиста
- cover:
- type: string
- description: линк на кавер Плейлиста
- cover_id:
- type: string
- description: уникальный ID кавера у плейлиста
- code:
- type: string
- description: шорт код для share
- category:
- type: array
- items:
- $ref: '#/definitions/Category-details'
- position:
- type: integer
- format: int32
- description: Позиция плейлиста в Категории
- likeStatus:
- type: integer
- format: int32
- description: Статус лайка (после лайка -1; после дизлайка -0)
- actionTime:
- type: string
- format: date
- description: Время последних действий с данным объектом
- # ================== RELATED ARTIST MODEL ==================
- Related-Artist-Model:
- type: object
- properties:
- artists[]:
- type: array
- items:
- $ref: "#/definitions/Artist[]-Model"
- Artist[]-Model:
- type: string
- description: Уникальный id артиста, которого мы добавляем в раздел ПОХОЖИЕ
- ################################################################################
- # Errors #
- ################################################################################
- Error-message:
- type: object
- properties:
- field:
- type: string
- description: название поля модели или заголовка которые не были заполнены или заполнены не верно
- message:
- type: array
- items:
- type: string
- Error-response:
- type: object
- properties:
- name:
- type: string
- message:
- type: string
- code:
- type: integer
- format: int32
- status:
- type: integer
- format: int32
- errors:
- type: array
- items:
- $ref: "#/definitions/Error-message"
- version:
- type: string
- ################################################################################
- # securityDefinitions #
- ################################################################################
- securityDefinitions:
- Bearer:
- description: |
- Для получения доступа к API необходимо указать действительный JWT token,
- передавая его в заголовок 'Authorization' при каждом запросе к серверу.
- Чтобы получить JWT token необходимо воспользоваться одним из запросов
- * `/users/me`
- * `/users/signin`
- * `/users/social`
- Токен в заголовке 'Authorization' должен передаваться таким образом:
- `Bearer XXXXXXXXXXXXXXXX`
- type: apiKey
- name: Authorization
- in: header
- #template: "Bearer {apiKey}"
- ################################################################################
- # Parameters #
- ################################################################################
- parameters:
- X-Make:
- name: X-Make
- in: header
- description: Версия платформы устройства
- required: true
- type: string
- default: Xiaomi
- X-Model:
- name: X-Model
- in: header
- description: Модель устройства
- required: true
- type: string
- default: Redmi 4
- X-Platform:
- name: X-Platform
- in: header
- description: Платформа (iOS, Android, WEB)
- required: true
- type: string
- default: android
- X-Platform-Version:
- name: X-Platform-Version
- in: header
- description: Версия платформы устройства
- required: true
- type: string
- default: 6.0.1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement