カスタム プロパティの REST API エンドポイント
REST API を使用して、組織のカスタム プロパティを作成および管理します。
カスタム プロパティについて
REST API を使用して、組織のカスタムプロパティを作成および管理することができます。 カスタム プロパティを使用すると、組織内のリポジトリにメタデータを追加できます。 詳しくは、「Organization 内リポジトリのカスタム プロパティの管理」をご覧ください。
Get all custom properties for an organization
Gets all custom properties defined for an organization. Organization members can read these properties.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (read)
"Get all custom properties for an organization" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
http_status_code
| status_code | 説明 |
|---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
code_samples
request_example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/schemaResponse
Status: 200[
{
"property_name": "environment",
"url": "https://HOSTNAME/orgs/github/properties/schema/environment",
"source_type": "organization",
"value_type": "single_select",
"required": true,
"default_value": "production",
"description": "Prod or dev environment",
"allowed_values": [
"production",
"development"
],
"values_editable_by": "org_actors",
"require_explicit_values": true
},
{
"property_name": "service",
"url": "https://HOSTNAME/orgs/github/properties/schema/service",
"source_type": "organization",
"value_type": "string"
},
{
"property_name": "team",
"url": "https://HOSTNAME/orgs/github/properties/schema/team",
"source_type": "organization",
"value_type": "string",
"description": "Team owning the repository"
}
]Create or update custom properties for an organization
Creates new or updates existing custom properties defined for an organization in a batch.
If the property already exists, the existing property will be replaced with the new values.
Missing optional values will fall back to default values, previous values will be overwritten.
E.g. if a property exists with values_editable_by: org_and_repo_actors and it's updated without specifying values_editable_by, it will be updated to default value org_actors.
To use this endpoint, the authenticated user must be one of:
- An administrator for the organization.
- A user, or a user on a team, with the fine-grained permission of
custom_properties_org_definitions_managerin the organization.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (admin)
"Create or update custom properties for an organization" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
| 名前, タイプ, 説明 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
properties array of objects 必須The array of custom properties to create or update. | ||||||||||
Properties of |
| 名前, タイプ, 説明 |
|---|
property_name string 必須The name of the property |
url string The URL that can be used to fetch, update, or delete info about this property via the API. |
source_type string The source type of the property 次のいずれかにできます: |
value_type string 必須The type of the value for the property 次のいずれかにできます: |
required boolean Whether the property is required. |
default_value null or string or array Default value of the property |
description string or null Short description of the property |
allowed_values array of strings or null An ordered list of the allowed values of the property. The property can have up to 200 allowed values. |
values_editable_by string or null Who can edit the values of the property 次のいずれかにできます: |
http_status_code
| status_code | 説明 |
|---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
code_samples
request_example
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/schema \
-d '{"properties":[{"property_name":"environment","value_type":"single_select","required":true,"default_value":"production","description":"Prod or dev environment","allowed_values":["production","development"],"values_editable_by":"org_actors"},{"property_name":"service","value_type":"string"},{"property_name":"team","value_type":"string","description":"Team owning the repository"}]}'Response
Status: 200[
{
"property_name": "environment",
"url": "https://HOSTNAME/orgs/github/properties/schema/environment",
"source_type": "organization",
"value_type": "single_select",
"required": true,
"default_value": "production",
"description": "Prod or dev environment",
"allowed_values": [
"production",
"development"
],
"values_editable_by": "org_actors",
"require_explicit_values": true
},
{
"property_name": "service",
"url": "https://HOSTNAME/orgs/github/properties/schema/service",
"source_type": "organization",
"value_type": "string"
},
{
"property_name": "team",
"url": "https://HOSTNAME/orgs/github/properties/schema/team",
"source_type": "organization",
"value_type": "string",
"description": "Team owning the repository"
}
]Get a custom property for an organization
Gets a custom property that is defined for an organization. Organization members can read these properties.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (read)
"Get a custom property for an organization" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
custom_property_name string 必須The custom property name |
http_status_code
| status_code | 説明 |
|---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
code_samples
request_example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/schema/CUSTOM_PROPERTY_NAMEResponse
Status: 200{
"property_name": "environment",
"url": "https://HOSTNAME/orgs/github/properties/schema/environment",
"source_type": "organization",
"value_type": "single_select",
"required": true,
"default_value": "production",
"description": "Prod or dev environment",
"allowed_values": [
"production",
"development"
]
}Create or update a custom property for an organization
Creates a new or updates an existing custom property that is defined for an organization.
To use this endpoint, the authenticated user must be one of:
- An administrator for the organization.
- A user, or a user on a team, with the fine-grained permission of
custom_properties_org_definitions_managerin the organization.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (admin)
"Create or update a custom property for an organization" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
custom_property_name string 必須The custom property name |
| 名前, タイプ, 説明 |
|---|
value_type string 必須The type of the value for the property 次のいずれかにできます: |
required boolean Whether the property is required. |
default_value null or string or array Default value of the property |
description string or null Short description of the property |
allowed_values array of strings or null An ordered list of the allowed values of the property. The property can have up to 200 allowed values. |
values_editable_by string or null Who can edit the values of the property 次のいずれかにできます: |
http_status_code
| status_code | 説明 |
|---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
code_samples
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" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/schema/CUSTOM_PROPERTY_NAME \
-d '{"value_type":"single_select","required":true,"default_value":"production","description":"Prod or dev environment","allowed_values":["production","development"]}'Response
Status: 200{
"property_name": "environment",
"url": "https://HOSTNAME/orgs/github/properties/schema/environment",
"source_type": "organization",
"value_type": "single_select",
"required": true,
"default_value": "production",
"description": "Prod or dev environment",
"allowed_values": [
"production",
"development"
]
}Remove a custom property for an organization
Removes a custom property that is defined for an organization.
To use this endpoint, the authenticated user must be one of:
- An administrator for the organization.
- A user, or a user on a team, with the fine-grained permission of
custom_properties_org_definitions_managerin the organization.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (admin)
"Remove a custom property for an organization" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
custom_property_name string 必須The custom property name |
http_status_code
| status_code | 説明 |
|---|---|
204 | A header with no content is returned. |
403 | Forbidden |
404 | Resource not found |
code_samples
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" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/schema/CUSTOM_PROPERTY_NAMEA header with no content is returned.
Status: 204List custom property values for organization repositories
Lists organization repositories with all of their custom property values. Organization members can read these properties.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (read)
"List custom property values for organization repositories" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
| 名前, タイプ, 説明 |
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." デフォルト: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." デフォルト: |
repository_query string Finds repositories in the organization with a query containing one or more search keywords and qualifiers. Qualifiers allow you to limit your search to specific areas of GitHub Enterprise Server. The REST API supports the same qualifiers as the web interface for GitHub Enterprise Server. To learn more about the format of the query, see Constructing a search query. See "Searching for repositories" for a detailed list of qualifiers. |
http_status_code
| status_code | 説明 |
|---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
code_samples
request_example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/valuesResponse
Status: 200[
{
"repository_id": 1296269,
"repository_name": "Hello-World",
"repository_full_name": "octocat/Hello-World",
"properties": [
{
"property_name": "environment",
"value": "production"
},
{
"property_name": "service",
"value": "web"
},
{
"property_name": "team",
"value": "octocat"
}
]
}
]Create or update custom property values for organization repositories
Create new or update existing custom property values for repositories in a batch that belong to an organization. Each target repository will have its custom property values updated to match the values provided in the request.
A maximum of 30 repositories can be updated in a single request.
Using a value of null for a custom property will remove or 'unset' the property value from the repository.
To use this endpoint, the authenticated user must be one of:
- An administrator for the organization.
- A user, or a user on a team, with the fine-grained permission of
custom_properties_org_values_editorin the organization.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Custom properties" organization permissions (write)
"Create or update custom property values for organization repositories" のパラメーター
| 名前, タイプ, 説明 |
|---|
accept string Setting to |
| 名前, タイプ, 説明 |
|---|
org string 必須The organization name. The name is not case sensitive. |
| 名前, タイプ, 説明 | |||
|---|---|---|---|
repository_names array of strings 必須The names of repositories that the custom property values will be applied to. | |||
properties array of objects 必須List of custom property names and associated values to apply to the repositories. | |||
Properties of |
| 名前, タイプ, 説明 |
|---|
property_name string 必須The name of the property |
value null or string or array 必須The value assigned to the property |
http_status_code
| status_code | 説明 |
|---|---|
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. |
code_samples
request_example
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/properties/values \
-d '{"repository_names":["Hello-World","octo-repo"],"properties":[{"property_name":"environment","value":"production"},{"property_name":"service","value":"web"},{"property_name":"team","value":"octocat"}]}'No Content when custom property values are successfully created or updated
Status: 204