Эта версия GitHub Enterprise Server была прекращена 2024-03-26. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, повышения безопасности и новых функций выполните обновление до последней версии GitHub Enterprise Server. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.
Конечные точки REST API для секретов Dependabot
Используйте REST API для управления секретами Dependabot для организации или репозитория.
Сведения о секретах Dependabot
Вы можете создавать, обновлять, удалять и извлекать сведения о зашифрованных секретах с помощью REST API. Дополнительные сведения см. в разделе "Настройка доступа к частным реестрам для Dependabot".
Эти конечные точки доступны для пользователей, прошедших проверку подлинности, OAuth apps, и GitHub Apps. Маркеры доступа требуют repo
область для частных репозиториев иpublic_repo
область для общедоступных репозиториев. GitHub Apps должен иметь dependabot_secrets
разрешение на использование этих конечных точек. Пользователи, прошедшие проверку подлинности, должны иметь доступ к репозиторию для создания, обновления или чтения секретов, с возможностью совместной работы.
List organization secrets
Lists all secrets available in an organization without revealing their encrypted values.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "List organization secrets"
Имя., Тип, 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." По умолчанию.: |
Коды состояния http-ответа для "List organization secrets"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "List organization secrets"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets
Response
Status: 200
{
"total_count": 3,
"secrets": [
{
"name": "MY_ARTIFACTORY_PASSWORD",
"created_at": "2021-08-10T14:59:22Z",
"updated_at": "2021-12-10T14:59:22Z",
"visibility": "private"
},
{
"name": "NPM_TOKEN",
"created_at": "2021-08-10T14:59:22Z",
"updated_at": "2021-12-10T14:59:22Z",
"visibility": "all"
},
{
"name": "GH_TOKEN",
"created_at": "2021-08-10T14:59:22Z",
"updated_at": "2021-12-10T14:59:22Z",
"visibility": "selected",
"selected_repositories_url": "https://HOSTNAME/orgs/octo-org/dependabot/secrets/SUPER_SECRET/repositories"
}
]
}
Get an organization public key
Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Get an organization public key"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
Коды состояния http-ответа для "Get an organization public key"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "Get an organization public key"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/public-key
Response
Status: 200
{
"key_id": "012345678912345678",
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234"
}
Get an organization secret
Gets a single organization secret without revealing its encrypted value.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Get an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
Коды состояния http-ответа для "Get an organization secret"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "Get an organization secret"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME
Response
Status: 200
{
"name": "NPM_TOKEN",
"created_at": "2019-08-10T14:59:22Z",
"updated_at": "2020-01-10T14:59:22Z",
"visibility": "selected",
"selected_repositories_url": "https://HOSTNAME/orgs/octo-org/dependabot/secrets/NPM_TOKEN/repositories"
}
Create or update an organization secret
Creates or updates an organization secret with an encrypted value. Encrypt your secret using LibSodium. For more information, see "Encrypting secrets for the REST API."
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Create or update an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
Имя., Тип, Description |
---|
encrypted_value string Value for your secret, encrypted with LibSodium using the public key retrieved from the Get an organization public key endpoint. |
key_id string ID of the key you used to encrypt the secret. |
visibility string Обязательное полеWhich type of organization repositories have access to the organization secret. Возможные значения: |
selected_repository_ids array of strings An array of repository ids that can access the organization secret. You can only provide a list of repository ids when the |
Коды состояния http-ответа для "Create or update an organization secret"
Код состояния | Описание |
---|---|
201 | Response when creating a secret |
204 | Response when updating a secret |
Примеры кода для "Create or update an organization secret"
Примеры запросов
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME \
-d '{"encrypted_value":"c2VjcmV0","key_id":"012345678912345678","visibility":"selected","selected_repository_ids":["1296269","1296280"]}'
Response when creating a secret
Status: 201
Delete an organization secret
Deletes a secret in an organization using the secret name.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Delete an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
Коды состояния http-ответа для "Delete an organization secret"
Код состояния | Описание |
---|---|
204 | No Content |
Примеры кода для "Delete an organization secret"
Пример запроса
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME
Response
Status: 204
List selected repositories for an organization secret
Lists all repositories that have been selected when the visibility
for repository access to a secret is set to selected
.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "List selected repositories for an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
Имя., Тип, Description |
---|
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." По умолчанию.: |
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." По умолчанию.: |
Коды состояния http-ответа для "List selected repositories for an organization secret"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "List selected repositories for an organization secret"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME/repositories
Response
Status: 200
{
"total_count": 1,
"repositories": [
{
"id": 1296269,
"node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5",
"name": "Hello-World",
"full_name": "octocat/Hello-World",
"owner": {
"login": "octocat",
"id": 1,
"node_id": "MDQ6VXNlcjE=",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"gravatar_id": "",
"url": "https://HOSTNAME/users/octocat",
"html_url": "https://github.com/octocat",
"followers_url": "https://HOSTNAME/users/octocat/followers",
"following_url": "https://HOSTNAME/users/octocat/following{/other_user}",
"gists_url": "https://HOSTNAME/users/octocat/gists{/gist_id}",
"starred_url": "https://HOSTNAME/users/octocat/starred{/owner}{/repo}",
"subscriptions_url": "https://HOSTNAME/users/octocat/subscriptions",
"organizations_url": "https://HOSTNAME/users/octocat/orgs",
"repos_url": "https://HOSTNAME/users/octocat/repos",
"events_url": "https://HOSTNAME/users/octocat/events{/privacy}",
"received_events_url": "https://HOSTNAME/users/octocat/received_events",
"type": "User",
"site_admin": false
},
"private": false,
"html_url": "https://github.com/octocat/Hello-World",
"description": "This your first repo!",
"fork": false,
"url": "https://HOSTNAME/repos/octocat/Hello-World",
"archive_url": "https://HOSTNAME/repos/octocat/Hello-World/{archive_format}{/ref}",
"assignees_url": "https://HOSTNAME/repos/octocat/Hello-World/assignees{/user}",
"blobs_url": "https://HOSTNAME/repos/octocat/Hello-World/git/blobs{/sha}",
"branches_url": "https://HOSTNAME/repos/octocat/Hello-World/branches{/branch}",
"collaborators_url": "https://HOSTNAME/repos/octocat/Hello-World/collaborators{/collaborator}",
"comments_url": "https://HOSTNAME/repos/octocat/Hello-World/comments{/number}",
"commits_url": "https://HOSTNAME/repos/octocat/Hello-World/commits{/sha}",
"compare_url": "https://HOSTNAME/repos/octocat/Hello-World/compare/{base}...{head}",
"contents_url": "https://HOSTNAME/repos/octocat/Hello-World/contents/{+path}",
"contributors_url": "https://HOSTNAME/repos/octocat/Hello-World/contributors",
"deployments_url": "https://HOSTNAME/repos/octocat/Hello-World/deployments",
"downloads_url": "https://HOSTNAME/repos/octocat/Hello-World/downloads",
"events_url": "https://HOSTNAME/repos/octocat/Hello-World/events",
"forks_url": "https://HOSTNAME/repos/octocat/Hello-World/forks",
"git_commits_url": "https://HOSTNAME/repos/octocat/Hello-World/git/commits{/sha}",
"git_refs_url": "https://HOSTNAME/repos/octocat/Hello-World/git/refs{/sha}",
"git_tags_url": "https://HOSTNAME/repos/octocat/Hello-World/git/tags{/sha}",
"git_url": "git:github.com/octocat/Hello-World.git",
"issue_comment_url": "https://HOSTNAME/repos/octocat/Hello-World/issues/comments{/number}",
"issue_events_url": "https://HOSTNAME/repos/octocat/Hello-World/issues/events{/number}",
"issues_url": "https://HOSTNAME/repos/octocat/Hello-World/issues{/number}",
"keys_url": "https://HOSTNAME/repos/octocat/Hello-World/keys{/key_id}",
"labels_url": "https://HOSTNAME/repos/octocat/Hello-World/labels{/name}",
"languages_url": "https://HOSTNAME/repos/octocat/Hello-World/languages",
"merges_url": "https://HOSTNAME/repos/octocat/Hello-World/merges",
"milestones_url": "https://HOSTNAME/repos/octocat/Hello-World/milestones{/number}",
"notifications_url": "https://HOSTNAME/repos/octocat/Hello-World/notifications{?since,all,participating}",
"pulls_url": "https://HOSTNAME/repos/octocat/Hello-World/pulls{/number}",
"releases_url": "https://HOSTNAME/repos/octocat/Hello-World/releases{/id}",
"ssh_url": "git@github.com:octocat/Hello-World.git",
"stargazers_url": "https://HOSTNAME/repos/octocat/Hello-World/stargazers",
"statuses_url": "https://HOSTNAME/repos/octocat/Hello-World/statuses/{sha}",
"subscribers_url": "https://HOSTNAME/repos/octocat/Hello-World/subscribers",
"subscription_url": "https://HOSTNAME/repos/octocat/Hello-World/subscription",
"tags_url": "https://HOSTNAME/repos/octocat/Hello-World/tags",
"teams_url": "https://HOSTNAME/repos/octocat/Hello-World/teams",
"trees_url": "https://HOSTNAME/repos/octocat/Hello-World/git/trees{/sha}",
"hooks_url": "http://HOSTNAME/repos/octocat/Hello-World/hooks"
}
]
}
Set selected repositories for an organization secret
Replaces all repositories for an organization secret when the visibility
for repository access is set to selected
. The visibility is set when you Create
or update an organization secret.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Set selected repositories for an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
Имя., Тип, Description |
---|
selected_repository_ids array of integers Обязательное полеAn array of repository ids that can access the organization secret. You can only provide a list of repository ids when the |
Коды состояния http-ответа для "Set selected repositories for an organization secret"
Код состояния | Описание |
---|---|
204 | No Content |
Примеры кода для "Set selected repositories for an organization secret"
Пример запроса
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME/repositories \
-d '{"selected_repository_ids":[64780797]}'
Response
Status: 204
Add selected repository to an organization secret
Adds a repository to an organization secret when the visibility
for
repository access is set to selected
. The visibility is set when you Create or
update an organization secret.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Add selected repository to an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
repository_id integer Обязательное поле |
Коды состояния http-ответа для "Add selected repository to an organization secret"
Код состояния | Описание |
---|---|
204 | No Content when repository was added to the selected list |
409 | Conflict when visibility type is not set to selected |
Примеры кода для "Add selected repository to an organization secret"
Пример запроса
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME/repositories/REPOSITORY_ID
No Content when repository was added to the selected list
Status: 204
Remove selected repository from an organization secret
Removes a repository from an organization secret when the visibility
for repository access is set to selected
. The visibility is set when you Create
or update an organization secret.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
Параметры для "Remove selected repository from an organization secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
org string Обязательное полеThe organization name. The name is not case sensitive. |
secret_name string Обязательное полеThe name of the secret. |
repository_id integer Обязательное поле |
Коды состояния http-ответа для "Remove selected repository from an organization secret"
Код состояния | Описание |
---|---|
204 | Response when repository was removed from the selected list |
409 | Conflict when visibility type not set to selected |
Примеры кода для "Remove selected repository from an organization secret"
Пример запроса
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/dependabot/secrets/SECRET_NAME/repositories/REPOSITORY_ID
Response when repository was removed from the selected list
Status: 204
List repository secrets
Lists all secrets available in a repository without revealing their encrypted values.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
Параметры для "List repository secrets"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
Имя., Тип, 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." По умолчанию.: |
Коды состояния http-ответа для "List repository secrets"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "List repository secrets"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/dependabot/secrets
Response
Status: 200
{
"total_count": 2,
"secrets": [
{
"name": "AZURE_DEVOPS_PAT",
"created_at": "2019-08-10T14:59:22Z",
"updated_at": "2020-01-10T14:59:22Z"
},
{
"name": "MY_ARTIFACTORY_PASSWORD",
"created_at": "2020-01-10T10:59:22Z",
"updated_at": "2020-01-11T11:59:22Z"
}
]
}
Get a repository public key
Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint if the repository is private.
Параметры для "Get a repository public key"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
Коды состояния http-ответа для "Get a repository public key"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "Get a repository public key"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/dependabot/secrets/public-key
Response
Status: 200
{
"key_id": "012345678912345678",
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234"
}
Get a repository secret
Gets a single repository secret without revealing its encrypted value.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
Параметры для "Get a repository secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
secret_name string Обязательное полеThe name of the secret. |
Коды состояния http-ответа для "Get a repository secret"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "Get a repository secret"
Пример запроса
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/dependabot/secrets/SECRET_NAME
Response
Status: 200
{
"name": "MY_ARTIFACTORY_PASSWORD",
"created_at": "2019-08-10T14:59:22Z",
"updated_at": "2020-01-10T14:59:22Z"
}
Create or update a repository secret
Creates or updates a repository secret with an encrypted value. Encrypt your secret using LibSodium. For more information, see "Encrypting secrets for the REST API."
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
Параметры для "Create or update a repository secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
secret_name string Обязательное полеThe name of the secret. |
Имя., Тип, Description |
---|
encrypted_value string Value for your secret, encrypted with LibSodium using the public key retrieved from the Get a repository public key endpoint. |
key_id string ID of the key you used to encrypt the secret. |
Коды состояния http-ответа для "Create or update a repository secret"
Код состояния | Описание |
---|---|
201 | Response when creating a secret |
204 | Response when updating a secret |
Примеры кода для "Create or update a repository secret"
Примеры запросов
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/dependabot/secrets/SECRET_NAME \
-d '{"encrypted_value":"c2VjcmV0","key_id":"012345678912345678"}'
Response when creating a secret
Status: 201
Delete a repository secret
Deletes a secret in a repository using the secret name.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
Параметры для "Delete a repository secret"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
owner string Обязательное полеThe account owner of the repository. The name is not case sensitive. |
repo string Обязательное полеThe name of the repository without the |
secret_name string Обязательное полеThe name of the secret. |
Коды состояния http-ответа для "Delete a repository secret"
Код состояния | Описание |
---|---|
204 | No Content |
Примеры кода для "Delete a repository secret"
Пример запроса
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/dependabot/secrets/SECRET_NAME
Response
Status: 204