Skip to main content
ドキュメントへの更新が頻繁に発行されており、このページの翻訳はまだ行われている場合があります。 最新の情報については、「英語のドキュメント」を参照してください。
現在、GitHub AE は限定的リリースです。

We've recently moved some of the REST API documentation. If you can't find what you're looking for, you might try the Actions REST API page.

Pre-receive 環境

この REST API を使って、pre-receive フックの環境を作成、一覧表示、更新、削除します。

pre-receive 環境について

これらのエンドポイントは、認証されたサイト管理者のみが使用できます。 通常のユーザーは 404 応答を受け取ります。

オブジェクトの属性

pre-receive 環境

名前Type説明
namestringUI に表示される環境の名前。
image_urlstringダウンロードおよび抽出される tarball への URL。
default_environmentbooleanこれが GitHub AE に同梱されるデフォルト環境かどうか。
downloadobjectこの環境のダウンロードステータス。
hooks_countintegerこの環境を使用する pre-receive フックの数。

pre-receive 環境のダウンロード

名前Type説明
statestring最新のダウンロードの状態。
downloaded_atstring最新のダウンロードの開始時刻。
messagestring失敗時に、エラーメッセージが生成されます。

state で有効な値は、not_startedin_progresssuccessfailed です。

List pre-receive environments

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

クエリ パラメーター
名前, Type, 説明
per_pageinteger

The number of results per page (max 100).

Default: 30

pageinteger

Page number of the results to fetch.

Default: 1

directionstring

The direction to sort the results by.

Default: desc

次のいずれかにできます: asc, desc

sortstring

Default: created

次のいずれかにできます: created, updated, name

HTTP 応答状態コード

状態コード説明
200

OK

コード サンプル

get/admin/pre-receive-environments
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments

Response

Status: 200
[ { "id": 1, "name": "Default", "image_url": "githubenterprise://internal", "url": "https://github.example.com/api/v3/admin/pre-receive-environments/1", "html_url": "https://github.example.com/admin/pre-receive-environments/1", "default_environment": true, "created_at": "2016-05-20T11:35:45-05:00", "hooks_count": 14, "download": { "url": "https://github.example.com/api/v3/admin/pre-receive-environments/1/downloads/latest", "state": "not_started", "downloaded_at": "2016-05-26T07:42:53-05:00", "message": null } }, { "id": 2, "name": "DevTools Hook Env", "image_url": "https://my_file_server/path/to/devtools_env.tar.gz", "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2", "html_url": "https://github.example.com/admin/pre-receive-environments/2", "default_environment": false, "created_at": "2016-05-20T11:35:45-05:00", "hooks_count": 1, "download": { "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2/downloads/latest", "state": "success", "downloaded_at": "2016-05-26T07:42:53-05:00", "message": null } } ]

Create a pre-receive environment

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

本文のパラメーター
名前, Type, 説明
namestring必須

The new pre-receive environment's name.

image_urlstring必須

URL from which to download a tarball of this environment.

HTTP 応答状態コード

状態コード説明
201

Created

コード サンプル

post/admin/pre-receive-environments
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments \ -d '{"name":"DevTools Hook Env","image_url":"https://my_file_server/path/to/devtools_env.tar.gz"}'

Response

Status: 201
{ "id": 2, "name": "DevTools Hook Env", "image_url": "https://my_file_server/path/to/devtools_env.tar.gz", "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2", "html_url": "https://github.example.com/admin/pre-receive-environments/2", "default_environment": false, "created_at": "2016-05-20T11:35:45-05:00", "hooks_count": 1, "download": { "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2/downloads/latest", "state": "not_started", "downloaded_at": null, "message": null } }

Get a pre-receive environment

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

パス パラメーター
名前, Type, 説明
pre_receive_environment_idinteger必須

The unique identifier of the pre-receive environment.

HTTP 応答状態コード

状態コード説明
200

OK

コード サンプル

get/admin/pre-receive-environments/{pre_receive_environment_id}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments/PRE_RECEIVE_ENVIRONMENT_ID

Response

Status: 200
{ "id": 2, "name": "DevTools Hook Env", "image_url": "https://my_file_server/path/to/devtools_env.tar.gz", "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2", "html_url": "https://github.example.com/admin/pre-receive-environments/2", "default_environment": false, "created_at": "2016-05-20T11:35:45-05:00", "hooks_count": 1, "download": { "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2/downloads/latest", "state": "not_started", "downloaded_at": null, "message": null } }

Update a pre-receive environment

You cannot modify the default environment. If you attempt to modify the default environment, you will receive a 422 Unprocessable Entity response.

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

パス パラメーター
名前, Type, 説明
pre_receive_environment_idinteger必須

The unique identifier of the pre-receive environment.

本文のパラメーター
名前, Type, 説明
namestring

This pre-receive environment's new name.

image_urlstring

URL from which to download a tarball of this environment.

HTTP 応答状態コード

状態コード説明
200

OK

422

Client Errors

コード サンプル

patch/admin/pre-receive-environments/{pre_receive_environment_id}
curl \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments/PRE_RECEIVE_ENVIRONMENT_ID \ -d '{"name":"DevTools Hook Env","image_url":"https://my_file_server/path/to/devtools_env.tar.gz"}'

Response

Status: 200
{ "id": 2, "name": "DevTools Hook Env", "image_url": "https://my_file_server/path/to/devtools_env.tar.gz", "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2", "html_url": "https://github.example.com/admin/pre-receive-environments/2", "default_environment": false, "created_at": "2016-05-20T11:35:45-05:00", "hooks_count": 1, "download": { "url": "https://github.example.com/api/v3/admin/pre-receive-environments/2/downloads/latest", "state": "success", "downloaded_at": "2016-05-26T07:42:53-05:00", "message": null } }

Delete a pre-receive environment

If you attempt to delete an environment that cannot be deleted, you will receive a 422 Unprocessable Entity response.

The possible error messages are:

  • Cannot modify or delete the default environment
  • Cannot delete environment that has hooks
  • Cannot delete environment when download is in progress

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

パス パラメーター
名前, Type, 説明
pre_receive_environment_idinteger必須

The unique identifier of the pre-receive environment.

HTTP 応答状態コード

状態コード説明
204

No Content

422

Client Errors

コード サンプル

delete/admin/pre-receive-environments/{pre_receive_environment_id}
curl \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments/PRE_RECEIVE_ENVIRONMENT_ID

Response

Status: 204

Start a pre-receive environment download

Triggers a new download of the environment tarball from the environment's image_url. When the download is finished, the newly downloaded tarball will overwrite the existing environment.

If a download cannot be triggered, you will receive a 422 Unprocessable Entity response.

The possible error messages are:

  • Cannot modify or delete the default environment
  • Can not start a new download when a download is in progress

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

パス パラメーター
名前, Type, 説明
pre_receive_environment_idinteger必須

The unique identifier of the pre-receive environment.

HTTP 応答状態コード

状態コード説明
202

Accepted

422

Client Errors

コード サンプル

post/admin/pre-receive-environments/{pre_receive_environment_id}/downloads
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments/PRE_RECEIVE_ENVIRONMENT_ID/downloads

Response

Status: 202
{ "url": "https://github.example.com/api/v3/admin/pre-receive-environments/3/downloads/latest", "state": "not_started", "downloaded_at": null, "message": null }

Get the download status for a pre-receive environment

In addition to seeing the download status at the "Get a pre-receive environment" endpoint, there is also this separate endpoint for just the download status.

パラメーター

ヘッダー
名前, Type, 説明
acceptstring

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

パス パラメーター
名前, Type, 説明
pre_receive_environment_idinteger必須

The unique identifier of the pre-receive environment.

HTTP 応答状態コード

状態コード説明
200

OK

コード サンプル

get/admin/pre-receive-environments/{pre_receive_environment_id}/downloads/latest
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ https://HOSTNAME/api/v3/admin/pre-receive-environments/PRE_RECEIVE_ENVIRONMENT_ID/downloads/latest

Response

Status: 200
{ "url": "https://github.example.com/api/v3/admin/pre-receive-environments/3/downloads/latest", "state": "success", "downloaded_at": "2016-05-26T07:42:53-05:00", "message": null }