GitHub App URL 매개 변수 정보
쿼리 매개 변수를 해당 URL에 추가하여 개인 또는 조직 계정에서 GitHub App의 구성을 미리 선택할 수 있습니다.
- 개인 계정:
https://github.com/settings/apps/new
- 조직 계정:
https://github.com/organizations/:org/settings/apps/new
앱을 만드는 사람은 앱을 제출하기 전에 GitHub App 등록 페이지에서 미리 선택된 값을 편집할 수 있습니다. URL 쿼리 문자열에 필수 매개 변수를 포함하지 않는 경우(예: name
) 앱을 만드는 사람은 앱을 제출하기 전에 값을 입력해야 합니다.
웹후크를 보호하기 위해 비밀이 필요한 앱의 경우 암호 값은 쿼리 매개 변수를 사용하는 것이 아니라 앱을 만드는 사람이 양식에 설정해야 합니다. 자세한 내용은 "웹후크 보안"을 참조하세요.
다음 URL은 미리 구성된 설명 및 콜백 URL을 사용하여 octocat-github-app
이라는 새 공용 앱을 만듭니다. 또한 이 URL은 checks
에 대한 읽기 및 쓰기 권한을 선택하고, check_run
및 check_suite
웹후크 이벤트를 구독하고, 설치하는 동안 사용자 권한 부여(OAuth)를 요청하는 옵션을 선택합니다.
https://github.com/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&events[]=check_run&events[]=check_suite
사용 가능한 쿼리 매개 변수, 사용 권한 및 이벤트의 전체 목록은 아래 섹션에 나열되어 있습니다.
GitHub App 구성 매개 변수
Name | 형식 | 설명 |
---|---|---|
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 정보"을 참조하세요. |
request_oauth_on_install | boolean | 앱에서 OAuth 흐름을 사용하여 사용자에게 권한을 부여하는 경우 사람들이 앱을 설치할 때 앱에 권한을 부여할 수 있도록 이 옵션을 true 로 설정하여 단계를 절약할 수 있습니다. 이 옵션을 선택하면 setup_url 을 사용할 수 없게 되고 사용자는 앱을 설치한 후 callback_url 로 리디렉션됩니다. |
setup_url | string | 설치 후 앱에 추가 설정이 필요한 경우 다른 사람이 GitHub App을 설치한 후 리디렉션할 전체 URL입니다. |
setup_on_update | boolean | 예를 들어 리포지토리가 추가되거나 제거된 후 설치가 업데이트될 때 사용자를 설정 URL로 리디렉션하려면 true 로 설정합니다. |
public | boolean | GitHub App을 누구나 사용할 수 있는 경우 true 로 설정하고 앱 소유자만 액세스할 수 있는 경우 false 로 설정합니다. |
webhook_active | boolean | 웹후크를 사용하지 않도록 설정하려면 false 로 설정합니다. 웹후크는 기본적으로 사용하도록 설정됩니다. |
webhook_url | string | 웹후크 이벤트 페이로드를 보내려는 전체 URL입니다. |
events | array of strings | 웹후크 이벤트입니다. 새 GitHub App을 등록할 때 이벤트를 선택하기 전에 일부 웹후크 이벤트에는 리소스에 대한 read 또는 write 권한이 필요합니다. 사용 가능한 이벤트 및 필요한 사용 권한은 “GitHub App 웹후크 이벤트” 섹션을 참조하세요. 쿼리 문자열에서 여러 이벤트를 선택할 수 있습니다. 예: 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 사용 권한
다음 표의 사용 권한 이름을 쿼리 매개 변수 이름으로 사용하고 사용 권한 유형을 쿼리 값으로 사용하여 쿼리 문자열에서 사용 권한을 선택할 수 있습니다. 예를 들어 contents
에 대한 사용자 인터페이스에서 Read & write
권한을 선택하려면 쿼리 문자열에 &contents=write
를 포함합니다. blocking
에 대한 사용자 인터페이스에서 Read-only
권한을 선택하려면 쿼리 문자열에 &blocking=read
를 포함합니다. checks
에 대한 사용자 인터페이스에서 no-access
를 선택하려면 권리 문자열에 checks
사용 권한을 포함하지 않습니다.
사용 권한 | 설명 |
---|---|
administration | 조직 및 리포지토리 관리를 위해 다양한 엔드포인트에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
blocking | 사용자 차단 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
checks | 검사 API에 대한 액세스 권한을 부여합니다. none 는 read , write 중 하나일 수 있습니다. |
contents | 리포지토리 콘텐츠를 수정할 수 있는 다양한 엔드포인트에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
deployments | 배포 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
emails | 이메일 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
followers | 팔로워 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
gpg_keys | GPG 키 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
issues | 이슈 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
keys | 퍼블릭 키 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
members | 조직 구성원을 관리할 수 있는 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
metadata | 중요한 데이터를 유출하지 않는 읽기 전용 엔드포인트에 대한 액세스 권한을 부여합니다. read 또는 none 일 수 있습니다. 사용 권한을 설정하면 기본값은 read 이고, GitHub App의 사용 권한을 지정하지 않으면 기본값은 none 입니다. |
organization_administration | "조직" 엔드포인트 및 조직 상호 작용 제한 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
organization_hooks | 조직 웹후크 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
organization_plan | "조직" 엔드포인트를 사용하여 조직의 계획에 대한 정보를 가져올 수 있는 액세스 권한을 부여합니다. none 또는 read 중 하나일 수 있습니다. |
organization_projects | 프로젝트 API에 대한 액세스 권한을 부여합니다. none , read , write , admin 중 하나일 수 있습니다. |
organization_user_blocking | 조직 사용자 차단 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
pages | 페이지 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
plan | "사용자" 엔드포인트를 사용하여 사용자의 GitHub 계획에 대한 정보를 가져올 수 있는 액세스 권한을 부여합니다. none 또는 read 중 하나일 수 있습니다. |
pull_requests | 다양한 끌어오기 요청 엔드포인트에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
repository_hooks | 리포지토리 웹후크 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
repository_projects | 프로젝트 API에 대한 액세스 권한을 부여합니다. none , read , write 또는 admin 중 하나일 수 있습니다. |
security_events | 코드 검사 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
single_file | 콘텐츠 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
starring | 별표 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
statuses | 상태 API에 대한 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
team_discussions | 팀 토론 API 및 팀 토론 주석 API에 대한 액세스 권한을 부여합니다. none 는 read , write 중 하나일 수 있습니다. |
vulnerability_alerts | 리포지토리에서 Dependabot alerts를 받을 수 있는 액세스 권한을 부여합니다. 자세한 내용은 "Dependabot 경고 정보"을 참조하세요. none 는 read , write 중 하나일 수 있습니다. |
watching | 사용자가 구독하는 리포지토리를 나열하고 변경할 수 있는 액세스 권한을 부여합니다. none , read , write 중 하나일 수 있습니다. |
GitHub App 웹후크 이벤트
웹후크 이벤트 이름 | 필요한 권한 | 설명 |
---|---|---|
check_run | checks | 검사 실행 활동이 발생했습니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "확인" REST API를 참조하세요. |
check_suite | checks | 검사 도구 모음 활동이 발생했습니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "확인" REST API를 참조하세요. |
commit_comment | contents | 커밋 주석이 생성되었습니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "리포지토리" REST API를 참조하세요. |
create | contents | Git 분기 또는 태그가 생성되었습니다. 자세한 내용은 "Git 데이터베이스" REST API를 참조하세요. |
delete | contents | Git 분기 또는 태그가 삭제되었습니다. 자세한 내용은 "Git 데이터베이스" REST API를 참조하세요. |
deployment | deployments | 배포가 만들어집니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "배포" REST API를 참조하세요. |
deployment_status | deployments | 배포가 만들어집니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "리포지토리" REST API를 참조하세요. |
fork | contents | 사용자가 리포지토리를 포크합니다. 자세한 내용은 "리포지토리" REST API를 참조하세요. |
gollum | contents | Wiki 페이지가 생성되었거나 업데이트되었습니다. 자세한 내용은 "위키 정보"을 참조하세요. |
issues | issues | 이슈와 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "문제" REST API를 참조하세요. |
issue_comment | issues | 문제 또는 끌어오기 요청 설명과 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "문제" REST API를 참조하세요. |
label | metadata | 레이블과 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "문제" REST API를 참조하세요. |
member | members | 리포지토리 협력자 관련 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "리포지토리" REST API를 참조하세요. |
membership | members | 팀 멤버 자격과 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "Teams" REST API를 참조하세요. |
milestone | pull_request | 마일스톤과 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "문제" REST API를 참조하세요. |
org_block | organization_administration | 조직에서 차단되는 사용자와 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "조직" REST API를 참조하세요. |
organization | members | 조직 및 해당 멤버와 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "조직" REST API를 참조하세요. |
page_build | pages | 성공 여부에 관계없이 GitHub Pages 사이트의 빌드 시도를 나타냅니다. GitHub Pages 지원 분기(프로젝트 페이지의 경우 gh-pages , 사용자 및 조직 페이지의 기본 분기)로 푸시하면 해당 이벤트가 트리거됩니다. |
project | repository_projects 또는 organization_projects | 클래식 프로젝트와 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "Projects (classic)" REST API를 참조하세요. |
project_card | repository_projects 또는 organization_projects | 클래식 프로젝트의 카드와 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "Projects (classic)" REST API를 참조하세요. |
project_column | repository_projects 또는 organization_projects | 클래식 프로젝트의 열과 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "Projects (classic)" REST API를 참조하세요. |
public | metadata | 프라이빗 리포지토리가 공개되는 경우. 의심의 여지없이 최고의 GitHub 이벤트입니다. |
pull_request | pull_requests | 끌어오기 요청과 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "끌어오기" REST API를 참조하세요. |
pull_request_review | pull_request | 끌어오기 요청 검토와 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "끌어오기" REST API를 참조하세요. |
pull_request_review_comment | pull_request | 끌어오기 요청의 통합 차이에서 끌어오기 요청 검토 설명과 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "끌어오기" REST API를 참조하세요. |
pull_request_review_thread | pull_request | 끌어오기 요청이 해결됨 또는 해결되지 않음으로 표시되는 주석 스레드와 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. |
push | contents | 하나 이상의 커밋이 리포지토리 분기 또는 태그로 푸시됩니다. |
release | contents | 릴리스와 관련된 작업입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "릴리스" REST API를 참조하세요. |
repository | metadata | 리포지토리와 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "리포지토리" REST API를 참조하세요. |
repository_dispatch | contents | 통합업체가 GitHub Actions를 사용하여 사용자 지정 이벤트를 트리거할 수 있습니다. |
status | statuses | Git 커밋의 상태가 변경되는 경우입니다. 자세한 내용은 "커밋" REST API를 참조하세요. |
team | members | 조직의 팀과 관련된 활동입니다. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "Teams" REST API를 참조하세요. |
team_add | members | 리포지토리가 팀에 추가되는 경우 |
watch | metadata | 누군가가 리포지토리에 별표를 지정할 때. 활동 유형은 페이로드 개체의 action 속성에서 지정됩니다. 자세한 내용은 "활동" REST API를 참조하세요. |