Skip to content

GitHub: Get pending deployments for a workflow run

GitHub actions.actionsGetPendingDeploymentsForRun: arguments, response, policy and SDK examples.

← Actions operations · Get started

Operation github.actions_get_pending_deployments_for_run

Provider route: GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/github with npm, or alter-sdk-github with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { GitHubIntegration } from "@alter-ai/github";
async function execute(input: Parameters<GitHubIntegration["actions"]["actionsGetPendingDeploymentsForRun"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new GitHubIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.actions.actionsGetPendingDeploymentsForRun(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_github import GitHubIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = GitHubIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.actions.actions_get_pending_deployments_for_run(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.ownerstringRequired within parent
path.repostringRequired within parent
path.run_idintegerRequired within parent

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$arrayRoot
$[]ModelEach itemExpand Get pending deployments for a workflow run — response body — item

Referenced models: Get pending deployments for a workflow run — response body — item

Get pending deployments for a workflow run — response body — item
FieldTypePresenceDescription and constraints
$objectRootDetails of a deployment that is waiting for protection rules to pass
current_user_can_approvebooleanRequired within parentWhether the currently authenticated user can approve the deployment
environmentobjectRequired within parent
environment.html_urlstringOptional
environment.idJSONOptional
environment.id (anyOf 1)integerAlternativeThe id of the environment.
Format: int64
environment.id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
environment.namestringOptionalThe name of the environment.
environment.node_idstringOptional
environment.urlstringOptional
reviewersarrayRequired within parentThe people or teams that may approve jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed.
reviewers[]objectEach item
reviewers[].reviewerJSONOptional
reviewers[].reviewer (anyOf 1)ModelAlternativeExpand List users — response body — item
reviewers[].reviewer (anyOf 2)ModelAlternativeExpand List teams — response body — item
reviewers[].typestringOptionalThe type of reviewer.
Known values: User, Team
wait_timerJSONRequired within parent
wait_timer (anyOf 1)integerAlternativeThe set duration of the wait timer
wait_timer (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
wait_timer_started_atJSONRequired within parent
wait_timer_started_at (anyOf 1)stringAlternativeThe time that the wait timer began.
Format: date-time
wait_timer_started_at (anyOf 2)nullAlternative

Referenced models: List users — response body — item, List teams — response body — item

List users — response body — item
FieldTypePresenceDescription and constraints
$objectRootA GitHub user.
avatar_urlstringRequired within parentFormat: uri
emailJSONOptional
email (anyOf 1)stringAlternative
email (anyOf 2)nullAlternative
events_urlstringRequired within parent
followers_urlstringRequired within parentFormat: uri
following_urlstringRequired within parent
gists_urlstringRequired within parent
gravatar_idJSONRequired within parent
gravatar_id (anyOf 1)stringAlternative
gravatar_id (anyOf 2)nullAlternative
html_urlstringRequired within parentFormat: uri
idJSONRequired within parent
id (anyOf 1)integerAlternativeFormat: int64
id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
loginstringRequired within parent
nameJSONOptional
name (anyOf 1)stringAlternative
name (anyOf 2)nullAlternative
node_idstringRequired within parent
organizations_urlstringRequired within parentFormat: uri
received_events_urlstringRequired within parentFormat: uri
repos_urlstringRequired within parentFormat: uri
site_adminbooleanRequired within parent
starred_atstringOptional
starred_urlstringRequired within parent
subscriptions_urlstringRequired within parentFormat: uri
typestringRequired within parent
urlstringRequired within parentFormat: uri
user_view_typestringOptional
List teams — response body — item
FieldTypePresenceDescription and constraints
$objectRootGroups of organization members that gives permissions on specified repositories.
access_sourcestringOptionalHow the team's access to the repository was granted. This property is only
present when the team is returned in a repository context, such as
`GET /repos/{owner}/{repo}/teams`.
Known values: direct, organization, enterprise
descriptionJSONRequired within parent
description (anyOf 1)stringAlternative
description (anyOf 2)nullAlternative
enterprise_idJSONOptional
enterprise_id (anyOf 1)integerAlternativeUnique identifier of the enterprise to which this team belongs
enterprise_id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
html_urlstringRequired within parentFormat: uri
idJSONRequired within parent
id (anyOf 1)integerAlternative
id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
members_urlstringRequired within parent
namestringRequired within parent
node_idstringRequired within parent
notification_settingstringOptional
organization_idJSONOptional
organization_id (anyOf 1)integerAlternativeUnique identifier of the organization to which this team belongs
organization_id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
parentModelRequired within parentExpand Create a team — response body — parent
permissionstringRequired within parent
permissionsobjectOptional
permissions.adminbooleanRequired within parent
permissions.maintainbooleanRequired within parent
permissions.pullbooleanRequired within parent
permissions.pushbooleanRequired within parent
permissions.triagebooleanRequired within parent
privacystringOptional
repositories_urlstringRequired within parentFormat: uri
slugstringRequired within parent
typestringRequired within parentThe ownership type of the team
Known values: enterprise, organization
urlstringRequired within parentFormat: uri

Referenced models: Create a team — response body — parent

Create a team — response body — parent
FieldTypePresenceDescription and constraints
$JSONRoot
$ (anyOf 1)ModelAlternativeExpand Create a team — response body — parent / type: enterprise, organization
$ (anyOf 2)nullAlternative

Referenced models: Create a team — response body — parent / type: enterprise, organization

Create a team — response body — parent / type: enterprise, organization
FieldTypePresenceDescription and constraints
$objectRootGroups of organization members that gives permissions on specified repositories.
descriptionJSONRequired within parent
description (anyOf 1)stringAlternativeDescription of the team
description (anyOf 2)nullAlternative
enterprise_idJSONOptional
enterprise_id (anyOf 1)integerAlternativeUnique identifier of the enterprise to which this team belongs
enterprise_id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
html_urlstringRequired within parentFormat: uri
idJSONRequired within parent
id (anyOf 1)integerAlternativeUnique identifier of the team
id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
ldap_dnstringOptionalDistinguished Name (DN) that team maps to within LDAP environment
members_urlstringRequired within parent
namestringRequired within parentName of the team
node_idstringRequired within parent
notification_settingstringOptionalThe notification setting the team has set
organization_idJSONOptional
organization_id (anyOf 1)integerAlternativeUnique identifier of the organization to which this team belongs
organization_id (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
permissionstringRequired within parentPermission that the team will have for its repositories
privacystringOptionalThe level of privacy this team should have
repositories_urlstringRequired within parentFormat: uri
slugstringRequired within parent
typestringRequired within parentThe ownership type of the team
Known values: enterprise, organization
urlstringRequired within parentURL for the team
Format: uri

SDK function policy ID: github.actions_get_pending_deployments_for_run. Catalog operation: actions/get-pending-deployments-for-run. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Pinned headers: {"X-GitHub-Api-Version": "2026-03-10", "User-Agent": "Alter", "Accept": "application/vnd.github+json"}

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.