# URL 매개 변수를 사용하여 GitHub 앱 등록

URL 쿼리 매개 변수를 사용하여 다른 사용자가 미리 선택한 특정 구성으로 새 GitHub App 항목을 신속하게 설정할 수 있습니다.

## 등록을 위한 URL 매개 변수 정보 GitHub Apps

URL 매개 변수를 사용하여 새 GitHub App 등록의 구성 설정을 미리 선택하고 다른 사용자와 사용자 지정 링크를 공유할 수 있습니다. 이 링크는 사용자를 등록 페이지로 GitHub App 이동합니다. 그러면 URL에 포함된 URL 매개 변수에 따라 앱 설정이 미리 채워집니다.

이 방법은 고객이 개인 계정이나 조직에 특정 요구 사항에 따라 앱을 설정하도록 하려는 통합업체나, GitHub Enterprise Server를 사용하며 GitHub Marketplace에서 앱을 설치할 수 없는 고객에게 유용합니다.

또는 GitHub App 매니페스트를 만들 수 있습니다. 자세한 내용은 [매니페스트에서 GitHub 앱 등록](/ko/enterprise-server@3.22/apps/sharing-github-apps/registering-a-github-app-from-a-manifest)을(를) 참조하세요.

## 쿼리 매개 변수를 사용하여 사용자 지정 구성 URL 만들기

개인 또는 조직 계정에 대한 GitHub App 사용자 지정 구성 URL을 만들려면 다음 기본 URL 다음에 쿼리 매개 변수를 추가합니다.

* 개인 계정에 앱을 등록하려면 URL 매개 변수를 `http(s)://HOSTNAME/settings/apps/new`에 추가합니다.
* 조직 계정에 앱을 등록하려면 URL 매개 변수를 `http(s)://HOSTNAME/organizations/ORGANIZATION/settings/apps/new`에 추가합니다.
  `ORGANIZATION`을(를) 고객이 앱을 등록하려는 조직 이름으로 바꿉니다.
* 엔터프라이즈 계정에 앱을 등록하려면 URL 매개 변수를 `http(s)://HOSTNAME/enterprises/ENTERPRISE/settings/apps/new`에 추가합니다.
  `ENTERPRISE`를 고객이 앱을 등록할 엔터프라이즈의 이름으로 바꾸세요.

앱을 등록하는 사람은 앱을 제출하기 전에 앱 등록 페이지에서 미리 선택된 값을 편집할 수 있습니다. URL 쿼리 문자열에 필수 값에 대한 매개 변수를 포함하지 않는 경우(예: `name`) 앱을 등록하는 사람은 앱을 등록하기 전에 값을 입력해야 합니다.

예를 들어 다음 URL은 개인 계정에서 `octocat-github-app`(이)라고 명명된 새 공개 앱을 등록합니다. 쿼리 매개 변수를 사용하여 URL은 설명 및 콜백 URL을 미리 구성합니다. 또한 `checks`에 대한 읽기 및 쓰기 권한을 선택하고, `webhook_active` 매개 변수를 사용하여 웹후크를 활성화하고, `check_run` 및 `check_suite` 웹후크 이벤트를 구독하고, 설치하는 동안 사용자 권한 부여(OAuth)를 요청하는 옵션을 선택합니다.

```text
http(s)://HOSTNAME/settings/apps/new?name=octocat-github-app&description=An%20Octocat%20App&callback_urls[]=https://example.com&request_oauth_on_install=true&public=true&checks=write&webhook_active=true&events[]=check_run&events[]=check_suite
```

## GitHub App 구성 매개 변수

다음 쿼리 매개 변수를 사용하여 등록에 대한 특정 구성을 GitHub App 선택할 수 있습니다. 예를 들어 앱 이름을 "octocat-github-app"으로 지정하면 쿼리 문자열에 `name=octocat-github-app`이(가) 포함됩니다.

| 매개 변수 이름                                                                                                                                                                                                                                                             | 유형                 | 설명                                                                                                                                                                                                                                                                                                                                                              |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                                                                                                                                                                                                                                               | `string`           |                                                                                                                                                                                                                                                                                                                                                                 |
| GitHub App의 이름입니다. 앱에 명확하고 간결한 이름을 지정합니다. 앱은 사용자 고유의 사용자 또는 조직 이름이 아니면 기존 GitHub 사용자와 동일한 이름을 가질 수 없습니다. 통합이 작업을 수행할 때 앱 이름의 슬러그 버전이 사용자 인터페이스에 표시됩니다.                                                                                                               |                    |                                                                                                                                                                                                                                                                                                                                                                 |
| `description`                                                                                                                                                                                                                                                        | `string`           |                                                                                                                                                                                                                                                                                                                                                                 |
| GitHub App에 대한 설명입니다.                                                                                                                                                                                                                                                |                    |                                                                                                                                                                                                                                                                                                                                                                 |
| `url`                                                                                                                                                                                                                                                                | `string`           |                                                                                                                                                                                                                                                                                                                                                                 |
| GitHub App의 웹사이트 홈페이지 전체 URL입니다.                                                                                                                                                                                                                                     |                    |                                                                                                                                                                                                                                                                                                                                                                 |
| `callback_urls`                                                                                                                                                                                                                                                      | `array of strings` | 다른 사람이 설치 권한을 부여한 후 리디렉션할 전체 URL입니다. 최대 10개의 콜백 URL을 제공할 수 있습니다. 이러한 URL은 앱에서 사용자 액세스 토큰을 생성해야 하는 경우에 사용됩니다. 예: `callback_urls[]=https://example.com&callback_urls[]=https://example-2.com`. 자세한 내용은 [사용자 인증 콜백 URL에 대한 정보](/ko/enterprise-server@3.22/apps/creating-github-apps/registering-a-github-app/about-the-user-authorization-callback-url)을(를) 참조하세요. |
| `request_oauth_on_install`                                                                                                                                                                                                                                           | `boolean`          | 앱에서 OAuth 흐름을 사용하여 사용자에게 권한을 부여하는 경우 사람들이 앱을 설치할 때 앱에 권한을 부여할 수 있도록 이 옵션을 `true`로 설정하여 단계를 절약할 수 있습니다. 이 옵션을 선택하면 `setup_url`을 사용할 수 없게 되고 사용자는 앱을 설치한 후 `callback_url`로 리디렉션됩니다.                                                                                                                                                                               |
| `setup_url`                                                                                                                                                                                                                                                          | `string`           | 앱 설치 후 추가 설정이 필요한 경우, 누군가 GitHub App를 설치한 후 리디렉션할 전체 URL입니다. 자세한 내용은 [설치 URL 정보](/ko/enterprise-server@3.22/apps/creating-github-apps/registering-a-github-app/about-the-setup-url)을(를) 참조하세요.                                                                                                                                                                  |
| `setup_on_update`                                                                                                                                                                                                                                                    | `boolean`          | 예를 들어 리포지토리가 추가되거나 제거된 후 설치가 업데이트될 때 사용자를 설정 URL로 리디렉션하려면 `true`로 설정합니다.                                                                                                                                                                                                                                                                                        |
| `public`                                                                                                                                                                                                                                                             | `boolean`          |                                                                                                                                                                                                                                                                                                                                                                 |
| `true`이 공개적으로 이용 가능할 때는 GitHub App으로 설정하고, 앱 소유자만 접근할 수 있을 때는 `false`로 설정합니다. 이 매개 변수는 엔터프라이즈가 소유한 앱에는 적용되지 않습니다.                                                                                                                                                    |                    |                                                                                                                                                                                                                                                                                                                                                                 |
| `webhook_active`                                                                                                                                                                                                                                                     | `boolean`          | 웹후크를 활성화하려면 `true`로 설정합니다. 웹후크는 기본적으로 비활성화되어 있습니다.                                                                                                                                                                                                                                                                                                              |
| `webhook_url`                                                                                                                                                                                                                                                        | `string`           | 웹후크 이벤트 페이로드를 보내려는 전체 URL입니다.                                                                                                                                                                                                                                                                                                                                   |
| `events`                                                                                                                                                                                                                                                             | `array of strings` | 웹후크 이벤트입니다. 일부 웹훅 이벤트는 새 `read`를 등록할 때 해당 이벤트를 선택하려면 리소스에 대해 `write` 또는 GitHub App 권한이 필요합니다. 자세한 내용은 [웹후크 이벤트 섹션을GitHub App](#github-app-webhook-events) 참조하세요. 쿼리 문자열에서 여러 이벤트를 선택할 수 있습니다. 예: `events[]=public&events[]=label`.                                                                                                                              |
| `single_file_name`                                                                                                                                                                                                                                                   | `string`           | 이는 앱이 모든 리포지토리의 단일 파일에 액세스할 수 있도록 하는 좁은 범위의 사용 권한입니다.                                                                                                                                                                                                                                                                                                           |
| `single_file` 권한을 `read` 또는 `write`(으)로 설정하면, 이 필드는 GitHub App에서 관리할 단일 파일의 경로를 제공합니다. 여러 파일을 관리해야 하는 경우 아래의 `single_file_paths`를 참조하세요.                                                                                                                             |                    |                                                                                                                                                                                                                                                                                                                                                                 |
| `single_file_paths`                                                                                                                                                                                                                                                  | `array of strings` | 이렇게 하면 앱이 리포지토리에서 최대 10개의 지정된 파일에 액세스할 수 있습니다.                                                                                                                                                                                                                                                                                                                  |
| `single_file` 권한을 `read` 또는 `write`로 설정하면, 이 배열에는 GitHub App가 관리할 최대 10개 파일의 경로를 저장할 수 있습니다. 파일은 모두 `single_file`에 의해 설정된 동일한 사용 권한을 받으며 별도의 개별 사용 권한은 없습니다. 두 개 이상의 파일을 구성하면 API가 `multiple_single_files=true`를 반환하고, 그렇지 않으면 `multiple_single_files=false`를 반환합니다. |                    |                                                                                                                                                                                                                                                                                                                                                                 |

## GitHub App 권한

쿼리 매개 변수를 사용하여 등록 권한을 선택할 수 있습니다 GitHub App . URL 쿼리 매개 변수의 경우 사용 권한 이름을 쿼리 매개 변수 이름으로 사용하고 쿼리 값을 해당 권한 집합에 대해 가능한 값 중 하나로 설정합니다.

예를 들어 `contents`에 대한 사용자 인터페이스에서 "읽기 및 쓰기" 권한을 선택하려면 쿼리 문자열에 `contents=write`를 포함합니다. 예를 들어 `blocking`에 대한 사용자 인터페이스에서 "읽기 전용" 권한을 선택하려면 쿼리 문자열에 `blocking=read`를 포함합니다. 사용자 인터페이스에서 "액세스 권한 없음"을 `checks`선택하려면 쿼리 문자열에 `checks` 사용 권한이 포함되지 않습니다.

사용 권한에 GitHub Apps대한 자세한 내용은 [GitHub 앱에 대한 권한 선택](/ko/enterprise-server@3.22/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app)을 참조하세요. 사용 가능한 권한 목록과 매개 변수가 있는 이름을 보려면 [개인용 액세스 토큰 관리](/ko/enterprise-server@3.22/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#account-permissions)을(를) 참조하세요.

## GitHub App 웹후크 이벤트

쿼리 매개 변수를 사용하여 웹후크를 사용하도록 설정하고 GitHub App , 웹후크 URL을 지정하고, 특정 이벤트에 대한 웹후크 페이로드를 수신하도록 앱을 구독할 수 있습니다.

GitHub App 웹후크를 활성화하려면 쿼리 문자열에 `webhook_active=true`을 사용하세요. 웹후크 이벤트 페이로드를 보내려는 전체 URL을 지정하려면 쿼리 문자열에 `webhook_url`을 사용합니다. 특정 웹후크 페이로드 이벤트에 앱을 구독하려면 쿼리 매개 변수 이름으로 `events[]`를 사용하고 쿼리 값을 웹후크 이벤트의 이름으로 설정합니다. 가능한 웹후크 이벤트 및 GitHub App 각 이벤트를 구독하는 데 필요한 권한에 대한 자세한 내용은 [웹후크 이벤트 및 페이로드](/ko/enterprise-server@3.22/webhooks/webhook-events-and-payloads)을 참조하세요.

예를 들어, 커밋 댓글과 관련된 활동에 대한 웹후크 페이로드를 수신하도록 GitHub App을(를) 구독하려면 쿼리 문자열에 `&webhook_active=true&webhook_url=https://example.com&events[]=commit_comment`이(가) 포함됩니다.
`commit_comment` 웹후크 이벤트의 경우 GitHub App에 "Contents" 리포지토리 권한에 대해 최소 읽기 수준 이상의 액세스 권한이 있어야 한다는 점에 유의하세요. 따라서 쿼리 문자열에는 `contents` 권한을 `read` 또는 `write`로 설정하기 위한 매개 변수도 포함되어야 합니다. 자세한 내용은 [앱 사용 권한을 참조GitHub하세요](#github-app-permissions).

쿼리 매개 변수를 사용하여 웹후크 암호 값을 설정할 수 없습니다. 앱에서 웹후크를 보호하기 위해 비밀이 필요한 경우 앱을 등록하는 사용자가 UI에서 GitHub 비밀 값을 설정해야 합니다.

웹후크에 GitHub Apps대한 자세한 내용은 [GitHub 앱에서 웹후크 사용](/ko/enterprise-server@3.22/apps/creating-github-apps/registering-a-github-app/using-webhooks-with-github-apps)을 참조하세요.