Skip to main content

Эта версия GitHub Enterprise Server была прекращена 2026-04-09. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, повышения безопасности и новых функций выполните обновление до последней версии GitHub Enterprise Server. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

REST API теперь версия. Дополнительные сведения см. в разделе "О управлении версиями API".

Конечные точки REST API для ключ развертывания

Используйте REST API для создания ключ развертывания и управления ими.

Сведения о ключ развертывания

Вы можете запустить проекты из репозитория на ваш экземпляр GitHub Enterprise Server на сервер с помощью ключ развертывания, который является ключом SSH, который предоставляет доступ к одному репозиторию. GitHub подключает общедоступную часть ключа непосредственно к репозиторию вместо личная учетная запись, а частная часть ключа остается на сервере. Дополнительные сведения см. в разделе Доставка развертываний.

Ключи развертывания можно настроить либо с помощью следующих API-конечных точек, либо с GitHub помощью веб-интерфейса. Сведения о настройке ключ развертывания в веб-интерфейсе см. в статье Управление ключами развертывания.

Существует несколько случаев, когда ключ развертывания будут удалены другими действиями:

  • Если ключ развертывания создан с personal access tokenпомощью , удаление также personal access token удалит ключ развертывания. Восстановление personal access token не удалит ключ развертывания.
  • Если ключ развертывания создан с помощью токена OAuth app , отзыв токена также удаляет ключ развертывания.

И наоборот, эти действия не будут удалять ключ развертывания:

  • Если ключ развертывания создан с GitHub App помощью токена доступа пользователя, отзыв токена не удалит ключ развертывания.
  • Если ключ развертывания создан с GitHub App помощью токена доступа установки, удаление или удаление приложения не удалит ключ развертывания.
  • Если ключ развертывания создан с personal access tokenпомощью , регенерируя , personal access token ключ развертывания не удалится.

List deploy keys

Детализированные токены доступа для «List deploy keys»

Эта конечная точка работает со следующими точными типами маркеров:

Маркер с точной детализацией должен иметь следующий набор разрешений.:

  • "Administration" repository permissions (read)

Параметры для «List deploy keys»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
owner string Обязательное поле

The account owner of the repository. The name is not case sensitive.

repo string Обязательное поле

The name of the repository without the .git extension. 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."

По умолчанию.: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

По умолчанию.: 1

HTTP-коды статуса ответа для «List deploy keys»

Код состоянияDescription
200

OK

Примеры кода для «List deploy keys»

Пример запроса

get/repos/{owner}/{repo}/keys
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/repos/OWNER/REPO/keys

Response

Status: 200
{ "enabled": [ { "id": 1, "key": "ssh-rsa AAA...", "url": "https://HOSTNAME/repos/octocat/Hello-World/keys/1", "title": "octocat@octomac", "verified": true, "created_at": "2014-12-10T15:53:42Z", "read_only": true, "added_by": "octocat", "last_used": "2022-01-10T15:53:42Z" } ] }

Create a deploy key

You can create a read-only deploy key.

Детализированные токены доступа для «Create a deploy key»

Эта конечная точка работает со следующими точными типами маркеров:

Маркер с точной детализацией должен иметь следующий набор разрешений.:

  • "Administration" repository permissions (write)

Параметры для «Create a deploy key»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
owner string Обязательное поле

The account owner of the repository. The name is not case sensitive.

repo string Обязательное поле

The name of the repository without the .git extension. The name is not case sensitive.

Параметры запроса
Имя., Тип, Description
title string

A name for the key.

key string Обязательное поле

The contents of the key.

read_only boolean

If true, the key will only be able to read repository contents. Otherwise, the key will be able to read and write.

Deploy keys with write access can perform the same actions as an organization member with admin access, or a collaborator on a personal repository. For more information, see "Repository permission levels for an organization" and "Permission levels for a user account repository."

HTTP-коды статуса ответа для «Create a deploy key»

Код состоянияDescription
201

Created

422

Validation failed, or the endpoint has been spammed.

Примеры кода для «Create a deploy key»

Пример запроса

post/repos/{owner}/{repo}/keys
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/keys \ -d '{"title":"octocat@octomac","key":"ssh-rsa AAA...","read_only":true}'

Response

Status: 201
{ "id": 1, "key": "ssh-rsa AAA...", "url": "https://HOSTNAME/repos/octocat/Hello-World/keys/1", "title": "octocat@octomac", "verified": true, "created_at": "2014-12-10T15:53:42Z", "read_only": true, "added_by": "octocat", "last_used": "2022-01-10T15:53:42Z" }

Get a deploy key

Детализированные токены доступа для «Get a deploy key»

Эта конечная точка работает со следующими точными типами маркеров:

Маркер с точной детализацией должен иметь следующий набор разрешений.:

  • "Administration" repository permissions (read)

Параметры для «Get a deploy key»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
owner string Обязательное поле

The account owner of the repository. The name is not case sensitive.

repo string Обязательное поле

The name of the repository without the .git extension. The name is not case sensitive.

key_id integer Обязательное поле

The unique identifier of the key.

HTTP-коды статуса ответа для «Get a deploy key»

Код состоянияDescription
200

OK

404

Resource not found

Примеры кода для «Get a deploy key»

Пример запроса

get/repos/{owner}/{repo}/keys/{key_id}
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/repos/OWNER/REPO/keys/KEY_ID

Response

Status: 200
{ "id": 1, "key": "ssh-rsa AAA...", "url": "https://HOSTNAME/repos/octocat/Hello-World/keys/1", "title": "octocat@octomac", "verified": true, "created_at": "2014-12-10T15:53:42Z", "read_only": true, "added_by": "octocat", "last_used": "2022-01-10T15:53:42Z" }

Delete a deploy key

Deploy keys are immutable. If you need to update a key, remove the key and create a new one instead.

Детализированные токены доступа для «Delete a deploy key»

Эта конечная точка работает со следующими точными типами маркеров:

Маркер с точной детализацией должен иметь следующий набор разрешений.:

  • "Administration" repository permissions (write)

Параметры для «Delete a deploy key»

Заголовки
Имя., Тип, Description
accept string

Setting to application/vnd.github+json is recommended.

Параметры пути
Имя., Тип, Description
owner string Обязательное поле

The account owner of the repository. The name is not case sensitive.

repo string Обязательное поле

The name of the repository without the .git extension. The name is not case sensitive.

key_id integer Обязательное поле

The unique identifier of the key.

HTTP-коды статуса ответа для «Delete a deploy key»

Код состоянияDescription
204

No Content

Примеры кода для «Delete a deploy key»

Пример запроса

delete/repos/{owner}/{repo}/keys/{key_id}
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/repos/OWNER/REPO/keys/KEY_ID

Response

Status: 204