{"meta":{"title":"조직 사전 수신 후크에 대한 REST API 엔드포인트","intro":"REST API를 사용하면 조직에서 사용할 수 있는 사전 수신 후크의 적용을 보고 수정할 수 있습니다.","product":"REST API","breadcrumbs":[{"href":"/ko/enterprise-server@3.22/rest","title":"REST API"},{"href":"/ko/enterprise-server@3.22/rest/enterprise-admin","title":"기업 관리자"},{"href":"/ko/enterprise-server@3.22/rest/enterprise-admin/org-pre-receive-hooks","title":"조직 사전 수신 후크"}],"documentType":"article"},"body":"# 조직 사전 수신 후크에 대한 REST API 엔드포인트\n\nREST API를 사용하면 조직에서 사용할 수 있는 사전 수신 후크의 적용을 보고 수정할 수 있습니다.\n\n## 조직의 미리 수신 후크에 대한 정보\n\n> \\[!NOTE]\n> 이러한 엔드포인트는 personal access token (classic)을(를) 사용하는 인증만 지원합니다. 자세한 내용은 [개인용 액세스 토큰 관리](/ko/enterprise-server@3.22/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic)을(를) 참조하세요.\n\n### 개체 특성\n\n| 이름                               | 형식        | 설명                          |\n| -------------------------------- | --------- | --------------------------- |\n| `name`                           | `string`  | 후크의 이름입니다.                  |\n| `enforcement`                    | `string`  | 이 리포지토리의 후크 적용 상태입니다.       |\n| `allow_downstream_configuration` | `boolean` | 리포지토리가 적용을 무시할 수 있는지 여부입니다. |\n| `configuration_url`              | `string`  | 적용이 설정된 엔드포인트의 URL입니다.      |\n\n`enforcement`에 대한 가능한 값은 `enabled`, `disabled` 및 `testing`입니다.\n`disabled`는 사전 수신 후크가 실행되지 않음을 나타냅니다.\n`enabled`는 0이 아닌 상태가 되는 모든 푸시를 실행하고 거부함을 나타냅니다.\n`testing`은 스크립트가 실행되지만 푸시가 거부되지 않음을 의미합니다.\n\n`configuration_url`은 이 엔드포인트 또는 이 후크의 전역 구성에 대한 링크일 수 있습니다. 사이트 관리자만 전역 구성에 액세스할 수 있습니다.\n\n> \\[!NOTE]\n> Most endpoints use `Authorization: Bearer <YOUR-TOKEN>` and `Accept: application/vnd.github+json` headers, plus `X-GitHub-Api-Version: 2026-03-10`. Curl examples below omit these standard headers for brevity.\n\n## List pre-receive hooks for an organization\n\n```\nGET /orgs/{org}/pre-receive-hooks\n```\n\nList all pre-receive hooks that are enabled or testing for this organization as well as any disabled hooks that can be configured at the organization level. Globally disabled pre-receive hooks that do not allow downstream configuration are not listed.\n\n### Parameters\n\n#### Headers\n\n* **`accept`** (string)\n  Setting to `application/vnd.github+json` is recommended.\n\n#### Path and query parameters\n\n* **`org`** (string) (required)\n  The organization name. The name is not case sensitive.\n\n* **`per_page`** (integer)\n  The number of results per page (max 100). For more information, see \"Using pagination in the REST API.\"\n  Default: `30`\n\n* **`page`** (integer)\n  The page number of the results to fetch. For more information, see \"Using pagination in the REST API.\"\n  Default: `1`\n\n* **`direction`** (string)\n  The direction to sort the results by.\n  Default: `desc`\n  Can be one of: `asc`, `desc`\n\n* **`sort`** (string)\n  The sort order for the response collection.\n  Default: `created`\n  Can be one of: `created`, `updated`, `name`\n\n### HTTP response status codes\n\n* **200** - OK\n\n### Code examples\n\n#### Example\n\n**Request:**\n\n```curl\ncurl -L \\\n  -X GET \\\n  http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks\n```\n\n**Response schema (Status: 200):**\n\nArray of objects:\n\n* `id`: integer\n* `name`: string\n* `enforcement`: string\n* `configuration_url`: string\n* `allow_downstream_configuration`: boolean\n\n## Get a pre-receive hook for an organization\n\n```\nGET /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}\n```\n\n### Parameters\n\n#### Headers\n\n* **`accept`** (string)\n  Setting to `application/vnd.github+json` is recommended.\n\n#### Path and query parameters\n\n* **`org`** (string) (required)\n  The organization name. The name is not case sensitive.\n\n* **`pre_receive_hook_id`** (string) (required)\n  The unique identifier of the pre-receive hook.\n\n### HTTP response status codes\n\n* **200** - OK\n\n### Code examples\n\n#### Example\n\n**Request:**\n\n```curl\ncurl -L \\\n  -X GET \\\n  http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_ID\n```\n\n**Response schema (Status: 200):**\n\n* `id`: integer\n* `name`: string\n* `enforcement`: string\n* `configuration_url`: string\n* `allow_downstream_configuration`: boolean\n\n## Update pre-receive hook enforcement for an organization\n\n```\nPATCH /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}\n```\n\nFor pre-receive hooks which are allowed to be configured at the org level, you can set enforcement and allow\\_downstream\\_configuration\n\n### Parameters\n\n#### Headers\n\n* **`accept`** (string)\n  Setting to `application/vnd.github+json` is recommended.\n\n#### Path and query parameters\n\n* **`org`** (string) (required)\n  The organization name. The name is not case sensitive.\n\n* **`pre_receive_hook_id`** (string) (required)\n  The unique identifier of the pre-receive hook.\n\n#### Body parameters\n\n* **`enforcement`** (string)\n  The state of enforcement for the hook on this repository.\n\n* **`allow_downstream_configuration`** (boolean)\n  Whether repositories can override enforcement.\n\n### HTTP response status codes\n\n* **200** - OK\n\n### Code examples\n\n#### Example\n\n**Request:**\n\n```curl\ncurl -L \\\n  -X PATCH \\\n  http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_ID \\\n  -d '{\n  \"enforcement\": \"enabled\",\n  \"allow_downstream_configuration\": false\n}'\n```\n\n**Response schema (Status: 200):**\n\nSame response schema as [Get a pre-receive hook for an organization](#get-a-pre-receive-hook-for-an-organization).\n\n## Remove pre-receive hook enforcement for an organization\n\n```\nDELETE /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}\n```\n\nRemoves any overrides for this hook at the org level for this org.\n\n### Parameters\n\n#### Headers\n\n* **`accept`** (string)\n  Setting to `application/vnd.github+json` is recommended.\n\n#### Path and query parameters\n\n* **`org`** (string) (required)\n  The organization name. The name is not case sensitive.\n\n* **`pre_receive_hook_id`** (string) (required)\n  The unique identifier of the pre-receive hook.\n\n### HTTP response status codes\n\n* **200** - OK\n\n### Code examples\n\n#### Example\n\n**Request:**\n\n```curl\ncurl -L \\\n  -X DELETE \\\n  http(s)://HOSTNAME/api/v3/orgs/ORG/pre-receive-hooks/PRE_RECEIVE_HOOK_ID\n```\n\n**Response schema (Status: 200):**\n\nSame response schema as [Get a pre-receive hook for an organization](#get-a-pre-receive-hook-for-an-organization)."}