Watch a repository's commits
Reads a repository’s commits for fixes, so a commit that names a signal shows up on it. Sending a repository already watched changes its branch or its switch rather than adding it twice.
POST
/integrations/commit-reposAuthorization
AuthorizationBearer token · headerrequired`MEDIAN_KEY` from Settings under API, or an MCP OAuth access token. A key acts as the organization; a token acts as the person who approved it.
Request body
requiredapplication/jsonrepostringrequiredowner/repo.
branchstringOnly this branch. Every branch if left out.
closeFromCommitsbooleanClose the signal when the fix lands.
Responses
200The repository being read.
repostring400The request is malformed, and the message names the field.
errorobjectShow propertiesHide properties
codestringmessagestring401The bearer token is missing, revoked, or expired.
errorobjectShow propertiesHide properties
codestringmessagestring429Too many requests. Wait the seconds in `Retry-After`. Limits depend on the plan. See [rate limits](/api/errors-and-limits#rate-limits).
errorobjectShow propertiesHide properties
codestringmessagestringRequest
curl -X POST "https://api.median.sh/v1/integrations/commit-repos" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"repo": "string",
"branch": "string",
"closeFromCommits": true
}'const response = await fetch("https://api.median.sh/v1/integrations/commit-repos", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"repo": "string",
"branch": "string",
"closeFromCommits": true
})
});Response
{
"repo": "string"
}{
"error": {
"code": "string",
"message": "string"
}
}{
"error": {
"code": "string",
"message": "string"
}
}{
"error": {
"code": "string",
"message": "string"
}
}