REST API endpoints for blocking users
Use the REST API to manage blocked users.
About blocking users
If a request URL does not include a {username} parameter then the response will be for the signed-in user (and you must pass authentication information with your request). Additional private information, such as whether a user has two-factor authentication enabled, is included when authenticated through OAuth with the user scope.
List users blocked by the authenticated user
List the users you've blocked on your personal account.
Fine-grained access tokens for "List users blocked by the authenticated user"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Block another user" user permissions (read)
Parameters for "List users blocked by the authenticated user"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." Default: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Default: |
HTTP response status codes for "List users blocked by the authenticated user"
| Status code | Description |
|---|---|
200 | OK |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Code samples for "List users blocked by the authenticated user"
Request example
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/blocksResponse
Status: 200[ { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false } ]Check if a user is blocked by the authenticated user
Returns a 204 if the given user is blocked by the authenticated user. Returns a 404 if the given user is not blocked by the authenticated user, or if the given user account has been identified as spam by GitHub.
Fine-grained access tokens for "Check if a user is blocked by the authenticated user"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Block another user" user permissions (read)
Parameters for "Check if a user is blocked by the authenticated user"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
username string RequiredThe handle for the GitHub user account. |
HTTP response status codes for "Check if a user is blocked by the authenticated user"
| Status code | Description |
|---|---|
204 | If the user is blocked |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | If the user is not blocked |
Code samples for "Check if a user is blocked by the authenticated user"
Request example
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/blocks/USERNAMEIf the user is blocked
Status: 204Block a user
Blocks the given user and returns a 204. If the authenticated user cannot block the given user a 422 is returned.
Fine-grained access tokens for "Block a user"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Block another user" user permissions (write)
Parameters for "Block a user"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
username string RequiredThe handle for the GitHub user account. |
HTTP response status codes for "Block a user"
| Status code | Description |
|---|---|
204 | No Content |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Code samples for "Block a user"
Request example
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/blocks/USERNAMEResponse
Status: 204Unblock a user
Unblocks the given user and returns a 204.
Fine-grained access tokens for "Unblock a user"
This endpoint works with the following fine-grained token types:
The fine-grained token must have the following permission set:
- "Block another user" user permissions (write)
Parameters for "Unblock a user"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
username string RequiredThe handle for the GitHub user account. |
HTTP response status codes for "Unblock a user"
| Status code | Description |
|---|---|
204 | No Content |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Code samples for "Unblock a user"
Request example
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/user/blocks/USERNAMEResponse
Status: 204