Suggest teams and people to grant a role on a repository
GET/api/repos/{owner}/{repo}/grantee-suggestions
listGranteeSuggestions
The repo Access picker's lookup. Required role: `repo:admin`, the decision `addRepoGrant` asks. Matches `q` (one leading `@` ignored) case-insensitively as a prefix of a team's key or name — teams of the repo's organization only, none for a personal repository — and of a human account's handle or display name. Workspace members rank first; accounts outside the workspace match only once `q` has 2 or more characters. Never matches email addresses, and a `q` containing `@` past its first character answers no suggestions: whether an address has an account is never disclosed. Empty `q` → empty list. `limit` defaults to 8, at most 20. Rate-limited per calling account (429 with `Retry-After`).
Requires authentication using a bearer token or a session cookie — see tokens and scopes.
curl
curl -X GET 'https://neosource.dev/api/repos/OWNER/REPO/grantee-suggestions' \
-H 'Authorization: Bearer $NEOSOURCE_TOKEN'fetch
fetch("https://neosource.dev/api/repos/OWNER/REPO/grantee-suggestions", {
method: "GET",
headers: {
Authorization: "Bearer $NEOSOURCE_TOKEN",
},
});Path parameters
ownerrequiredRepository owner or organization slug.
reporequiredRepository name.
Query parameters
qWhat the admin has typed. One leading `@` is ignored; matching is a case-insensitive prefix of a team's key or name, or an account's handle or display name. Empty → no suggestions.
limitMost suggestions to return (default 8, at most 20).
Responses
200Suggestions
application/json
Standard errors
Bodies documented once for the whole API — see standard errors.
- 400Bad Request — one of: invalid_input
- 401Authentication required
- 403Forbidden — one of: forbidden
- 404Not Found — one of: not_found
- 409Conflict — one of: already_exists, conflict, non_fast_forward
- 423Locked — one of: busy
- 429Rate limited — retry after the `Retry-After` header
- 500Internal server error
- 503Service temporarily unavailable / at capacity — retry after the `Retry-After` header
- 504Gateway timeout — the request exceeded the server's handling budget