GitHub REST 및 GraphQL API는 모두 누적 풀 리퀘스트를 노출합니다. REST API는 스택 읽기 및 관리를 지원하지만 GraphQL API는 읽기 전용 쿼리를 지원합니다.
API를 사용하여 풀 리퀘스트의 스택 소속 여부를 읽거나 스택된 풀 리퀘스트에 대한 사용자 고유의 자동화 및 통합을 빌드할 수 있습니다.
REST API
REST API는 다음 두 가지 방법으로 누적 풀 리퀘스트를 노출합니다.
stack끌어오기 요청 리소스의 개체입니다. 끌어오기 요청이 스택에 속하는 경우 해당 REST 리소스에는stack개체가 포함됩니다. 이렇게 하면 풀 리퀘스트에서 직접 스택의 수와 크기, 풀 리퀘스트의 위치 및 베이스를 포함한 풀 리퀘스트의 스택 소속 정보를 읽을 수 있습니다.- Stacks API입니다. 스택을 나열, 읽기, 만들기, 확장 및 해제할 전용 엔드포인트 집합입니다. 스택을 만들고 수정하기 위한 화면입니다.
엔드포인트, 매개 변수 및 스키마는 끌어오기 요청에 대한 REST API 엔드포인트을 참조하세요.
중요
API를 통해 병합하고 stacked pull request를 사용하려는 경우 새 비동기 병합 API를 사용해야 합니다.
병합 API
API를 통해 스택형 풀 리퀘스트를 병합하는 경우 비동기 병합 엔드포인트를 사용해야 합니다.
스택을 레거시 동기 병합 엔드포인트 또는 뮤테이션과 병합할 수 없습니다. 스택형 끌어오기 요청을 병합할 때 선택한 해당 끌어오기 요청을 포함하여 스택의 모든 끌어오기 요청은 병합되거나 큐에 대기되어 기본 분기로 병합됩니다. 풀 리퀘스트 스택을 병합하는 데 몇 분 정도 걸릴 수 있는 여러 풀 리퀘스트가 포함될 수 있습니다. 이 때문에 병합 요청을 제출할 때 병합이 백그라운드에서 실행된 다음 결과를 폴링할 수 있습니다.
열린 풀 리퀘스트를 제출할 때는 기본 풀 리퀘스트 상태만 확인됩니다. 분기 보호 및 리포지토리 규칙은 병합이 실제로 실행될 때 나중에 평가되며, 규칙 실패는 폴링 중에는 실패한 결과로 보고됩니다. 스택 병합 요청은 원자적으로 처리됩니다. 즉, 끌어오기 요청의 전체 그룹이 병합되거나 병합 큐에 추가되거나 아무 것도 처리되지 않습니다.
세부 정보는 끌어오기 요청에 대한 REST API 엔드포인트(을)를 참조하세요.
GraphQL API
GraphQL API는 PullRequest 유형에 있는 읽기 전용 stack 및 stackEntry 필드를 통해 끌어오기 요청의 스택 멤버 자격을 노출합니다. 이러한 필드를 사용하여 끌어오기 요청이 속한 스택과 그 안의 위치를 쿼리합니다.
GraphQL API는 스택에 대해 읽기 전용입니다. 스택 뮤테이션은 없습니다. 스택을 만들거나 수정하려면 REST API를 사용합니다.
필드, 개체 및 스키마는 끌어오기 요청을 참조하세요.
Webhooks
끌어오기 요청이 스택에 속하는 경우, GitHub는 웹후크 이벤트 페이로드의 pull_request 개체에 stack 속성을 추가합니다. 이를 통해 앱과 통합은 풀 리퀘스트의 직접 부모 분기뿐만 아니라 스택의 대상 분기를 검사할 수 있습니다.
stack 개체는 끌어오기 요청이 스택의 일부인 동안 발생하는 끌어오기 요청 수명 주기 이벤트에 대한 pull_request 웹후크 페이로드에 포함됩니다.
웹후크 이벤트 및 페이로드을(를) 참조하세요.