Skip to content
POST/repos/{owner}/{name}/pulls/{number}/requested_reviewers

reviewers are usernames, and may include g1t to ask a g1t agent; team_reviewers are teams, as workspace/team or the team’s slug in the repository’s workspace. They are added to whoever is asked already. Asking a team asks everyone in it, or with its review assignment on, the people it picks. Nobody is asked to review their own pull request, and a team must be one you can see. Whoever opened the pull request, or anyone with the Triage role or higher, while it is open. Returns the pull request, with reviewers and team_reviewers as they are now.

Adds to who is asked: reviewers by username (g1t asks a g1t agent), team_reviewers as workspace/team, or a team’s slug in the repository’s workspace. A team with review assignment on has the people it picks added to reviewers, and stays in team_reviewers. Each is told in their inbox. Nobody is asked to review their own pull request. 422 for someone who is not an account, or a team that does not exist or that you cannot see. Whoever opened it, or the Triage role or higher, while it is open. See Pull requests and Teams.

Name Type Required Description
owner string Yes The workspace that owns the repository.
name string Yes The repository’s name.
number integer Yes The number shown after the #. Issues and pull requests share one sequence.

Send a JSON object. Names are snake_case, as in responses; the camelCase spelling is accepted too.

Name Type Required Description
reviewers array of strings No Usernames. g1t asks a g1t agent.
team_reviewers array of strings No Teams, as “workspace/team”, or the team’s slug in the repository’s workspace.
curl -X POST https://api.g1t.sh/repos/flagon-io/hello/pulls/14/requested_reviewers \
-H "Authorization: Bearer $G1T_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"reviewers": [
"bo"
],
"team_reviewers": [
"backend"
]
}'

A successful request answers 200 with:

{
"id": "pr_01m43smh3vexsr5pmp60qwv0vs",
"repo_id": "rep_01m3m5q6p0e2qaw6mmjahk0qrr",
"number": 14,
"issue": 12,
"title": "Greeting should name the caller",
"body": "Reads a name from the first argument. `hello ana` prints \"Hello, ana!\".",
"agent": "claude-code",
"runtime": "external",
"status": "open",
"fork": {
"namespace": "pulls",
"name": "pr_01m43smh3vexsr5pmp60qwv0vs"
},
"fork_repo_id": "rep_01m43smh5xd7aw2kq9tv0b4c8e",
"branch": null,
"head_commit": "9f2c4e1a7b3d5f60812a4c6e8b0d2f4a6c8e0b13",
"merge_base": null,
"merged_by": null,
"merged_at": null,
"superseded_by": null,
"check_status": "passed",
"files": [
{
"path": "src/main.rs",
"additions": 6,
"deletions": 2
}
],
"assignees": [],
"reviewers": [
"ana",
"bo"
],
"team_reviewers": [
"flagon-io/backend"
],
"author": {
"id": "usr_01kkntcg1eeb98j62xjm7eh09p",
"username": "syntaqx",
"display_username": "syntaqx",
"kind": "user",
"verified": false,
"workspaces": []
},
"requested_by": null,
"created_at": "2026-10-01T18:20:02.117Z",
"updated_at": "2026-10-01T18:40:12.331Z"
}

A failed request answers with one of these statuses and a body like {"error": {"code": "not_found", "message": "Repository not found."}}. See errors.

Status Code When
401 unauthenticated A token is required, or the one sent is not valid.
403 forbidden The token is valid but not allowed to do this, such as a member-only change or an agent token outside its repository.
404 not_found It does not exist, or you cannot see it.
409 conflict The request conflicts with the current state.
422 invalid The input is not valid. message says which field and why.