Модуль миссионерского центра
Описание функции
Префикс интерфейса унифицирован как http(s)://<your-domain>
В производственных средах следует использовать HTTPS, чтобы гарантировать токены аутентификации. HTTP рекомендуется только для сред разработки.
Универсальная асинхронная система управления задачами. В основном поддерживает задачи создания музыки для таких платформ, как Suno. Содержит такие механизмы, как автоматическое обновление состояния задачи, повторная попытка в случае неудачи и возврат квоты.
🔐 Аутентификация пользователя
Получить мои задачи
- Имя интерфейса: получить мои задачи.
- Метод HTTP: GET
- Путь:
/api/task/self - Требования аутентификации: Пользователь
- Введение в функцию: получение списка задач текущего пользователя на страницах, поддержка фильтрации по платформе, идентификатору задачи, статусу и другим условиям.
💡Пример запроса:
const response = await fetch('/api/task/self?p=1&page_size=20&platform=suno&task_id=task123&status=SUCCESS&action=song&start_timestamp=1640908800&end_timestamp=1640995200', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer your_user_token',
'New-Api-User': 'your_user_id'
}
});
const data = await response.json();✅ Пример успешного ответа:
{
"success": true,
"message": "",
"data": {
"items": [
{
"id": 1,
"created_at": 1640908800,
"updated_at": 1640909000,
"task_id": "task123456",
"platform": "suno",
"user_id": 1,
"quota": 1000,
"action": "song",
"status": "SUCCESS",
"fail_reason": "",
"submit_time": 1640908800,
"start_time": 1640908900,
"finish_time": 1640909000,
"progress": "100%",
"properties": {},
"data": {}
}
],
"total": 25,
"page": 1,
"page_size": 20
}
}❗ Пример реакции на ошибку:
{
"success": false,
"message": "Не удалось получить список задач"
}🧾 Описание поля:
p(номер): номер страницы, по умолчанию — 1.p(номер): количество на странице, по умолчанию — 20.p(строка): платформа задач, опционально.p(строка): фильтрация идентификатора задачи, необязательно.p(строка): фильтрация статуса задачи, необязательные значения: «NOT_START», «SUBMITTED», «QUEUED», «IN_PROGRESS», «FAILURE», «SUCCESS», «UNKNOWN».p(строка): фильтрация типов задач, например «песня», «текст» и т. д.p(число): начальная временная метка, необязательно.p(число): временная метка окончания, необязательно.
🧾 Описание поля возврата:
p(числовой): идентификатор записи базы данных.p(строка): идентификатор сторонней задачи.p(строка): платформа задач.p(числовой): идентификатор пользователя.p(число): использована квота.p(строка): тип задачи.p(строка): статус задачиp(строка): причина сбоя.p(число): временная метка отправки.p(число): временная метка началаp(число): отметка времени завершения.p(строка): процент прогресса.p(объект): свойства задачиp(объект): данные результата задачи.p(число): общее количество записей задач, соответствующих условиям.p(номер): текущий возвращаемый номер страницы.p(число): количество записей задач, отображаемых на каждой странице.
🔐 Аутентификация администратора
Получить все задания
- Имя интерфейса: получить все задачи.
- Метод HTTP: GET
- Путь:
p - Требования аутентификации: Администратор.
- Введение в функцию: получение всех задач в системе на страницах, поддержка фильтрации по идентификатору канала, платформе, идентификатору пользователя и другим условиям.
💡Пример запроса:
const response = await fetch('/api/task/?p=1&page_size=20&channel_id=1&platform=suno&task_id=task123&status=SUCCESS&action=song&start_timestamp=1640908800&end_timestamp=1640995200', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer your_admin_token',
'New-Api-User': 'your_user_id'
}
});
const data = await response.json();✅ Пример успешного ответа:
{
"success": true,
"message": "",
"data": {
"items": [
{
"id": 1,
"created_at": 1640908800,
"task_id": "task123456",
"platform": "suno",
"user_id": 1,
"channel_id": 1,
"quota": 1000,
"action": "song",
"status": "SUCCESS",
"submit_time": 1640908800,
"finish_time": 1640909000,
"progress": "100%",
"data": {}
}
],
"total": 100,
"page": 1,
"page_size": 20
}
}❗ Пример реакции на ошибку:
{
"success": false,
"message": "Не удалось получить список задач"
}🧾 Описание поля:
p(номер): номер страницы, по умолчанию — 1.p(номер): количество на странице, по умолчанию — 20.p(строка): фильтрация идентификатора канала, необязательно.p(строка): фильтрация платформы задач, необязательно.p(строка): фильтрация идентификатора задачи, необязательно.p(строка): фильтрация статуса задачи, опционально.p(строка): фильтрация типа задачи, необязательно.p(число): начальная временная метка, необязательно.p(число): временная метка окончания, необязательно.- Возвращаемые поля включают все поля пользовательской задачи, а также:
p(числовой): используемый идентификатор канала.