Загрузить ассет в релиз

POST /repos/{owner}/{repo}/releases/{release_id}/assets

Описание

Этот метод позволяет загрузить ассет в релиз. Поддерживает загрузку файлов в формате multipart/form-data.

Токен

Требуется токен с правами на Запись для Репозитория.

Заголовки

ПараметрОбязательныйОписание
acceptНетТип содержимого ответа. Рекомендуется установить значение application/vnd.gitverse.object+json;version=latest

Параметры пути

ПараметрОбязательныйОписание
ownerДаВладелец репозитория (логин или имя организации)
repoДаНазвание репозитория без расширения .git
release_idДаИдентификатор релиза

Параметры запроса

ПараметрОбязательныйОписание
nameДаИмя ассета (1–255 символов, буквы, цифры, подчеркивания, дефисы, точки; должно включать расширение файла; не должно содержать / или \)
attachmentДаФайл ассета

Тело запроса

Формат: multipart/form-data

Пример запроса

curl -X POST "https://api.gitverse.ru/repos/myuser/myrepo/releases/123/assets?name=myfile.zip" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1" \
  -H "Content-Type: multipart/form-data" \
  -F "attachment=@/path/to/myfile.zip"

Ответ (201 Created)

Ответ содержит информацию о загруженном ассете.

{
  "id": 456,
  "name": "myfile.zip",
  "size": 1024,
  "download_count": 0,
  "browser_download_url": "https://api.gitverse.ru/repos/myuser/myrepo/releases/123/assets/456/download",
  "url": "https://api.gitverse.ru/public/api/attachments/abc123",
  "created_at": "2023-01-01T00:00:00Z",
  "uuid": "abc123"
}

Формат ответа: application/vnd.gitverse.object+json;version=1

Коды ответов

КодСтатусОписание
201CreatedАссет успешно создан
400Bad RequestНекорректные параметры запроса
403ForbiddenДоступ запрещен
404Not FoundРелиз не найден
429Too Many RequestsПревышен лимит запросов
500Internal Server ErrorВнутренняя ошибка сервера

Пример тела ошибки

При ответе 400 тело ответа имеет следующий вид:

{
  "error": {
    "code": "BAD_REQUEST",
    "documentation_url": "https://gitverse.ru/docs/developers/public-api/",
    "message": "The request format is invalid",
    "status": 400
  }
}

Примечания

  • убедитесь, что ключ API указан корректно и обладает необходимыми правами для доступа к репозиторию;
  • имя файла должно соответствовать ограничениям (1-255 символов, допустимые символы).