From f32673e4f5be447342142171fe98d209a5e33d5a Mon Sep 17 00:00:00 2001 From: mpmedia Date: Sun, 24 May 2026 23:58:08 -0500 Subject: [PATCH] Add skills/gitea/references/releases.md --- skills/gitea/references/releases.md | 116 ++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 skills/gitea/references/releases.md diff --git a/skills/gitea/references/releases.md b/skills/gitea/references/releases.md new file mode 100644 index 0000000..49cc394 --- /dev/null +++ b/skills/gitea/references/releases.md @@ -0,0 +1,116 @@ +# Releases & Tags API reference + +Base: `https://git.mpm.to/api/v1` + +## List releases for a repository + +```bash +curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases?limit=20&page=1" +``` + +Key response fields per release: `id`, `tag_name`, `name`, `body`, `draft`, `prerelease`, `created_at`, `published_at`, `author.login`, `html_url`, `assets`. + +## Get the latest release + +```bash +curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/latest" +``` + +## Get a release by tag name + +```bash +curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/tags/{tag}" +``` + +## Get a release by ID + +```bash +curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/{id}" +``` + +## Create a release + +```bash +curl -s -X POST \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + -H "Content-Type: application/json" \ + -d '{ + "tag_name": "v1.2.0", + "name": "Release v1.2.0", + "body": "Release notes (markdown supported)", + "draft": false, + "prerelease": false, + "target_commitish": "main" + }' \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases" +``` + +`target_commitish` can be a branch name or commit SHA. Set `draft: true` to save without publishing. Set `prerelease: true` for pre-release versions. + +## Update a release + +```bash +curl -s -X PATCH \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + -H "Content-Type: application/json" \ + -d '{ + "name": "Updated release name", + "body": "Updated release notes", + "draft": false, + "prerelease": false + }' \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/{id}" +``` + +## Delete a release + +```bash +curl -s -X DELETE \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/{id}" +``` + +Always confirm before deleting a release. + +## List tags for a repository + +```bash +curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/tags?limit=20" +``` + +## Create a tag + +```bash +curl -s -X POST \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + -H "Content-Type: application/json" \ + -d '{ + "tag_name": "v1.2.0", + "message": "Tag message", + "target": "main" + }' \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/tags" +``` + +## Delete a tag + +```bash +curl -s -X DELETE \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/tags/{tag}" +``` + +## Upload a release asset + +```bash +curl -s -X POST \ + -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \ + -H "Content-Type: application/octet-stream" \ + --data-binary @/path/to/file \ + "https://git.mpm.to/api/v1/repos/{owner}/{repo}/releases/{id}/assets?name=filename.zip" +```