Конечные точки REST API для пользовательских свойств
Используйте REST API для создания настраиваемых свойств организации и управления ими.
Сведения о настраиваемых свойствах
С помощью REST API можно создавать пользовательские свойства для организации и управлять ими. Пользовательские свойства можно использовать для добавления метаданных в репозитории в организации. Дополнительные сведения см. в разделе Управление настраиваемыми свойствами для репозиториев в организации.
Get all custom properties for an organization
Gets all custom properties defined for an organization. Organization members can read these properties.
Подробные маркеры доступа для "Get all custom properties for an organization
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (read)
Параметры для "Get all custom properties for an organization"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
Коды состояния http-ответа для "Get all custom properties for an organization"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Get all custom properties for an organization"
Пример запроса
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/orgs/ORG/properties/schema
Response
Status: 200
[
{
"property_name": "environment",
"url": "https://api.github.com/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"
},
{
"property_name": "service",
"url": "https://api.github.com/orgs/github/properties/schema/service",
"source_type": "organization",
"value_type": "string"
},
{
"property_name": "team",
"url": "https://api.github.com/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.
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_manager
in the organization.
Подробные маркеры доступа для "Create or update custom properties for an organization
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (admin)
Параметры для "Create or update custom properties for an organization"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
Имя., Тип, Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
properties array of objects Обязательное полеThe array of custom properties to create or update. | ||||||||||
Properties of |
Имя., Тип, Description |
---|
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-ответа для "Create or update custom properties for an organization"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Create or update custom properties for an organization"
Пример запроса
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/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://api.github.com/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"
},
{
"property_name": "service",
"url": "https://api.github.com/orgs/github/properties/schema/service",
"source_type": "organization",
"value_type": "string"
},
{
"property_name": "team",
"url": "https://api.github.com/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.
Подробные маркеры доступа для "Get a custom property for an organization
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (read)
Параметры для "Get a custom property for an organization"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
custom_property_name string Обязательное полеThe custom property name |
Коды состояния http-ответа для "Get a custom property for an organization"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Get a custom property for an organization"
Пример запроса
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/orgs/ORG/properties/schema/CUSTOM_PROPERTY_NAME
Response
Status: 200
{
"property_name": "environment",
"url": "https://api.github.com/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_manager
in the organization.
Подробные маркеры доступа для "Create or update a custom property for an organization
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (admin)
Параметры для "Create or update a custom property for an organization"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
custom_property_name string Обязательное полеThe custom property name |
Имя., Тип, Description |
---|
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. |
Коды состояния http-ответа для "Create or update a custom property for an organization"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Create or update a custom property for an organization"
Пример запроса
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/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://api.github.com/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_manager
in the organization.
Подробные маркеры доступа для "Remove a custom property for an organization
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (admin)
Параметры для "Remove a custom property for an organization"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
custom_property_name string Обязательное полеThe custom property name |
Коды состояния http-ответа для "Remove a custom property for an organization"
Код состояния | Описание |
---|---|
204 | A header with no content is returned. |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Remove a custom property for an organization"
Пример запроса
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/orgs/ORG/properties/schema/CUSTOM_PROPERTY_NAME
A header with no content is returned.
Status: 204
List custom property values for organization repositories
Lists organization repositories with all of their custom property values. Organization members can read these properties.
Подробные маркеры доступа для "List custom property values for organization repositories
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (read)
Параметры для "List custom property values for organization repositories"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
Имя., Тип, Description |
---|
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. The REST API supports the same qualifiers as the web interface for GitHub. 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-ответа для "List custom property values for organization repositories"
Код состояния | Описание |
---|---|
200 | OK |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "List custom property values for organization repositories"
Пример запроса
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/orgs/ORG/properties/values
Response
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_editor
in the organization.
Подробные маркеры доступа для "Create or update custom property values for organization repositories
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Custom properties" organization permissions (write)
Параметры для "Create or update custom property values for organization repositories"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
Имя., Тип, Description | |||
---|---|---|---|
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 |
Имя., Тип, Description |
---|
property_name string Обязательное полеThe name of the property |
value null or string or array Обязательное полеThe value assigned to the property |
Коды состояния http-ответа для "Create or update custom property values for organization repositories"
Код состояния | Описание |
---|---|
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. |
Примеры кода для "Create or update custom property values for organization repositories"
Пример запроса
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/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