API Reference
Log In
API Reference

Get the PR Health action queue

The open pull requests that need a decision, grouped by why: one group per cause in this order, empty groups included: AUTOMATION, STUCK_DRAFT, AUTHOR_GONE, APPROVED_NOT_MERGED, CHANGES_REQUESTED_QUIET, WAITING_ON_REVIEW, ON_PACE. Every open pull request inside the team settings (cutoff, repository exclusions, automation patterns) takes the first cause that matches: automation; a draft is STUCK_DRAFT once inactive for the rotting threshold, otherwise ON_PACE; AUTHOR_GONE when it has no provider login, or neither its login nor its mapped email opened a pull request, had one merged, or committed to an open one (or, when the commit time is unknown or cut short, updated an open one) in the last authorGoneDays days, across the organization's pull requests from the same source; ON_PACE when active within the aging threshold; then APPROVED_NOT_MERGED, CHANGES_REQUESTED_QUIET, and WAITING_ON_REVIEW for everything else. Each group carries its first perCause rows in the requested order and totalElements, the whole group under every filter; the report's causes[] gives the same counts without filters. Page through one group with GET /vcs-pr-health/pull-requests?cause=..., whose first rows are this group's rows. assistedOnly keeps AI-assisted rows in every group except AUTOMATION. No window: the queue holds open pull requests only. triaged works as on /vcs-pr-health/pull-requests: dismissed and snoozed pull requests leave every group by default, and triaged=ONLY groups just those; the AUTOMATION group is the same under both.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string
required

VCS source: github or gitlab

int64

Scope every group to a single department (and, with includeDescendants, its subtree), by the department its members belong to today. Must belong to the caller's organization. Omit it for the whole organization.

boolean
Defaults to false

When departmentId is set, also include its descendant departments. Ignored when departmentId is omitted.

boolean
Defaults to false

Keep only AI-assisted pull requests (the co-author flag or a detected coding-assistant vendor) in every group except AUTOMATION. Defaults to false here; the team's own default is the assistedOnly team setting, which the caller passes explicitly.

string

One repository by name (owner/repo), case-insensitive

string

Provider login, as returned in the report's engineers[].authorLogin; unknown also selects rows with no provider login

string
Defaults to inactivity

inactivity, age, repo, author or review, applied inside every group; author orders by the displayed identity, activeMappedEmail else the login, unknown last

string
Defaults to desc

asc or desc

int32
Defaults to 8

Preview rows per group, 1..50

string
Defaults to EXCLUDE

EXCLUDE (the default) lists pull requests nobody dismissed or snoozed. ONLY lists just the dismissed and snoozed ones, each carrying its triage record. Automation ignores it: the AUTOMATION bucket and cause list the same rows under both. Case-insensitive; anything else is a 400.

string

One ticket id, case-insensitive: the key PR Health read from the pull request's title or branch. At most 80 characters.

string

Team to read or write, as the team's hashid (the same id as /v2/api/teams/{id}). The caller must belong to it or be able to read it: 403 otherwise, 404 when no such team exists. An API key may only name its own organization. Omit it for the API key's organization, or for a signed-in user the first organization they belong to.

Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
*/*