Use the REST API to list the custom properties assigned to a repository by the organization.
You can use the REST API to view the custom properties that were assigned to a repository by the organization that owns the repository. For more information, see Managing custom properties for repositories in your organization. For more information about the REST API endpoints to manage custom properties, see REST API endpoints for custom properties.
Note
Most endpoints use Authorization: Bearer <YOUR-TOKEN> and Accept: application/vnd.github+json headers, plus X-GitHub-Api-Version: 2026-03-10. Curl examples below omit these standard headers for brevity.
GET /repos/{owner}/{repo}/properties/values
Gets all custom property values that are set for a repository.
Users with read access to the repository can use this endpoint.
accept (string)application/vnd.github+json is recommended.owner (string) (required)
The account owner of the repository. The name is not case sensitive.
repo (string) (required)
The name of the repository without the .git extension. The name is not case sensitive.
200 - OK
403 - Forbidden
404 - Resource not found
Request:
curl -L \
-X GET \
https://api.github.com/repos/OWNER/REPO/properties/values
Response schema (Status: 200):
Array of Custom Property Value:
property_name: required, stringvalue: required, one of:
PATCH /repos/{owner}/{repo}/properties/values
Create new or update existing custom property values for a repository.
Using a value of null for a custom property will remove or 'unset' the property value from the repository.
Repository admins and other users with the repository-level "edit custom property values" fine-grained permission can use this endpoint.
accept (string)application/vnd.github+json is recommended.owner (string) (required)
The account owner of the repository. The name is not case sensitive.
repo (string) (required)
The name of the repository without the .git extension. The name is not case sensitive.
properties (array of objects) (required)property_name (string) (required)value (null or string or array) (required)204 - No Content when custom property values are successfully created or updated
403 - Forbidden
404 - Resource not found
422 - Validation failed, or the endpoint has been spammed.
Request:
curl -L \
-X PATCH \
https://api.github.com/repos/OWNER/REPO/properties/values \
-d '{
"properties": [
{
"property_name": "environment",
"value": "production"
},
{
"property_name": "service",
"value": "web"
},
{
"property_name": "team",
"value": "octocat"
}
]
}'
Response schema (Status: 204):