2.9 KiB
2.9 KiB
Webhooks API reference
Base: https://git.mpm.to/api/v1
Gitea supports webhooks at the repository and organization level.
List webhooks for a repository
curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks"
Key response fields per hook: id, type, active, events, config.url, config.content_type, created, updated.
Get a single webhook
curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks/{id}"
Create a webhook on a repository
curl -s -X POST \
-H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
-H "Content-Type: application/json" \
-d '{
"type": "gitea",
"active": true,
"events": ["push", "issues", "pull_request", "release"],
"config": {
"url": "https://your-endpoint.example.com/webhook",
"content_type": "json",
"secret": "optional-secret"
}
}' \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks"
Common event types:
push— commits pushed to any branchcreate— branch or tag createddelete— branch or tag deletedfork— repo forkedissues— issue opened/edited/closed/reopenedissue_comment— comment on an issuepull_request— PR opened/edited/closed/mergedpull_request_review— PR review submittedrelease— release publishedrepository— repo created/deleted/made public or private
Update a webhook
curl -s -X PATCH \
-H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
-H "Content-Type: application/json" \
-d '{
"active": true,
"events": ["push", "release"],
"config": {
"url": "https://your-endpoint.example.com/webhook",
"content_type": "json"
}
}' \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks/{id}"
Delete a webhook
curl -s -X DELETE \
-H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks/{id}"
Always confirm before deleting a webhook.
Test a webhook (trigger a ping)
curl -s -X POST \
-H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
"https://git.mpm.to/api/v1/repos/{owner}/{repo}/hooks/{id}/tests"
Organization-level webhooks
Same endpoints, but under /orgs/{org}/hooks instead of /repos/{owner}/{repo}/hooks.
# List org webhooks
curl -s -H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
"https://git.mpm.to/api/v1/orgs/{org}/hooks"
# Create org webhook
curl -s -X POST \
-H "Authorization: token e82a7235b948fbbeea60329422fcac89fa5a5ce8" \
-H "Content-Type: application/json" \
-d '{"type":"gitea","active":true,"events":["push"],"config":{"url":"https://...","content_type":"json"}}' \
"https://git.mpm.to/api/v1/orgs/{org}/hooks"