Конечные точки REST API для ключей SSH Git
Используйте REST API для управления ключами SSH Git для пользователей, прошедших проверку подлинности.
Сведения об администрировании ключей SSH Git
Если URL-адрес запроса не содержит {username}
параметр, ответ будет использоваться для пользователя, вошедшего в систему (и необходимо передать сведения о проверке подлинности с запросом). Дополнительные частные сведения, такие как включение двухфакторной проверки подлинности, включаются при проверке подлинности через OAuth с областью user
.
List public SSH keys for the authenticated user
Lists the public SSH keys for the authenticated user's GitHub account.
OAuth app tokens and personal access tokens (classic) need the read:public_key
scope to use this endpoint.
Подробные маркеры доступа для "List public SSH keys for the authenticated user
Эта конечная точка работает со следующими точными типами маркеров:
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Git SSH keys" user permissions (read)
Параметры для "List public SSH keys for the authenticated user"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, 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 public SSH keys for the authenticated user"
Код состояния | Описание |
---|---|
200 | OK |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "List public SSH keys for the authenticated user"
Пример запроса
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/user/keys
Response
Status: 200
[
{
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234",
"id": 2,
"url": "https://api.github.com/user/keys/2",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAA",
"created_at": "2020-06-11T21:31:57Z",
"verified": false,
"read_only": false
},
{
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234",
"id": 3,
"url": "https://api.github.com/user/keys/3",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAB",
"created_at": "2020-07-11T21:31:57Z",
"verified": false,
"read_only": false
}
]
Create a public SSH key for the authenticated user
Adds a public SSH key to the authenticated user's GitHub account.
OAuth app tokens and personal access tokens (classic) need the write:gpg_key
scope to use this endpoint.
Подробные маркеры доступа для "Create a public SSH key for the authenticated user
Эта конечная точка работает со следующими точными типами маркеров:
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Git SSH keys" user permissions (write)
Параметры для "Create a public SSH key for the authenticated user"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
title string A descriptive name for the new key. |
key string Обязательное полеThe public SSH key to add to your GitHub account. |
Коды состояния http-ответа для "Create a public SSH key for the authenticated user"
Код состояния | Описание |
---|---|
201 | Created |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Примеры кода для "Create a public SSH key for the authenticated user"
Пример запроса
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/user/keys \
-d '{"title":"ssh-rsa AAAAB3NzaC1yc2EAAA","key":"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234"}'
Response
Status: 201
{
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234",
"id": 2,
"url": "https://api.github.com/user/keys/2",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAA",
"created_at": "2020-06-11T21:31:57Z",
"verified": false,
"read_only": false
}
Get a public SSH key for the authenticated user
View extended details for a single public SSH key.
OAuth app tokens and personal access tokens (classic) need the read:public_key
scope to use this endpoint.
Подробные маркеры доступа для "Get a public SSH key for the authenticated user
Эта конечная точка работает со следующими точными типами маркеров:
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Git SSH keys" user permissions (read)
Параметры для "Get a public SSH key for the authenticated user"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
key_id integer Обязательное полеThe unique identifier of the key. |
Коды состояния http-ответа для "Get a public SSH key for the authenticated user"
Код состояния | Описание |
---|---|
200 | OK |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Get a public SSH key for the authenticated user"
Пример запроса
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/user/keys/KEY_ID
Response
Status: 200
{
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234",
"id": 2,
"url": "https://api.github.com/user/keys/2",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAA",
"created_at": "2020-06-11T21:31:57Z",
"verified": false,
"read_only": false
}
Delete a public SSH key for the authenticated user
Removes a public SSH key from the authenticated user's GitHub account.
OAuth app tokens and personal access tokens (classic) need the admin:public_key
scope to use this endpoint.
Подробные маркеры доступа для "Delete a public SSH key for the authenticated user
Эта конечная точка работает со следующими точными типами маркеров:
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Git SSH keys" user permissions (write)
Параметры для "Delete a public SSH key for the authenticated user"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
key_id integer Обязательное полеThe unique identifier of the key. |
Коды состояния http-ответа для "Delete a public SSH key for the authenticated user"
Код состояния | Описание |
---|---|
204 | No Content |
304 | Not modified |
401 | Requires authentication |
403 | Forbidden |
404 | Resource not found |
Примеры кода для "Delete a public SSH key for the authenticated user"
Пример запроса
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/user/keys/KEY_ID
Response
Status: 204
List public keys for a user
Lists the verified public SSH keys for a user. This is accessible by anyone.
Подробные маркеры доступа для "List public keys for a user
Эта конечная точка работает со следующими точными типами маркеров:
- Маркеры доступа пользователей приложения GitHub
- Маркеры доступа к установке приложений GitHub
- Точные личные маркеры доступа
Маркер с точной детализацией должен иметь следующий набор разрешений.:
- "Git SSH keys" user permissions (read)
Эту конечную точку можно использовать без проверки подлинности или указанных выше разрешений, если запрашиваются только общедоступные ресурсы.
Параметры для "List public keys for a user"
Имя., Тип, Description |
---|
accept string Setting to |
Имя., Тип, Description |
---|
username string Обязательное полеThe handle for the GitHub user account. |
Имя., Тип, 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 public keys for a user"
Код состояния | Описание |
---|---|
200 | OK |
Примеры кода для "List public keys for a user"
Пример запроса
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/users/USERNAME/keys
Response
Status: 200
[
{
"id": 1,
"key": "ssh-rsa AAA..."
}
]