# GitHub

GitHub is a code hosting platform for version control and collaboration, offering Git-based repository management, issue tracking, and continuous integration features

- **Category:** developer tools
- **Auth:** OAUTH2
- **Composio Managed App Available?** Yes
- **Tools:** 866
- **Triggers:** 20
- **Slug:** `GITHUB`
- **Version:** 20260319_00

## Tools

### Abort Repository Migration

**Slug:** `GITHUB_ABORT_REPOSITORY_MIGRATION`

Tool to abort a repository migration that is queued or in progress. Use when you need to cancel an ongoing migration operation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `migrationId` | string | Yes | The ID of the repository migration to abort. This is the migration ID returned when a migration was queued (e.g., 'RM_kgDOABCDEF'). |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. This can be used to track the mutation in logs or for idempotency purposes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Accept a repository invitation

**Slug:** `GITHUB_ACCEPT_REPOSITORY_INVITATION`

Accepts a PENDING repository invitation that has been issued to the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invitation_id` | integer | Yes | Unique identifier of the repository invitation sent TO the authenticated user. Get this ID by listing your pending invitations using the 'List repository invitations for the authenticated user' action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add app access restrictions

**Slug:** `GITHUB_ADD_APP_ACCESS_RESTRICTIONS`

Adds GitHub Apps to the list of apps allowed to push to a protected branch. The branch must already have protection rules with restrictions enabled. This endpoint only works for organization repositories, not personal repositories. Apps must be installed on the repository with 'contents' write permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `apps` | array | Yes | The list of GitHub App slugs with push access to grant. Apps must be installed on the repository and have 'contents' write permissions. The app slug is the URL-friendly name of the GitHub App (e.g., 'github-actions', 'dependabot'). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The organization name that owns the repository. This field is not case-sensitive. Note: This endpoint only works for organization-owned repositories. |
| `branch` | string | Yes | The name of the branch to which restrictions will be applied. Wildcard characters (e.g., '*') are not allowed in the branch name when using this REST API endpoint. For operations involving wildcard branch names, consult the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add a repository collaborator

**Slug:** `GITHUB_ADD_A_REPOSITORY_COLLABORATOR`

Adds a GitHub user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `username` | string | Yes | The GitHub handle for the user account to add as a collaborator. Cannot be the same as the repository owner, as owners are automatically collaborators. |
| `permission` | string | No | Permission level for the collaborator. For organization-owned repositories, valid values are `pull` (read-only), `triage` (manage issues/PRs), `push` (read/write), `maintain` (manage most settings), `admin` (full control), or a custom repository role name if defined by the owning organization. This parameter is ignored for personal repositories, which grant `push` access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add assignees to an issue

**Slug:** `GITHUB_ADD_ASSIGNEES_TO_AN_ISSUE`

Adds assignees to a GitHub issue. This action only adds users - it does not remove existing assignees. Changes are silently ignored if the authenticated user lacks push access to the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The username of the account or the organization name that owns the repository. This field is not case sensitive. |
| `assignees` | array | No | A list of GitHub usernames to add as assignees to the issue. Up to 10 assignees total can be on an issue. NOTE: This endpoint ADDS assignees - it does not replace existing ones. Users already assigned are kept. To remove assignees, use the 'remove_assignees_from_an_issue' action instead. The authenticated user must have push access to the repository; otherwise changes are silently ignored. |
| `issue_number` | integer | Yes | The unique number identifying the issue within the repository. Must be a positive integer (GitHub issue numbers start at 1). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add email for auth user

**Slug:** `GITHUB_ADD_EMAIL_ADDRESS_FOR_AUTHENTICATED_USER`

Adds one or more email addresses (which will be initially unverified) to the authenticated user's GitHub account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emails` | array | Yes | Array of email addresses to add to the authenticated user account. Must contain at least one email address. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add field to user project

**Slug:** `GITHUB_ADD_FIELD_TO_USER_PROJECT`

Tool to add a custom field to a user-owned GitHub Projects V2 project. Use when you need to add fields like status, priority, or custom data to organize project items.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the field to create. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `data_type` | string ("text" | "single_select" | "number" | "date" | "iteration") | Yes | The data type of the field. Use 'single_select' for dropdown fields, 'iteration' for sprint fields, or other types for simple fields. |
| `project_number` | integer | Yes | The project's number. |
| `single_select_options` | array | No | Options for single select fields. Required when data_type is 'single_select'. |
| `iteration_configuration` | object | No | Configuration for iteration fields. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add item to user project

**Slug:** `GITHUB_ADD_ITEM_TO_USER_PROJECT`

Tool to add an issue or pull request to a user-owned GitHub project. Use when you need to add existing repository items to a project board.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | integer | No | The unique identifier of the issue or pull request to add to the project. Required if owner, repo, and number are not provided. |
| `repo` | string | No | The repository name. Required with owner and number if id is not provided. |
| `type` | string ("Issue" | "PullRequest") | Yes | The type of item to add to the project. Must be either Issue or PullRequest. |
| `owner` | string | No | The repository owner login. Required with repo and number if id is not provided. |
| `number` | integer | No | The issue or pull request number. Required with owner and repo if id is not provided. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add labels to an issue

**Slug:** `GITHUB_ADD_LABELS_TO_AN_ISSUE`

Adds labels (provided in the request body) to a repository issue; labels that do not already exist are created.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name owning the repository (case-insensitive). |
| `labels` | array | Yes | Array of label names to add to the issue. Labels that don't exist will be created automatically. |
| `issue_number` | integer | Yes | Positive integer that uniquely identifies the issue within the repository. Must be >= 1. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add org runner labels

**Slug:** `GITHUB_ADD_ORG_RUNNER_LABELS`

Adds new custom labels to an existing self-hosted runner for an organization; existing labels are not removed, and duplicates are not added.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `labels` | array | Yes | A list of custom label names to add to the self-hosted runner. Previously applied labels are not removed. |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add or update team membership for a user

**Slug:** `GITHUB_ADD_OR_UPDATE_TEAM_MEMBERSHIP_FOR_USER`

Adds a GitHub user to a team or updates their role (member or maintainer), inviting them to the organization if not already a member; idempotent, returning current details if no change is made.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `role` | string ("member" | "maintainer") | No | The role to assign to the user within the team. A 'maintainer' has broader permissions than a 'member', such as managing team members and settings. |
| `username` | string | Yes | The GitHub username of the user to add or whose membership to update. |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team's name. Must be lowercase with hyphens instead of spaces (e.g., 'my-team' not 'My Team'). Spaces will be automatically converted to hyphens and text will be lowercased. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add or update team project permissions

**Slug:** `GITHUB_ADD_OR_UPDATE_TEAM_PROJECT_PERMISSIONS`

Adds a classic project to a team or updates the team's permission on it. This endpoint grants or updates permissions for a team on a specific classic project (not Projects V2). The authenticated user must have admin permissions for the project. Both the team and project must belong to the same organization. Requirements: - The project must be a classic project (not GitHub Projects V2) - The authenticated user must have admin permissions on the project - The team and project must be in the same organization - Requires 'admin:org' scope for the authentication token Returns HTTP 204 No Content on success, 403 if project is not an org project, or 404 if the organization, team, or project is not found.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (login) that owns both the team and the classic project. Case-insensitive. |
| `team_slug` | string | Yes | The team's URL-friendly slug identifier within the organization. Found in the team's URL path. |
| `permission` | string ("read" | "write" | "admin") | No | Permission level to grant the team: 'read' (view only), 'write' (view and edit), or 'admin' (full control including settings). If omitted, uses the team's default permission. |
| `project_id` | integer | Yes | The unique numeric ID of the classic project. This is NOT the project number displayed in the UI. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add or update team repository permissions

**Slug:** `GITHUB_ADD_OR_UPDATE_TEAM_REPOSITORY_PERMISSIONS`

Sets or updates a team's permission level for a repository within an organization; the team must be a member of the organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name where the team exists (case-insensitive). This is the organization that owns the team, not necessarily the repository owner. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). This is the user or organization that owns the repository. In most cases, this should match the 'org' parameter value. |
| `team_slug` | string | Yes | The team's slug (URL-friendly name). |
| `permission` | string | No | Permission level to grant the team. Valid values: 'pull' (read-only), 'triage' (manage issues/PRs), 'push' (read/write), 'maintain' (manage repo settings plus push), 'admin' (full control). Custom repository role names are also supported if defined by the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add project collaborator

**Slug:** `GITHUB_ADD_PROJECT_COLLABORATOR`

Adds a specified GitHub user as a collaborator to an existing organization project with a given permission level. Note: This endpoint is for organization projects (classic). You must be an organization owner or a project admin to add a collaborator. Classic projects are being deprecated in favor of the new Projects experience.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the user to be added as a collaborator. |
| `permission` | string ("read" | "write" | "admin") | No | Permission level for the collaborator on the project. |
| `project_id` | integer | Yes | The unique identifier of the organization project. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add a repository to an app installation

**Slug:** `GITHUB_ADD_REPOSITORY_TO_APP_INSTALLATION`

Adds a repository to a GitHub App installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repository_id` | integer | Yes | The unique identifier of the repository to add to the installation. The authenticated user must have admin permissions for this repository. |
| `installation_id` | integer | Yes | The unique identifier of the GitHub App installation to which the repository will be added. This installation must be accessible to the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add repo to org secret with selected access

**Slug:** `GITHUB_ADD_REPO_TO_ORG_SECRET_WITH_SELECTED_ACCESS`

Adds a repository to an existing organization-level GitHub Actions secret that is configured for 'selected' repository access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the organization secret to which the repository will be added. |
| `repository_id` | integer | Yes | The unique identifier of the repository to be granted access to the organization secret. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add selected repo to org secret

**Slug:** `GITHUB_ADD_REPO_TO_ORG_SECRET_WITH_SELECTED_VISIBILITY`

Grants an existing repository access to an existing organization-level Dependabot secret when the secret's visibility is set to 'selected'; the repository must belong to the organization, and the call succeeds without change if access already exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's unique handle/name (case-insensitive). |
| `secret_name` | string | Yes | Name of the Dependabot secret; must be alphanumeric or underscore, no spaces (lowercase auto-converts to uppercase). |
| `repository_id` | integer | Yes | Unique ID of the repository to be granted access to the secret. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add runner labels

**Slug:** `GITHUB_ADD_RUNNER_LABELS`

Adds and appends custom labels to a self-hosted repository runner, which must be registered and active.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension. Case-insensitive. |
| `owner` | string | Yes | Username or organization name of the repository owner. Case-insensitive. |
| `labels` | array | Yes | Custom label names to add. Appended to existing labels. Names are case-insensitive. Empty list means no changes. |
| `runner_id` | integer | Yes | Unique ID of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add selected repository to an organization secret

**Slug:** `GITHUB_ADD_SELECTED_REPOSITORY_TO_ORGANIZATION_SECRET`

Adds a repository to an organization secret's access list when the secret's visibility is 'selected'; this operation is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case sensitive. |
| `secret_name` | string | Yes | The name of the secret. Secret names can only contain alphanumeric characters ([A-Z], [a-z], [0-9]) or underscores (_). Spaces are not allowed. Secret names cannot start with GITHUB_ and must be less than 255 characters. |
| `repository_id` | integer | Yes | The unique identifier of the repository to add to the secret's access list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add selected repository to an organization variable

**Slug:** `GITHUB_ADD_SELECTED_REPOSITORY_TO_ORGANIZATION_VARIABLE`

Grants a repository access to an organization-level GitHub Actions variable, if that variable's visibility is set to 'selected_repositories'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `name` | string | Yes | Name of the existing organization-level GitHub Actions variable. |
| `repository_id` | integer | Yes | Unique identifier of the repository to grant access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add a selected repository to a user secret

**Slug:** `GITHUB_ADD_SELECTED_REPOSITORY_TO_USER_SECRET`

Grants a specified repository access to an authenticated user's existing Codespaces secret, enabling Codespaces created for that repository to use the secret.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | Name of the user-level Codespaces secret to which repository access is added; this secret must already exist for the authenticated user. |
| `repository_id` | integer | Yes | The unique identifier of the repository to be granted access to the specified user-level Codespaces secret. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add social accounts for the authenticated user

**Slug:** `GITHUB_ADD_SOCIAL_ACCOUNTS_FOR_AUTHENTICATED_USER`

Adds one or more social media links (which must be valid, full URLs for platforms supported by GitHub) to the authenticated user's public GitHub profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account_urls` | array | Yes | Full URLs for social media profiles to add to the user's GitHub profile; these will be displayed publicly. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add status check contexts

**Slug:** `GITHUB_ADD_STATUS_CHECK_CONTEXTS`

Adds status check contexts to a protected branch's required status checks. This action appends new status check contexts to the existing list of required status checks for a protected branch. The branch must already have branch protection enabled with status checks configured. Note: The 'contexts' parameter is deprecated by GitHub in favor of 'checks' array. For new implementations, consider using update_status_check_protection with the 'checks' parameter instead.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `branch` | string | Yes | The name of the branch to which status check contexts will be added. Branch names cannot contain wildcard characters. To use wildcard characters in branch names, refer to the GraphQL API. |
| `contexts` | array | Yes | The status check contexts to add to the protected branch. These are the names of CI/CD jobs or other checks that must pass before merging. Can be provided as a single string or a list of strings. Examples: 'ci/test', 'linter', 'continuous-integration/travis-ci'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add sub-issue to an issue

**Slug:** `GITHUB_ADD_SUB_ISSUE`

Tool to add a sub-issue to a parent GitHub issue using GraphQL. Use when you need to establish a parent-child relationship between issues. Requires the 'sub_issues' GraphQL feature to be enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `issue_id` | string | Yes | The global node ID of the parent issue (e.g., 'I_kwDOABCDEFGH'). This is the GraphQL global identifier returned by GitHub's API. |
| `sub_issue_id` | string | No | The global node ID of the sub-issue to link to the parent issue. Either sub_issue_id or sub_issue_url must be provided. |
| `sub_issue_url` | string | No | The URL of the sub-issue to link to the parent issue. Either sub_issue_id or sub_issue_url must be provided. |
| `replace_parent` | boolean | No | If true, replaces the existing parent issue if the sub-issue already has one. If false or omitted, the mutation will fail if the sub-issue already has a parent. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add team access restrictions

**Slug:** `GITHUB_ADD_TEAM_ACCESS_RESTRICTIONS`

Adds teams to the list of teams with push access to a protected branch. This action grants additional teams push access to a protected branch. Unlike 'Set team access restrictions' (PUT), this action adds to the existing list rather than replacing it entirely. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must exist in the organization and have repository access

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The organization name that owns the repository. Team access restrictions only work for organization-owned repositories, not personal repositories. This value is not case-sensitive. |
| `teams` | array | Yes | The list of team slugs to add push access to the protected branch. A team slug is the URL-friendly version of the team name (lowercase, hyphens instead of spaces). The teams must already have access to the repository. This adds teams to the existing list (does not replace the entire list). |
| `branch` | string | Yes | The name of the protected branch to add team restrictions to. The branch must already have branch protection enabled with restrictions configured. Wildcard characters are not supported. For wildcard branch protection, use the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add user access restrictions

**Slug:** `GITHUB_ADD_USER_ACCESS_RESTRICTIONS`

Adds users to the list of people allowed to push to a protected branch in an organization repository. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must already have protection rules with restrictions enabled - Users must have write access to the repository to be added - The combined total of users, apps, and teams is limited to 100 items

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (must be an organization for user restrictions). This name is not case-sensitive. |
| `users` | array | Yes | The list of user logins to grant push access to the protected branch. Users must have write access to the repository. An empty list will remove all user restrictions. |
| `branch` | string | Yes | The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, refer to the GitHub GraphQL API documentation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add users to codespaces access for an organization

**Slug:** `GITHUB_ADD_USERS_TO_CODESPACES_ACCESS_FOR_ORGANIZATION`

Adds organization members to the list of users granted Codespaces access billed to the organization. IMPORTANT: This endpoint requires the organization's Codespaces billing access to be set to 'selected_members' mode. If not already configured, use the GITHUB_MANAGE_ACCESS_CONTROL_FOR_ORGANIZATION_CODESPACES action first to set visibility to 'selected_members'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization's name (case-insensitive). |
| `selected_usernames` | array | Yes | Usernames of organization members to be granted Codespaces access billed to the organization. These users must be members of the specified organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get GitHub API root

**Slug:** `GITHUB_API_ROOT`

Retrieves a map of all top-level GitHub REST API resource URLs and their templates.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Approve a workflow run for a fork pull request

**Slug:** `GITHUB_APPROVE_WORKFLOW_RUN_FOR_FORK_PULL_REQUEST`

Approves a workflow run from a forked repository's pull request; call this when such a run requires manual approval due to workflow configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run requiring approval. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Assign an organization role to a team

**Slug:** `GITHUB_ASSIGN_ORGANIZATION_ROLE_TO_TEAM`

Assigns an existing organization-level role (identified by `role_id`) to a team (identified by `team_slug`) within a GitHub organization (`org`), provided the organization, team, and role already exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is case-insensitive. |
| `role_id` | integer | Yes | Unique identifier of the organization role to assign to the team (obtainable by listing organization roles). |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team's name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Assign an organization role to a user

**Slug:** `GITHUB_ASSIGN_ORGANIZATION_ROLE_TO_USER`

Assigns a specific organization role to a user who is a member or an outside collaborator in a GitHub organization, using a valid role ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name. This is not case-sensitive. |
| `role_id` | integer | Yes | The unique integer identifier for the organization role. This ID can be obtained by listing the organization's roles. |
| `username` | string | Yes | The GitHub username of the user to whom the role will be assigned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Docker Migration Conflicting Packages

**Slug:** `GITHUB_AUTH_USER_DOCKER_CONFLICT_PACKAGES_LIST`

List Docker packages with migration conflicts for the authenticated user. This endpoint lists all Docker packages owned by the authenticated user that encountered namespace conflicts during the Docker-to-GitHub Container Registry (GHCR) migration. Conflicts occur when a package with the same name exists in both the legacy Docker registry and GHCR. IMPORTANT: The Docker registry for GitHub Packages was deprecated on Feb 24, 2025. This endpoint may return a 400 error with message 'Package migration for docker is no longer supported' as the migration period has ended. In this case, the action returns an informative response instead of failing. Use case: Identifying packages that require manual migration to GHCR. Required scope: read:packages (for OAuth and personal access tokens).

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Block a user

**Slug:** `GITHUB_BLOCK_USER`

Blocks an existing individual GitHub user (not an organization or your own account), preventing them from interacting with your account and repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user to block. Case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Block a user from an organization

**Slug:** `GITHUB_BLOCK_USER_FROM_ORGANIZATION`

Blocks a GitHub user from an organization, preventing their contributions, collaboration, and forking of the organization's repositories. Requires admin or 'Blocking users' organization permission (write access).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). You must have admin or 'Blocking users' permission in this organization. |
| `username` | string | Yes | The GitHub username (handle) of the account to block from the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel a GitHub Pages deployment

**Slug:** `GITHUB_CANCEL_GITHUB_PAGES_DEPLOYMENT`

Cancels an existing, ongoing or queued GitHub Pages deployment for a repository using its `pages_deployment_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, excluding the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Username or organization that owns the repository. Not case-sensitive. |
| `pages_deployment_id` | integer | Yes | Unique numerical ID of the GitHub Pages deployment (not the commit SHA). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel sponsorship

**Slug:** `GITHUB_CANCEL_SPONSORSHIP`

Tool to cancel an active GitHub sponsorship using GraphQL. Use when you need to terminate a sponsorship relationship between a sponsor and a sponsorable entity. Either sponsor ID/login and sponsorable ID/login must be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sponsor_id` | string | No | The global node ID of the user or organization acting as sponsor (e.g., 'U_kgDOABCDEF'). Required if sponsor_login is not provided. |
| `sponsor_login` | string | No | The username of the sponsoring user or organization. Required if sponsor_id is not provided. |
| `sponsorable_id` | string | No | The global node ID of the user or organization receiving the sponsorship (e.g., 'U_kgDOMNOPQR'). Required if sponsorable_login is not provided. |
| `sponsorable_login` | string | No | The username of the sponsored user or organization. Required if sponsorable_id is not provided. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel a workflow run

**Slug:** `GITHUB_CANCEL_WORKFLOW_RUN`

Cancels a workflow run in a GitHub repository if it is in a cancellable state (e.g., 'in_progress' or 'queued'). Returns 202 Accepted on success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a gist is starred

**Slug:** `GITHUB_CHECK_IF_GIST_IS_STARRED`

Checks if a gist is starred by the authenticated user. Returns `is_starred: true` if the gist is starred (HTTP 204), or `is_starred: false` if not starred (HTTP 404). Use this to verify star status before starring/unstarring a gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier (ID) of the gist to check. Can be found in the URL of the gist (e.g., 'https://gist.github.com/{user}/{gist_id}'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if pull request merged

**Slug:** `GITHUB_CHECK_IF_PULL_REQUEST_HAS_BEEN_MERGED`

Checks if a specified GitHub pull request has been merged, indicated by a 204 HTTP status (merged) or 404 (not merged/found).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case sensitive). |
| `pull_number` | integer | Yes | The number that identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user can be assigned

**Slug:** `GITHUB_CHECK_IF_USER_CAN_BE_ASSIGNED`

Verifies if a GitHub user can be assigned to issues in a repository; assignability is confirmed by an HTTP 204 (No Content) response, resulting in an empty 'data' field in the response.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case sensitive. |
| `assignee` | string | Yes | The GitHub username of the user to check for assignability. This name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user can be assigned to an issue

**Slug:** `GITHUB_CHECK_IF_USER_CAN_BE_ASSIGNED_TO_ISSUE`

Checks if a specified GitHub user can be assigned to a given issue within a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account owning the repository. This field is not case-sensitive. |
| `assignee` | string | Yes | The GitHub username of the user to check for assignment permissions. |
| `issue_number` | integer | Yes | The unique number identifying the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user follows another user

**Slug:** `GITHUB_CHECK_IF_USER_FOLLOWS_ANOTHER_USER`

Checks if a GitHub user `username` follows `target_user`; returns a 204 HTTP status if true, 404 if not or if users are invalid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the user to check. |
| `target_user` | string | Yes | The GitHub username of the user to verify if they are followed by the `username`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user is blocked by the authenticated user

**Slug:** `GITHUB_CHECK_IF_USER_IS_BLOCKED_BY_AUTHENTICATED_USER`

Checks if the specified GitHub user is blocked by the authenticated user; a 204 No Content response indicates the user is blocked, while a 404 Not Found indicates they are not.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user is blocked by an organization

**Slug:** `GITHUB_CHECK_IF_USER_IS_BLOCKED_BY_ORGANIZATION`

Checks if a GitHub user is blocked by an organization. Returns is_blocked=True if the user is blocked (HTTP 204), or is_blocked=False if not blocked (HTTP 404). Requires 'Blocking users' organization permission (read access).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). Must be an organization where you have 'Blocking users' permission (read access). |
| `username` | string | Yes | The GitHub username (handle) to check if blocked by the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if a user is a repository collaborator

**Slug:** `GITHUB_CHECK_IF_USER_IS_REPOSITORY_COLLABORATOR`

Checks if a user is a collaborator on a specified GitHub repository, returning a 204 status if they are, or a 404 status if they are not or if the repository/user does not exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository, typically a GitHub username or an organization name. This name is not case sensitive. |
| `username` | string | Yes | The GitHub username of the user whose collaborator status is being checked. This name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if person is followed by authenticated user

**Slug:** `GITHUB_CHECK_PERSON_FOLLOWED_BY_AUTH_USER`

Checks if the authenticated GitHub user follows a target GitHub user. Returns a structured response with is_following=True when following (HTTP 204), or is_following=False when not following (HTTP 404).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (e.g., 'octocat') of the person to check. This is the user's handle on GitHub. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check private vulnerability reporting status

**Slug:** `GITHUB_CHECK_PRIVATE_VULNERABILITY_REPORTING_STATUS`

Checks if private vulnerability reporting is enabled for the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check public organization membership

**Slug:** `GITHUB_CHECK_PUBLIC_ORGANIZATION_MEMBERSHIP_FOR_USER`

Tool to check if a user is a public member of an organization. Use when you need to verify public organization membership status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check team permissions for a project

**Slug:** `GITHUB_CHECK_TEAM_PERMISSIONS_FOR_A_PROJECT`

Checks if a team has 'read', 'write', or 'admin' permissions for an organization's specific classic project, returning the project's details if access is confirmed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This is case-insensitive. |
| `team_slug` | string | Yes | The slug (short name) of the team. |
| `project_id` | integer | Yes | The unique identifier of the project (classic). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check team permissions for a repository

**Slug:** `GITHUB_CHECK_TEAM_PERMISSIONS_FOR_A_REPOSITORY`

Checks a team's permissions for a specific repository within an organization, including permissions inherited from parent teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This field is not case-sensitive. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The organization that owns the repository. For this GitHub API endpoint, this value must be the same as the `org` parameter. This field is not case-sensitive. |
| `team_slug` | string | Yes | The URL-friendly slug for the team name. It is unique within the organization and typically all lowercase with hyphens instead of spaces. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check a token

**Slug:** `GITHUB_CHECK_TOKEN`

Checks if a GitHub App or OAuth access_token is valid for the specified client_id and retrieves its details, typically to verify its active status and grants. NOTE: This endpoint requires Basic Authentication using the OAuth App's client_id as username and client_secret as password. The access_token parameter must be an OAuth token issued by the specified OAuth App.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `client_id` | string | Yes | The unique client ID of your GitHub OAuth App (must match the app that issued the token being checked). |
| `access_token` | string | Yes | The OAuth access token issued by your OAuth App that you want to validate. Returns 404 if the token is invalid or not issued by this client_id. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear Project V2 Item Field Value

**Slug:** `GITHUB_CLEAR_PROJECT_V2_ITEM_FIELD_VALUE`

Tool to clear the value of a field for an item in a GitHub Project V2. Use when you need to remove or reset a field value (text, number, date, assignees, labels, single-select, iteration, or milestone fields).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `itemId` | string | Yes | The global node ID of the project item to update (e.g., 'PVTI_lAHOCNqc1s4BN3oqzgldG_w'). This identifies the specific item within the project whose field value will be cleared. |
| `fieldId` | string | Yes | The global node ID of the field to clear (e.g., 'PVTSSF_lAHOCNqc1s4BN3oqzg8vTnA'). Currently supports text, number, date, assignees, labels, single-select, iteration and milestone fields. |
| `projectId` | string | Yes | The global node ID of the Project (e.g., 'PVT_kwHOCNqc1s4BN3oq'). This identifies the project containing the item. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear repository cache by key

**Slug:** `GITHUB_CLEAR_REPOSITORY_CACHE_BY_KEY`

Deletes GitHub Actions caches from a repository matching a specific `key` and an optional Git `ref`, used to manage storage or clear outdated/corrupted caches; the action succeeds even if no matching caches are found to delete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The exact cache key used to identify specific caches for deletion. This key is often dynamically generated in workflows using expressions (e.g., `${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}`). |
| `ref` | string | No | The full Git reference for narrowing down the cache deletion. For example, to target caches for a specific branch, use `refs/heads/<branch_name>`. To target caches for a pull request, use `refs/pull/<pull_number>/merge`. If omitted, caches matching the key across all refs are considered. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear self-hosted runner org labels

**Slug:** `GITHUB_CLEAR_SELF_HOSTED_RUNNER_ORG_LABELS`

Removes all custom labels from a self-hosted runner for an organization; default labels (e.g., 'self-hosted', 'linux', 'x64') will remain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization that owns the self-hosted runner (case-insensitive). |
| `runner_id` | integer | Yes | Unique numeric identifier of the self-hosted runner. Can be obtained from listing runners for the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Commit Multiple Files

**Slug:** `GITHUB_COMMIT_MULTIPLE_FILES`

Tool to atomically create, update, or delete multiple files in a GitHub repository as a single commit. Uses Git Data APIs to avoid SHA mismatch conflicts that occur with the Contents API when multiple files are modified in parallel. Use when you need to make multi-file changes reliably. BRANCH CREATION: When committing to a new branch (e.g., 'fix/my-fix' or 'feature/new-feature'), you MUST provide 'base_branch' (typically 'main' or 'master') to create the branch from. If the branch already exists, base_branch is not needed. This action handles race conditions automatically: if the branch is updated by another commit between fetching the HEAD and updating the reference (resulting in a 422 'not a fast forward' error), the action will retry by refetching the HEAD and rebasing changes. Use max_retries to control this behavior.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name (without .git extension) |
| `force` | boolean | No | Force update the branch reference. WARNING: Use with caution as this can overwrite commits. Only use this when you intentionally want to overwrite the branch history. |
| `owner` | string | Yes | Repository owner (username or organization name) |
| `author` | object | No | Git author or committer information. |
| `branch` | string | Yes | Target branch name to commit to. If this branch doesn't exist, you MUST provide 'base_branch' to create it. For new feature branches (e.g., 'fix/my-fix', 'feature/new-feature'), always set base_branch='main' (or your default branch). |
| `deletes` | array | No | List of file paths to delete from the repository. Files must exist in the repository; attempting to delete non-existent files will result in an error. Ensure paths are exact with no leading/trailing whitespace. |
| `message` | string | Yes | Commit message describing the changes |
| `upserts` | array | No | List of files to create or update. Each entry requires path, content, and optional encoding (utf-8 or base64) |
| `committer` | object | No | Git author or committer information. |
| `base_branch` | string | No | REQUIRED when committing to a new branch that doesn't exist yet. Specifies the existing branch to create the new branch from (e.g., 'main' or 'master'). Not needed if 'branch' already exists in the repository. |
| `max_retries` | integer | No | Maximum number of retries when encountering race conditions (422 'not a fast forward' errors). The action will refetch the HEAD and rebase changes on each retry. Set to 0 to disable retries. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Compare two commits

**Slug:** `GITHUB_COMPARE_TWO_COMMITS`

Compares two commit points (commits, branches, tags, or SHAs) within a repository or across forks, using `BASE...HEAD` or `OWNER:REF...OWNER:REF` format for the `basehead` parameter.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch, for pagination when the number of differences (commits or files) is large. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `basehead` | string | Yes | A string specifying the base and head references to compare, in the format `BASE...HEAD`. `BASE` and `HEAD` can be branch names (e.g., `main...develop`), tag names (e.g., `v1.0.0...v1.1.0`), or commit SHAs (abbreviated or full 40-character format). Both abbreviated and full SHAs are accepted; full 40-character SHAs are recommended for reliability in large repositories. Both references must exist in the specified repository. To compare branches across forks in the same network, use the format `OWNER:REF...OWNER:REF` (e.g., `octocat:main...another-user:main`). Do NOT pass GitHub URLs - only plain reference strings like 'main...develop' are accepted. |
| `per_page` | integer | No | Number of results (e.g., files or commits) to return per page, with a maximum of 100, for pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Configure JIT runner for an org

**Slug:** `GITHUB_CONFIGURE_JIT_RUNNER_FOR_ORG`

Generates a JIT configuration for a GitHub organization's new self-hosted runner to run a single job then unregister; requires admin:org scope and the runner_group_id must exist in the organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `name` | string | Yes | Desired name for the new self-hosted runner, visible in the GitHub UI. |
| `labels` | array | Yes | Custom labels to assign to the new self-hosted runner, used by GitHub Actions to route jobs. **Minimum items**: 1. **Maximum items**: 100. |
| `work_folder` | string | No | Path to the working directory on the runner machine where jobs will execute, relative to the runner's installation directory. |
| `runner_group_id` | integer | Yes | ID of the runner group to assign the new self-hosted runner. Must exist in the organization. You can get runner group IDs by calling the 'List self-hosted runner groups for an organization' endpoint (GET /orgs/{org}/actions/runner-groups). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Configure OIDC subject claim template

**Slug:** `GITHUB_CONFIGURE_OIDC_SUBJECT_CLAIM_TEMPLATE`

Sets or updates the OIDC subject claim customization template for an existing GitHub organization by specifying which claims (e.g., 'repo', 'actor') form the OIDC token's subject (`sub`). This action customizes which claim keys are included in the OIDC subject claim for the specified organization. It allows for fine-tuning the content of the subject claim based on organizational needs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `include_claim_keys` | array | Yes | Array of unique strings, each a valid claim key (e.g., 'repo', 'actor'; alphanumeric/underscores only), to include in the OIDC subject claim (`sub`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Convert an organization member to outside collaborator

**Slug:** `GITHUB_CONVERT_ORG_MEMBER_TO_OUTSIDE_COLLABORATOR`

Converts an existing organization member, who is not an owner, to an outside collaborator, restricting their access to explicitly granted repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |
| `async` | boolean | No | If true, performs the conversion asynchronously (API returns a 202 status when the job is successfully queued). |
| `username` | string | Yes | The GitHub username of the member to convert. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a blob

**Slug:** `GITHUB_CREATE_A_BLOB`

Creates a Git blob in a repository, requiring content and encoding ('utf-8' or 'base64'). Requires write access to the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. The repository must exist and you must have write access to it. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. You must have write access to the repository. |
| `content` | string | Yes | The content to be stored in the new blob. |
| `encoding` | string | No | The encoding for the 'content'; "utf-8" or "base64". |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a check run

**Slug:** `GITHUB_CREATE_A_CHECK_RUN`

Creates a new check run for a specific commit in a repository, used by external services to report status, detailed feedback, annotations, and images directly within the GitHub UI. NOTE: This endpoint requires GitHub App authentication - OAuth tokens and personal access tokens cannot create check runs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the check to be displayed in the GitHub UI. For example, "Code Coverage" or "Linter". |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `status` | string ("queued" | "in_progress" | "completed" | "waiting" | "requested" | "pending") | No | The current status of the check run. Only GitHub Actions can set `status` to `waiting`, `pending`, or `requested`. |
| `actions` | array | No | A list of up to three action objects defining interactive buttons displayed on GitHub after the check run completes. Each object needs a `label` (button text), `identifier` (unique ID for the action), and `description` (tooltip). Clicking a button sends a `check_run.requested_action` webhook to your app. |
| `head_sha` | string | Yes | The SHA of the commit for which the check run is created. |
| `conclusion` | string ("action_required" | "cancelled" | "failure" | "neutral" | "success" | "skipped" | "stale" | "timed_out") | No | **Required if `completed_at` is provided or if `status` is `completed`**. Specifies the final outcome of the check (e.g., 'success', 'failure'). Note: Setting `conclusion` automatically sets `status` to `completed`. GitHub alone can set a conclusion to `stale`. |
| `started_at` | string | No | The ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ) indicating when the check run began. |
| `details_url` | string | No | The URL of the integrator's site providing full details of the check. If omitted, the GitHub App's homepage is used. This URL is available from the check's UI. |
| `external_id` | string | No | A unique identifier for the check run on the integrator's system. This helps in correlating check runs between GitHub and the external system. |
| `completed_at` | string | No | The ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ) indicating when the check run finished. **Required if `status` is `completed`**. |
| `output__text` | string | No | Detailed textual information about the check run's output. Supports Markdown. **Maximum length**: 65,535 characters. |
| `output__title` | string | No | A descriptive title for the output of the check run, displayed in the GitHub UI. For example, 'Linter Scan Summary'. |
| `output__images` | array | No | A list of image objects to display in the check run's output in the GitHub UI. Each object requires `alt` (alternative text), `image_url` (URL of the image), and an optional `caption`. |
| `output__summary` | string | No | A summary of the check run's findings. Supports Markdown. **Maximum length**: 65,535 characters. |
| `output__annotations` | array | No | A list of annotation objects detailing issues at specific code locations. Annotations are visible in the 'Checks' and 'Files changed' tabs of a pull request. Each annotation object should specify `path`, `start_line`, `end_line`, `annotation_level` ('notice', 'warning', or 'failure'), and `message`. Optional fields include `start_column`, `end_column`, `title`, and `raw_details`. Up to 50 annotations per API request; for more, use subsequent 'Update a check run' calls. GitHub Actions limits are 10 warnings and 10 errors per step. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a check suite

**Slug:** `GITHUB_CREATE_A_CHECK_SUITE`

Creates a new check suite for a specific commit (`head_sha`) in an original repository (not a fork). IMPORTANT: This endpoint requires a GitHub App installation access token - OAuth tokens and classic personal access tokens cannot use this endpoint. GitHub dispatches a `check_suite` webhook event with the `requested` action upon success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `head_sha` | string | Yes | SHA of the commit for which to create the check suite, typically the head commit of a branch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a codespace for the authenticated user

**Slug:** `GITHUB_CREATE_A_CODESPACE_FOR_THE_AUTHENTICATED_USER`

Creates a GitHub Codespace for the authenticated user, requiring a JSON request body with either `repository_id` (integer) or a `pull_request` object (containing `pull_request_number` (integer) and `repository_id` (integer)). This action allows users to set up a development environment quickly by creating a codespace from a specified repository or pull request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | Git ref (branch, tag, or commit SHA) to use for the codespace. |
| `pull_request` | object | No |  |
| `repository_id` | integer | No | ID of the repository to create the codespace from. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a codespace from a pull request

**Slug:** `GITHUB_CREATE_A_CODESPACE_FROM_A_PULL_REQUEST`

Creates a GitHub Codespace for an open pull request in a Codespaces-enabled repository, with options to customize its configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `geo` | string ("EuropeWest" | "SoutheastAsia" | "UsEast" | "UsWest") | No | Geographic area for this codespace (e.g., `UsEast`, `EuropeWest`); supersedes `location`. If unspecified, typically IP-derived. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is case-insensitive. |
| `machine` | string | No | Machine type for this codespace (e.g., `standardLinux`). Varies by CPU, RAM, storage. Uses default if unspecified. |
| `location` | string | No | Requested geographic location (e.g., `EastUs`, `WestEurope`). This parameter is deprecated; use `geo`. If unspecified, location may be IP-derived. |
| `client_ip` | string | No | Client's public IP address for location auto-detection if proxied and `geo` or `location` are not specified. |
| `pull_number` | integer | Yes | The unique number identifying the pull request. |
| `display_name` | string | No | Custom name for the codespace. |
| `devcontainer_path` | string | No | Path to a `devcontainer.json` file in the repository that defines the development environment. |
| `working_directory` | string | No | Working directory for the codespace upon opening. Defaults to the repository root if unspecified. |
| `idle_timeout_minutes` | integer | No | Minutes of inactivity after which the codespace is automatically stopped. A default timeout applies if unspecified. |
| `retention_period_minutes` | integer | No | Retention period in minutes (0-43200, i.e., up to 30 days) for a stopped codespace. 0 means immediate deletion. |
| `multi_repo_permissions_opt_out` | boolean | No | Set to `true` to prevent GitHub from requesting additional repository permissions defined in `devcontainer.json`. Defaults to `false` (permissions will be requested). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a codespace in a repository

**Slug:** `GITHUB_CREATE_A_CODESPACE_IN_A_REPOSITORY`

Creates a GitHub Codespace for the authenticated user in a specified repository, which must be accessible and use a valid `devcontainer.json` if `devcontainer_path` is specified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `geo` | string ("EuropeWest" | "SoutheastAsia" | "UsEast" | "UsWest") | No | Geographic area for the codespace, replacing `location`; determined by user IP if not specified. |
| `ref` | string | No | Git reference (e.g., branch name) for the codespace; uses repository's default branch if not provided. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Username or organization name owning the repository; not case-sensitive. |
| `machine` | string | No | Machine type (CPU, RAM, storage). See 'List available machine types for a repository' action for options; uses a default type if not specified. |
| `location` | string | No | Requested AWS region (best-effort, may differ); determined by user IP if not provided. Deprecated: use `geo`. |
| `client_ip` | string | No | IP address to infer preferred region if `location` and `geo` are unspecified; useful for proxied requests. |
| `display_name` | string | No | Custom display name for the codespace; a default name is generated if not provided. |
| `devcontainer_path` | string | No | Path to a `devcontainer.json` in the repository; uses `.devcontainer/devcontainer.json` or `devcontainer.json` at root if not specified. |
| `working_directory` | string | No | Directory to use as default when codespace opens; uses repository root if not specified. |
| `idle_timeout_minutes` | integer | No | Minutes of inactivity before codespace auto-stops; uses a default timeout if not specified. |
| `retention_period_minutes` | integer | No | Minutes an idle (stopped) codespace is retained before auto-deletion (0-43200, i.e., up to 30 days); uses a default period if not specified. |
| `multi_repo_permissions_opt_out` | boolean | No | If `true`, opts out of granting multi-repository permissions from `devcontainer.json`. If unspecified or `false`, permissions are granted if requested. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a commit

**Slug:** `GITHUB_CREATE_A_COMMIT`

Creates a new commit in a GitHub repository; the `tree` SHA and any `parents` SHAs must already exist in the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `tree` | string | Yes | SHA of the tree object for this commit; must exist in the repository. |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `message` | string | Yes | The commit message. |
| `parents` | array | No | SHAs of parent commits; all must exist in the repository. Omit or provide an empty list for a root commit. |
| `signature` | string | No | ASCII-armored detached PGP signature over the commit data. GitHub adds this to the `gpgsig` header if provided. |
| `author__date` | string | No | Timestamp (ISO 8601: `YYYY-MM-DDTHH:MM:SSZ`) when the commit was authored. |
| `author__name` | string | No | Name of the commit's author. Defaults to authenticated user if not provided. |
| `author__email` | string | No | Email of the commit's author. Defaults to authenticated user if not provided. |
| `committer__date` | string | No | Timestamp (ISO 8601: `YYYY-MM-DDTHH:MM:SSZ`) when the commit was committed. Defaults to `author_date` or current time. |
| `committer__name` | string | No | Name of the committer. Defaults to author's name or authenticated user if not provided. |
| `committer__email` | string | No | Email of the committer. Defaults to author's email or authenticated user if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a commit comment

**Slug:** `GITHUB_CREATE_A_COMMIT_COMMENT`

Creates a comment on a specific commit, or on a specific line if `path` and `position` are provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The text content of the comment. |
| `line` | integer | No | **Deprecated:** Use `position` instead. Line number in the file to comment on. `position` takes precedence if both are provided. |
| `path` | string | No | Relative path of the file to comment on. If specified, `position` is also required. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. |
| `owner` | string | Yes | The username or organization name that owns the repository. |
| `position` | integer | No | Line number in the diff's patch to comment on, relative to the commit's changes. Required if `path` is specified. |
| `commit_sha` | string | Yes | The SHA identifier of the commit to comment on. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a commit status

**Slug:** `GITHUB_CREATE_A_COMMIT_STATUS`

Sets a commit's status (e.g., error, failure, pending, success from CI/CD) for a given SHA; max 1000 statuses per SHA/context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | Yes | SHA hash of the commit. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (case-insensitive). |
| `state` | string ("error" | "failure" | "pending" | "success") | Yes | State of the commit status, indicating check outcome or phase. |
| `context` | string | No | Label to differentiate this status from other systems (e.g., 'ci/jenkins'); case-insensitive. |
| `target_url` | string | No | URL linking to the source of the status (e.g., CI build log), displayed in GitHub UI. |
| `description` | string | No | Human-readable description of the status, displayed in GitHub UI. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a custom organization role

**Slug:** `GITHUB_CREATE_A_CUSTOM_ORGANIZATION_ROLE`

Creates a custom role with defined permissions within a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive) where the custom role will be created. |
| `name` | string | Yes | Unique name for the custom role. |
| `description` | string | No | Optional short description of the custom role's purpose or permissions. |
| `permissions` | array | Yes | List of fine-grained permission strings defining actions granted by this role. Use the List Organization Fine-Grained Permissions action to get available permissions for your organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a deploy key

**Slug:** `GITHUB_CREATE_A_DEPLOY_KEY`

Creates a deploy key for a repository; the repository must exist and be accessible, and the provided key must be a valid public SSH key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The full public SSH key. Ensure this is the public key, not the private key. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case sensitive. |
| `title` | string | No | A descriptive name for the new deploy key. If not provided, a default name will be generated. |
| `read_only` | boolean | No | If `true`, the deploy key will only have read access. If `false` (default), the key will have read and write access. Write access grants significant privileges. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a deployment

**Slug:** `GITHUB_CREATE_A_DEPLOYMENT`

Creates a GitHub deployment for an existing repository, targeting a specific ref (branch, tag, or SHA) that must also exist within the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The ref to deploy. This can be a branch name, a tag name, or a commit SHA. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. The repository must exist and the authenticated user must have write access to it. |
| `task` | string | No | Specifies a task to execute, e.g., `deploy` or `deploy:migrations`. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. The repository must exist and the authenticated user must have access to it. |
| `payload` | string | No | A JSON string payload providing additional information that a deployment system might need, customizable based on the deployment process. |
| `auto_merge` | boolean | No | Attempts to automatically merge the default branch into the requested ref if the ref is behind the default branch. Set to `false` to disable. |
| `description` | string | No | A short description of the deployment. Maximum length of 1000 characters. |
| `environment` | string | No | Name for the target deployment environment (e.g., `production`, `staging`, `qa`). |
| `required_contexts` | array | No | A list of status check contexts to verify against commit status checks before creating the deployment. If omitted or `null`, GitHub verifies all unique contexts. Pass an empty list `[]` to bypass all checks. |
| `transient_environment` | boolean | No | Specifies if the given environment is specific to this deployment and will no longer exist at some point in the future (e.g., a staging environment for a pull request). Set to `true` if the environment is temporary. |
| `production_environment` | boolean | No | Specifies if the given environment is one that end-users directly interact with. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a deployment branch policy

**Slug:** `GITHUB_CREATE_A_DEPLOYMENT_BRANCH_POLICY`

Creates a deployment branch or tag policy for an existing environment in a GitHub repository, using a Ruby File.fnmatch pattern (where `*` doesn't match `/`) to specify which branches or tags are deployable.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name pattern for deployable branches/tags (Ruby File.fnmatch syntax; `*` won't match `/`, e.g., `release/*/*` for `release/feature/login`). Refer to [Ruby File.fnmatch documentation](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch). |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case sensitive). |
| `type` | string ("branch" | "tag") | No | Whether the policy targets a Git branch or a tag. |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `environment_name` | string | Yes | Name of the target environment; URL-encode special characters (e.g., `/` as `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a deployment status

**Slug:** `GITHUB_CREATE_A_DEPLOYMENT_STATUS`

Creates a status for an existing deployment, updating its operational state, associated URLs, and description.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string ("error" | "failure" | "inactive" | "in_progress" | "queued" | "pending" | "success") | Yes | State of the status. Setting a transient deployment to `inactive` shows it as `destroyed` in GitHub. |
| `log_url` | string | No | URL for deployment output. Preferred over `target_url`; setting this also sets `target_url` to the same value. |
| `target_url` | string | No | URL for deployment status updates or output. `log_url` is generally preferred. |
| `description` | string | No | Short description of the status (max 140 characters). |
| `environment` | string | No | Name for the target deployment environment (e.g., `production`, `staging`). If unset, uses environment from previous status or deployment. |
| `auto_inactive` | boolean | No | If true, sets prior successful, non-transient, non-production deployments in the same repository and environment to `inactive`. |
| `deployment_id` | integer | Yes | The unique identifier of the deployment for which to create a status. |
| `environment_url` | string | No | URL for accessing the target deployment environment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a discussion

**Slug:** `GITHUB_CREATE_A_DISCUSSION`

Creates a new discussion post on a specific team's page within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (not case-sensitive). |
| `body` | string | Yes | Main content of the discussion post, typically in markdown. |
| `title` | string | Yes | Title of the discussion post. |
| `private` | boolean | No | If `true`, post is private (visible only to team members, org owners, and team maintainers); `false` makes it public to all organization members. |
| `team_slug` | string | Yes | URL-friendly version of the team name (slug). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a discussion comment

**Slug:** `GITHUB_CREATE_A_DISCUSSION_COMMENT`

Creates a new comment on an existing team discussion within a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `body` | string | Yes | The content of the discussion comment. Supports GitHub Flavored Markdown. |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team name. |
| `discussion_number` | integer | Yes | The unique number identifying the discussion within the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a fork

**Slug:** `GITHUB_CREATE_A_FORK`

Creates a fork of an accessible repository, optionally into a specific organization, with a new name, or copying only the default branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The desired name for the newly created fork. If not provided, the new fork will have the same name as the original repository. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case sensitive. |
| `organization` | string | No | The GitHub organization name to fork the repository into. If not specified, the fork will be created in the authenticated user's account. |
| `default_branch_only` | boolean | No | Specifies whether to fork only the default branch of the repository. If `True`, only the default branch is copied. If `False` or not specified, all branches are copied. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a gist

**Slug:** `GITHUB_CREATE_A_GIST`

Creates a new gist on GitHub with provided files, an optional description, and public/secret visibility.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `files` | string | Yes | JSON string representing content for the gist's files. Dictionary where keys are filenames and values are objects, each having a `content` key with the file's raw string data. |
| `public` | boolean | No | Indicates if the gist is public (`true`) or secret (`false`). |
| `description` | string | No | Optional description for the gist. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a gist comment

**Slug:** `GITHUB_CREATE_A_GIST_COMMENT`

Creates a new comment on a specified GitHub gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The text of the comment to be posted on the gist. |
| `gist_id` | string | Yes | The unique identifier of the gist. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a GitHub App from a manifest

**Slug:** `GITHUB_CREATE_A_GITHUB_APP_FROM_A_MANIFEST`

Use this action to complete the GitHub App Manifest flow (step 3 of 3) by exchanging the temporary authorization `code` for the app's full configuration, including credentials and private key. The code is provided via redirect URL after creating the app through GitHub's web interface and must be used within 1 hour.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | The temporary authorization code provided by GitHub during the app manifest flow (received as a query parameter in the redirect URL). This single-use code must be exchanged within 1 hour of generation to retrieve the app's configuration including credentials and private key. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a github pages deployment

**Slug:** `GITHUB_CREATE_A_GITHUB_PAGES_DEPLOYMENT`

Creates a GitHub Pages deployment for a repository using a specified artifact and OIDC token, provided GitHub Pages is enabled and the artifact (containing static assets) is accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive. |
| `oidc_token` | string | Yes | OIDC token from GitHub Actions for deployment authorization, typically from `secrets.GITHUB_TOKEN` with `id-token: write` permission. |
| `artifact_id` | integer | No | Identifier of a GitHub Actions artifact (e.g., .zip or .tar) with static assets for deployment. Artifact must belong to the repository. Either this or `artifact_url` is required. |
| `environment` | string | No | Target environment for this GitHub Pages deployment. Defaults to `github-pages`. |
| `artifact_url` | string | No | URL of a GitHub Actions artifact (e.g., .zip or .tar) with static assets for deployment. Artifact must belong to the repository. Either this or `artifact_id` is required. |
| `pages_build_version` | string | No | Unique string identifying the build version for this deployment, typically the Git commit SHA. Defaults to `GITHUB_SHA`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a github pages site

**Slug:** `GITHUB_CREATE_A_GITHUB_PAGES_SITE`

Configures or updates GitHub Pages for a repository, setting build type and source; ensure a Pages workflow exists for 'workflow' `build_type`, or `source_branch` exists for 'legacy' or unspecified `build_type`. This action allows users to effectively manage their GitHub Pages site settings, specifying how the site is built and where the source files are located.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is case-insensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |
| `build_type` | string ("legacy" | "workflow") | No | Build process for the Pages site: 'legacy' (traditional GitHub Pages build) or 'workflow' (GitHub Actions). If omitted and `source_branch` is provided, defaults to 'legacy'. When 'workflow', `source_branch` and `source_path` are ignored. |
| `source__path` | string ("/" | "/docs") | No | Directory within `source_branch` for site source files (e.g., '/' for root, '/docs'). Ignored if `build_type` is 'workflow'. |
| `source__branch` | string | No | The branch for GitHub Pages source (e.g., 'main', 'gh-pages'). Required if `build_type` is 'legacy' or not specified. It is ignored if `build_type` is 'workflow'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a label

**Slug:** `GITHUB_CREATE_A_LABEL`

Creates a new label in a specified GitHub repository, provided the repository exists and the user has write permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the label. Emoji can be added to label names, using either native emoji or colon-style markup. For example, typing `:strawberry:` will render the emoji ![:strawberry:](https://github.githubassets.com/images/icons/emoji/unicode/1f353.png ":strawberry:"). For a full list of available emoji and codes, see the "[Emoji cheat sheet](https://github.com/ikatyang/emoji-cheat-sheet)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case sensitive. |
| `color` | string | Yes | The hexadecimal color code for the label (e.g., `f29513`), without the leading `#`. Required parameter. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case sensitive. |
| `description` | string | No | A short description of the label. Maximum 100 characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a milestone

**Slug:** `GITHUB_CREATE_A_MILESTONE`

Creates a milestone in a GitHub repository for tracking progress on issues or pull requests; requires repository existence and user write permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the repository owner (case-insensitive). |
| `state` | string ("open" | "closed") | No | State of the milestone. |
| `title` | string | Yes | Title for the new milestone. |
| `due_on` | string | No | Due date for the milestone (ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`). |
| `description` | string | No | Detailed description of the milestone. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an autolink reference for a repository

**Slug:** `GITHUB_CREATE_AN_AUTOLINK_REFERENCE_FOR_A_REPOSITORY`

Creates a repository autolink to automatically convert text references (e.g., 'TICKET-123') into hyperlinks, using a unique `key_prefix` and a `url_template` that includes `<num>`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This can be a username or an organization name. The name is not case-sensitive. |
| `key_prefix` | string | Yes | Prefix that triggers the autolink (e.g., 'JIRA-'). When followed by an identifier, it's converted into a link. Must be non-empty and not contain spaces. |
| `url_template` | string | Yes | URL template for the autolink, using `<num>` as a placeholder for the reference identifier (e.g., 'https://example.atlassian.net/browse/<num>'). Behavior of `<num>` is determined by `is_alphanumeric`. |
| `is_alphanumeric` | boolean | No | Specifies if the `<num>` placeholder in `url_template` matches alphanumeric characters (`A-Z` (case-insensitive), `0-9`, and `-`) or only numeric characters (`0-9`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an environment variable

**Slug:** `GITHUB_CREATE_AN_ENVIRONMENT_VARIABLE`

Creates an encrypted environment variable for a pre-existing environment within a GitHub repository; will fail if the variable name already exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the environment variable to create (e.g., `API_KEY`). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `value` | string | Yes | The value of the environment variable (e.g., `your_secret_token`). This value will be encrypted. |
| `environment_name` | string | Yes | The name of the environment for which to create the variable. The name must be URL encoded if it contains special characters (e.g., slashes `/` must be replaced with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an issue

**Slug:** `GITHUB_CREATE_AN_ISSUE`

Creates a new issue in a GitHub repository, requiring the repository to exist and have issues enabled; specific fields like assignees, milestone, or labels may require push access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The detailed textual contents of the new issue. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (case-insensitive). The repository must exist, be accessible, and have issues enabled. |
| `owner` | string | Yes | The GitHub account owner of the repository (case-insensitive). The repository must exist and be accessible to the authenticated user. |
| `title` | string | Yes | The title for the new issue. |
| `labels` | array | No | Array of label names to associate with this issue (generally case-insensitive). NOTE: Only users with push access can set labels; they are silently dropped otherwise. Pass an empty list to clear all labels. |
| `assignee` | string | No | Login for the user to whom this issue should be assigned. NOTE: Only users with push access can set the assignee; it is silently dropped otherwise. **This field is deprecated in favor of `assignees`.** |
| `assignees` | array | No | GitHub login names for users to assign to this issue. NOTE: Only users with push access can set assignees; they are silently dropped otherwise. |
| `milestone` | string | No | The ID of the milestone to associate this issue with (e.g., "5"). NOTE: Only users with push access can set the milestone; it is silently dropped otherwise. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an issue comment

**Slug:** `GITHUB_CREATE_AN_ISSUE_COMMENT`

Creates a new comment on an existing GitHub issue or pull request within the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | Comment content in GitHub Flavored Markdown. |
| `repo` | string | Yes | Name of the repository (without `.git` extension); not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository (username or organization); not case-sensitive. |
| `issue_number` | integer | Yes | Number identifying the issue or pull request for the comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an organization project

**Slug:** `GITHUB_CREATE_AN_ORGANIZATION_PROJECT`

Creates a new classic project board within a specified GitHub organization. Note: This action uses GitHub's Projects (classic) REST API. The classic projects feature may be disabled in some organizations, and GitHub recommends migrating to Projects V2 (accessible via GraphQL API) for new projects. Requirements: - The authenticated user must be an organization member with project creation permissions - Classic projects must be enabled for the organization - Requires 'repo' and 'admin:org' or 'write:org' scopes

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (not case-sensitive). |
| `body` | string | No | Body or description for the new project. |
| `name` | string | Yes | Name for the new project. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an organization repository

**Slug:** `GITHUB_CREATE_AN_ORGANIZATION_REPOSITORY`

Creates a new repository within a specified GitHub organization, with options for detailed configuration including visibility, features, merge strategies, initial commit, and templates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization where the repository will be created (case-insensitive). |
| `name` | string | Yes | Name of the new repository. |
| `private` | boolean | No | Whether the repository is private. `visibility` takes precedence if both are set. |
| `team_id` | integer | No | ID of the team to grant access to this repository within the organization. |
| `has_wiki` | boolean | No | Enable wiki for this repository. |
| `homepage` | string | No | URL for the repository's homepage. |
| `auto_init` | boolean | No | Create an initial commit with an empty README. |
| `has_issues` | boolean | No | Enable issues for this repository. |
| `visibility` | string ("public" | "private") | No | Repository visibility: 'public' (visible to everyone) or 'private' (visible to collaborators). |
| `description` | string | No | Short description of the repository. |
| `is_template` | boolean | No | Make this repository a template repository. |
| `has_projects` | boolean | No | Enable projects for this repository. Fails if organization has disabled repository projects and this is true. |
| `has_downloads` | boolean | No | Enable downloads for this repository (deprecated). |
| `allow_auto_merge` | boolean | No | Allow auto-merge on pull requests. |
| `license_template` | string | No | License template keyword (e.g., "mit", "apache-2.0"). See [GitHub license documentation](https://docs.github.com/articles/licensing-a-repository/#searching-github-by-license-type) for options. |
| `custom_properties` | string | No | JSON string containing custom properties for the repository as a key-value object. Example: '{"project_lead": "octocat", "status": "alpha"}' |
| `allow_merge_commit` | boolean | No | Allow merging pull requests with a merge commit. |
| `allow_rebase_merge` | boolean | No | Allow rebase-merging pull requests. |
| `allow_squash_merge` | boolean | No | Allow squash-merging pull requests. |
| `gitignore_template` | string | No | Name of the .gitignore template to apply (e.g., "Python", "Node"). Refer to the [GitHub gitignore template list](https://github.com/github/gitignore). |
| `merge_commit_title` | string ("PR_TITLE" | "MERGE_MESSAGE") | No | Default title for merge commits: 'PR_TITLE' or 'MERGE_MESSAGE'. |
| `merge_commit_message` | string ("PR_BODY" | "PR_TITLE" | "BLANK") | No | Default message for merge commits: 'PR_TITLE', 'PR_BODY', or 'BLANK'. |
| `delete_branch_on_merge` | boolean | No | Automatically delete head branches when pull requests are merged. Requires organization owner privileges if true. |
| `squash_merge_commit_title` | string ("PR_TITLE" | "COMMIT_OR_PR_TITLE") | No | Default title for squash merge commits: 'PR_TITLE' or 'COMMIT_OR_PR_TITLE'. |
| `squash_merge_commit_message` | string ("PR_BODY" | "COMMIT_MESSAGES" | "BLANK") | No | Default message for squash merge commits: 'PR_BODY', 'COMMIT_MESSAGES', or 'BLANK'. |
| `use_squash_pr_title_as_default` | boolean | No | DEPRECATED: Use `squash_merge_commit_title`. Default to pull request title for squash-merge commits. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an organization variable

**Slug:** `GITHUB_CREATE_AN_ORGANIZATION_VARIABLE`

Creates a new, uniquely named GitHub Actions variable for an organization, with configurable repository access visibility (all, private, or selected).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `name` | string | Yes | The name of the organization variable. Must be unique at the organization level. |
| `value` | string | Yes | The value of the organization variable. |
| `visibility` | string ("all" | "private" | "selected") | Yes | Controls which repositories in the organization can access the variable. Accepted values are 'all' (all repositories), 'private' (only private repositories), or 'selected' (specific repositories designated by `selected_repository_ids`). |
| `selected_repository_ids` | array | No | A list of repository integer IDs that can access this organization variable. This field is required and only applicable when `visibility` is set to 'selected'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an organization webhook

**Slug:** `GITHUB_CREATE_AN_ORGANIZATION_WEBHOOK`

Creates a webhook for a GitHub organization to deliver event notifications to a configured URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `name` | string | No | The name of the webhook. Must be "web" for organization webhooks. Defaults to "web". |
| `active` | boolean | No | Boolean indicating if the webhook is active. `true` sends notifications, `false` does not. Defaults to `true`. |
| `events` | array | No | List of event names to trigger the webhook. Use `['*']` for all events. Defaults to `['push']` if not specified. See GitHub docs for event types. |
| `config__url` | string | Yes | Required. The target URL for webhook payload delivery. This URL is a mandatory part of the webhook's `config` object and will receive POST requests for subscribed events. |
| `config__secret` | string | No | Optional secret for generating an HMAC hex digest for payload verification (X-Hub-Signature-256 header). If provided, this is used as the key. |
| `config__password` | string | No | Password for basic authentication if the webhook endpoint (`config_url`) requires it, corresponding to `config_username`. |
| `config__username` | string | No | Username for basic authentication if the webhook endpoint (`config_url`) requires it. Use only if your endpoint is protected by basic auth. |
| `config__content__type` | string | No | The media type for serializing webhook payloads. Supported: `json`, `form`. GitHub API defaults to `form` if this field is not set or is `None`. |
| `config__insecure__ssl` | string | No | Controls SSL certificate verification for `config_url`. '1' disables verification (not recommended), '0' enables. GitHub API defaults to '0' (verification enabled) if this field is not set or is `None`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a project card

**Slug:** `GITHUB_CREATE_A_PROJECT_CARD`

Creates a project card in a GitHub project column (classic projects only). DEPRECATION NOTICE: GitHub Projects (classic) was sunset on August 23, 2024. This API only works with existing classic project columns. New classic projects cannot be created. Consider using GitHub Projects V2 (GraphQL API) instead. The request body must contain either: - `note`: A text note for the card - OR `content_id` AND `content_type`: To associate an issue or pull request

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note` | string | No | The text content for the card. Use this to create a note-only card. Either 'note' OR both 'content_id' and 'content_type' must be provided. |
| `column_id` | integer | Yes | The unique identifier of the project column where the card will be created. This value is used as a path parameter in the API request URL (e.g., `/projects/columns/{column_id}/cards`). |
| `content_id` | integer | No | The unique identifier of the issue or pull request to associate with this card. Required when content_type is specified. Get this from the issue/PR details (it's the numeric ID, not the issue number). |
| `content_type` | string ("Issue" | "PullRequest") | No | Type of content to associate with the card. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a project column (Classic - Deprecated)

**Slug:** `GITHUB_CREATE_A_PROJECT_COLUMN`

Creates a new column in a GitHub project (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name for the new project column. |
| `project_id` | integer | Yes | The unique identifier of the target GitHub project (classic) where the new column will be created. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a pull request

**Slug:** `GITHUB_CREATE_A_PULL_REQUEST`

Creates a pull request in a GitHub repository, requiring existing `base` and `head` branches; `title` or `issue` must be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `base` | string | Yes | The name of the branch you want the changes pulled into. This must be an existing branch on the current (target) repository. You cannot submit a pull request to one repository that requests a merge to a base branch of another repository.  |
| `body` | string | No | The detailed description or contents of the pull request. |
| `head` | string | Yes | The name of the branch where your changes are implemented. IMPORTANT: This branch must already exist in the repository (or fork) before calling this action. You must first create the branch and push commits to it (using git or the 'Create a reference' action), then create the PR. For cross-repository pull requests, namespace `head` with the source owner and branch, like `username:branch`. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `draft` | boolean | No | Indicates whether the pull request should be created as a draft. Draft pull requests cannot be merged until marked as ready for review. |
| `issue` | integer | No | The number of an existing issue in the repository to convert into a pull request. If provided, the issue's title and body may be used for the pull request. Required if `title` is not specified. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `title` | string | No | The title of the new pull request. Required unless `issue` is specified. |
| `head_repo` | string | No | The name of the repository (e.g., 'octocat/Hello-World') where the changes in the pull request were made. This field is required for cross-repository pull requests if both the source and target repositories are owned by the same organization but are different repositories. |
| `maintainer_can_modify` | boolean | No | Indicates whether maintainers of the upstream repository can modify the pull request. This is primarily relevant for pull requests originating from forks. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a reference

**Slug:** `GITHUB_CREATE_A_REFERENCE`

Creates a NEW Git reference (branch or tag) in a repository. IMPORTANT: This action ONLY creates NEW references - if the reference already exists, it will fail with a 422 'Reference already exists' error. To update an existing reference, use the 'Update a reference' (GITHUB_UPDATE_A_REFERENCE) action instead. The repository must not be empty prior to this operation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Fully qualified reference to create (e.g., `refs/heads/master`, `refs/tags/v1.0.0`). Must start with `refs/` and contain at least two slashes. |
| `sha` | string | Yes | SHA-1 hash of an existing commit in the repository that the new reference will point to. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a registration token for an organization

**Slug:** `GITHUB_CREATE_A_REGISTRATION_TOKEN_FOR_AN_ORGANIZATION`

Generates a temporary (one-hour) registration token to add a new self-hosted runner to an organization for GitHub Actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a registration token for a repository

**Slug:** `GITHUB_CREATE_A_REGISTRATION_TOKEN_FOR_A_REPOSITORY`

Generates a time-limited token required to register a new self-hosted runner with a specific repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a release

**Slug:** `GITHUB_CREATE_A_RELEASE`

Creates a release in a GitHub repository for a specified tag; the tag must be unique for published releases, and if a `discussion_category_name` is given, it must already exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | A detailed description of the release. Markdown formatting is supported. |
| `name` | string | No | The title of the release. If omitted and `generate_release_notes` is false, it defaults to the `tag_name`. |
| `repo` | string | Yes | The name of the repository, without the .git extension. This field is not case-sensitive. |
| `draft` | boolean | No | Set to `true` to create an unpublished (draft) release. Defaults to `false`. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |
| `tag_name` | string | Yes | The name of the tag for this release. This tag must be unique for published releases. |
| `prerelease` | boolean | No | Set to `true` to identify this release as a pre-release. Defaults to `false`. |
| `make_latest` | string ("true" | "false" | "legacy") | No | Specifies if this release should be marked as the latest for the repository. Draft releases and prereleases cannot be set as 'latest'. |
| `target_commitish` | string | No | Specifies the commitish value (e.g., branch name, tag name, or commit SHA) from which the Git tag is created. Defaults to the repository's default branch if the tag specified in `tag_name` doesn't exist yet. |
| `generate_release_notes` | boolean | No | Set to `true` to automatically generate the release title (`name`) and description (`body`) from the commit history since the last release. Defaults to `false`. |
| `discussion_category_name` | string | No | If specified, a new discussion will be created in this category and linked to the release. The category must already exist in the repository's discussions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a remove token for an organization

**Slug:** `GITHUB_CREATE_A_REMOVE_TOKEN_FOR_AN_ORGANIZATION`

Generates a token, valid for one hour, to authenticate removing a self-hosted runner from an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique identifier or name of the GitHub organization. This name is not case-sensitive. For example, if your organization's URL is github.com/my-org, 'my-org' is the value. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a remove token for a repository

**Slug:** `GITHUB_CREATE_A_REMOVE_TOKEN_FOR_A_REPOSITORY`

Generates a temporary (one-hour validity) token required to unregister and remove a self-hosted runner from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a reply for a review comment

**Slug:** `GITHUB_CREATE_A_REPLY_FOR_A_REVIEW_COMMENT`

Posts a reply to a specific review comment on a GitHub pull request, requiring the repository, pull request, and original comment to exist, and a non-empty reply body.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The text of the reply to the review comment. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the top-level review comment to which the reply is being made. This must be the ID of a top-level review comment, not a reply to that comment. Replies to replies are not supported. |
| `pull_number` | integer | Yes | The number that identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository dispatch event

**Slug:** `GITHUB_CREATE_A_REPOSITORY_DISPATCH_EVENT`

Triggers a GitHub Actions workflow or a webhook on a repository by creating a repository dispatch event, allowing programmatic triggering of workflows based on events outside of GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `event_type` | string | Yes | Custom webhook event name (100 characters or fewer). |
| `client_payload` | string | No | JSON string containing extra information for the webhook event (max 10 top-level properties), passed to the triggered workflow or action. Example: '{"ref": "main", "sha": "abc123"}' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository for the authenticated user

**Slug:** `GITHUB_CREATE_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER`

Creates a new repository for the authenticated user, optionally within an organization if `team_id` is specified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the repository. Must be unique within your account. Will be used in the repository URL (github.com/username/repo-name). Can only contain alphanumeric characters, hyphens, underscores, and periods. |
| `private` | boolean | No | Whether the repository is private (true) or public (false). |
| `team_id` | integer | No | The ID of the team to be granted access. Only valid if creating in an organization. |
| `has_wiki` | boolean | No | Whether the wiki is enabled. |
| `homepage` | string | No | A URL with more information about the repository. |
| `auto_init` | boolean | No | Whether to initialize the repository with a README. |
| `has_issues` | boolean | No | Whether issues are enabled. |
| `description` | string | No | A short description of the repository. |
| `is_template` | boolean | No | Whether this repository is a template repository. |
| `has_projects` | boolean | No | Whether projects are enabled. |
| `has_downloads` | boolean | No | Whether downloads are enabled (deprecated by GitHub and may not be configurable). |
| `has_discussions` | boolean | No | Whether discussions are enabled. |
| `allow_auto_merge` | boolean | No | Whether to allow auto-merge on pull requests. |
| `license_template` | string | No | SPDX license key identifier (lowercase). Examples: 'mit', 'apache-2.0', 'gpl-3.0'. Must be one of the GitHub-supported licenses. |
| `allow_merge_commit` | boolean | No | Whether to allow merging pull requests with a merge commit. |
| `allow_rebase_merge` | boolean | No | Whether to allow rebase-merging pull requests. |
| `allow_squash_merge` | boolean | No | Whether to allow squash-merging pull requests. |
| `gitignore_template` | string | No | Desired .gitignore template (e.g., 'Python', 'Node'). |
| `merge_commit_title` | string ("PR_TITLE" | "MERGE_MESSAGE") | No | The default title for a merge commit. `PR_TITLE` uses the pull request's title. `MERGE_MESSAGE` uses a classic title like 'Merge pull request #123 from branch-name'. Required when `merge_commit_message` is set. Valid combinations: (PR_TITLE, PR_BODY), (PR_TITLE, BLANK), (MERGE_MESSAGE, PR_TITLE). |
| `merge_commit_message` | string ("PR_BODY" | "PR_TITLE" | "BLANK") | No | The default message for a merge commit. `PR_BODY` uses the pull request's body. `PR_TITLE` uses the pull request's title. `BLANK` results in a blank commit message. Valid combinations with merge_commit_title: (PR_TITLE, PR_BODY), (PR_TITLE, BLANK), (MERGE_MESSAGE, PR_TITLE). |
| `delete_branch_on_merge` | boolean | No | Whether to automatically delete head branches when pull requests are merged. |
| `squash_merge_commit_title` | string ("PR_TITLE" | "COMMIT_OR_PR_TITLE") | No | The default title for a squash merge commit. `PR_TITLE` uses the pull request's title. `COMMIT_OR_PR_TITLE` uses the commit's title (if only one commit) or the pull request's title (if multiple commits). |
| `squash_merge_commit_message` | string ("PR_BODY" | "COMMIT_MESSAGES" | "BLANK") | No | The default message for a squash merge commit. `PR_BODY` uses the pull request's body. `COMMIT_MESSAGES` uses the branch's commit messages. `BLANK` results in a blank commit message. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository from an unpublished codespace

**Slug:** `GITHUB_CREATE_A_REPOSITORY_FROM_AN_UNPUBLISHED_CODESPACE`

Publishes the specified codespace to a new repository, using the codespace's current state as the initial commit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The desired name for the new repository to be created from the codespace. If omitted, GitHub might generate a name (e.g., based on the codespace name). |
| `private` | boolean | No | Specifies the visibility of the new repository. Set to `true` for a private repository, or `false` for a public one. Defaults to `false` (public). |
| `codespace_name` | string | Yes | The unique name of the codespace to be published as a new repository. This codespace must exist, be unpublished, and belong to the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository project

**Slug:** `GITHUB_CREATE_A_REPOSITORY_PROJECT`

Creates a new GitHub Projects V2 project board linked to a specified repository. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub. The project is owned by the repository owner (user or organization) and linked to the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | An optional detailed description for the project board. Note: GitHub Projects V2 does not support a body/description field during creation, so this field is accepted but not used. |
| `name` | string | Yes | The name of the project board to be created. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository ruleset

**Slug:** `GITHUB_CREATE_A_REPOSITORY_RULESET`

Creates a uniquely named ruleset for a repository, defining rules for branches or tags with specified enforcement, conditions, and bypass actors.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Unique name for the ruleset. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `rules` | string | No | Array of rule objects as a JSON string to be enforced. Each must have `type` and may have `parameters`. Refer to GitHub API docs for available rule types and parameters. Example: '[{"type": "creation"}, {"type": "deletion"}]' |
| `target` | string ("branch" | "tag") | No | The target of the ruleset, whether it applies to branches or tags. |
| `enforcement` | string ("disabled" | "active" | "evaluate") | Yes | Enforcement level: `disabled` (ruleset is not enforced), `active` (ruleset is enforced), or `evaluate` (test rules before enforcing; GitHub Enterprise only). |
| `bypass_actors` | string | No | Actors that can bypass rules in this ruleset as a JSON string. Each actor object requires `actor_id`, `actor_type` (e.g., 'Team', 'Integration'), and `bypass_mode` (e.g., 'always'). Example: '[{"actor_id": 1, "actor_type": "Team", "bypass_mode": "always"}]' |
| `conditions__ref__name__exclude` | array | No | Ref names or patterns to exclude. Condition fails if any pattern matches the ref name. |
| `conditions__ref__name__include` | array | No | Ref names/patterns to include. Condition passes if one pattern matches the ref name. Use `~DEFAULT_BRANCH` for default branch, `~ALL` for all branches. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository using a template

**Slug:** `GITHUB_CREATE_A_REPOSITORY_USING_A_TEMPLATE`

Creates a new repository from an existing template repository; the authenticated user must have access to the template and, if creating in an organization, repository creation permissions within it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The desired name for the new repository to be created. |
| `owner` | string | No | The username or organization name that will own the new repository. Defaults to the authenticated user if not provided. |
| `private` | boolean | No | Set to `true` to create a private repository, or `false` to create a public repository. |
| `description` | string | No | A brief summary or description for the new repository. |
| `template_repo` | string | Yes | The name of the template repository, without the `.git` extension. This field is not case-sensitive. |
| `template_owner` | string | Yes | The username or organization name that owns the template repository. This field is not case-sensitive. |
| `include_all_branches` | boolean | No | Set to `true` to copy the directory structure and files from all branches of the template repository, not just the default branch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository variable

**Slug:** `GITHUB_CREATE_A_REPOSITORY_VARIABLE`

Creates a new, unencrypted variable in a repository for GitHub Actions workflows; fails if a variable with the same name already exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the variable to create. Variable names are case-sensitive and can only contain alphanumeric characters ([a-z], [A-Z], [0-9]) or underscores (_). They cannot start with the `GITHUB_` prefix, and spaces are not allowed. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case sensitive. |
| `value` | string | Yes | The value of the variable. This will be stored as a string. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a repository webhook

**Slug:** `GITHUB_CREATE_A_REPOSITORY_WEBHOOK`

Creates a webhook for a specified repository; requires admin permissions on the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the webhook. Use `web`. This parameter currently only accepts `web` and defaults to `web` if not provided. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `active` | boolean | No | Determines if notifications are sent when the webhook is triggered. `true` sends notifications (active), `false` disables them (inactive). |
| `events` | array | No | List of events to trigger the webhook (e.g., `['push']`, `['issues']`). See GitHub documentation for 'webhook event payloads'. |
| `config__url` | string | No | The URL to which webhook payloads will be delivered via POST for subscribed events. |
| `config__secret` | string | No | Optional secret string for HMAC hex digest in delivery signature headers, enhancing security. See GitHub's 'delivery signature headers' documentation for details. |
| `config__content__type` | string | No | Media type for serializing payloads: `json` or `form`. Defaults to `form` if not specified. `json` delivers JSON, `form` delivers URL-encoded data. |
| `config__insecure__ssl` | string | No | Determines SSL certificate verification for the payload URL: "0" to verify SSL (recommended), or "1" to skip. Defaults to "0" (verify SSL) if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a review comment for a pull request

**Slug:** `GITHUB_CREATE_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST`

Creates a review comment on a pull request's diff, targeting a specific line, range of lines, an entire file, or replying to an existing comment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | Text content of the review comment. |
| `line` | integer | No | **[LINE-BASED MODE]** Line number in the diff for the comment. Required when using line-based mode (must be used with `side`). For multi-line comments, this is the last line of the range. Do not use with position or in_reply_to parameters. |
| `path` | string | Yes | Relative path of the file for the comment. |
| `repo` | string | Yes | Repository name without the `.git` extension (not case sensitive). |
| `side` | string ("LEFT" | "RIGHT") | No | **[LINE-BASED MODE]** Side of the diff (`LEFT` or `RIGHT`) for the comment. Required when using line-based mode with the `line` parameter. For multi-line comments, refers to the last line of the range. Do not use with position or in_reply_to parameters. **IMPORTANT:** Use `LEFT` only for deletions that appear in red in the diff. Use `RIGHT` for additions (green) or unchanged context lines (white). Attempting to comment on LEFT side lines that are not visible deletions in the diff will result in a 'could not be resolved' error. |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `position` | integer | No | **[DEPRECATED - Use line-based mode instead]** Position in the diff hunk for the comment. When using position mode, do not provide line, side, start_line, start_side, or in_reply_to parameters. |
| `commit_id` | string | Yes | SHA of the commit for the comment. Using an outdated `commit_id` can misplace the comment if lines change. |
| `start_line` | integer | No | **[LINE-BASED MODE - MULTI-LINE]** First line in the diff for a multi-line comment. Required when creating a multi-line comment (must be used with `start_side`, `line`, and `side`). Do not use with position or in_reply_to parameters. |
| `start_side` | string ("LEFT" | "RIGHT" | "side") | No | **[LINE-BASED MODE - MULTI-LINE]** Starting side of the diff (`LEFT` or `RIGHT`) for a multi-line comment. Required when creating a multi-line comment (must be used with `start_line`, `line`, and `side`). Do not use with position or in_reply_to parameters. **IMPORTANT:** Use `LEFT` only for deletions that appear in red in the diff. Use `RIGHT` for additions (green) or unchanged context lines (white). Attempting to use LEFT for lines that are not visible deletions will result in a 'could not be resolved' error. |
| `in_reply_to` | integer | No | **[REPLY MODE]** ID of an existing review comment to reply to. When using reply mode, do not provide position, line, side, start_line, or start_side parameters as they will be ignored. |
| `pull_number` | integer | Yes | Identifier of the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a review for a pull request

**Slug:** `GITHUB_CREATE_A_REVIEW_FOR_A_PULL_REQUEST`

Creates a pull request review, allowing approval, change requests, or comments; `body` is required if `event` is `REQUEST_CHANGES` or `COMMENT`, and omitting `event` makes the review `PENDING`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Review's main body text; required if `event` is `REQUEST_CHANGES` or `COMMENT`. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `event` | string ("APPROVE" | "REQUEST_CHANGES" | "COMMENT") | No | Review action type (`APPROVE`, `REQUEST_CHANGES`, `COMMENT`); if omitted, review is `PENDING` and requires later submission. |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `comments` | array | No | Inline draft review comments. Each object requires `path` (relative file path) and `body` (comment text). Optionally, specify `line` (or `start_line` for multi-line), and `side` (or `start_side`) for diff location. `position` is deprecated; use `line`. Example: `[{'path': 'file.py', 'line': 10, 'body': 'Refactor this.'}]` |
| `commit_id` | string | No | SHA of the commit to review; defaults to the latest pull request commit. Outdated SHAs may lead to stale comments. |
| `pull_number` | integer | Yes | Identifying number of the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a scoped access token

**Slug:** `GITHUB_CREATE_A_SCOPED_ACCESS_TOKEN`

Exchanges a user-to-server token for a new, fine-grained scoped access token for a GitHub App, requiring `client_id`, `access_token`, either `target` or `target_id`, and at least one permission; for repository-specific scoping, provide either `repositories` (names) or `repository_ids` (IDs), but not both.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `target` | string | No | Username or organization name for scoping the new token. Required if `target_id` is not provided. |
| `client_id` | string | Yes | Client ID of the GitHub App. |
| `target_id` | integer | No | ID of the user or organization for scoping the new token. Required if `target` is not provided. |
| `access_token` | string | Yes | User-to-server access token to be exchanged for a new scoped token. |
| `repositories` | array | No | Repository names to scope the new token to. Cannot be used if `repository_ids` is specified. |
| `repository_ids` | array | No | Repository IDs to scope the new token to. Cannot be used if `repositories` is specified. |
| `permissions__pages` | string ("read" | "write") | No | Permission for GitHub Pages settings, statuses, configurations, builds, and creating new builds. Applies to target repositories. |
| `permissions__checks` | string ("read" | "write") | No | Permission for checks on code (e.g., CI statuses). Applies to target repositories. |
| `permissions__issues` | string ("read" | "write") | No | Permission for issues, comments, assignees, labels, and milestones. Applies to target repositories. |
| `permissions__actions` | string ("read" | "write") | No | Permission for GitHub Actions workflows, workflow runs, and artifacts. Applies to target repositories. |
| `permissions__members` | string ("read" | "write") | No | Permission for organization members and teams. Applies to target organization. |
| `permissions__profile` | string ("write") | No | Permission to manage profile settings for the user account. Applies to target user. |
| `permissions__secrets` | string ("read" | "write") | No | Permission for repository secrets (e.g., Actions secrets). Applies to target repositories. |
| `permissions__contents` | string ("read" | "write") | No | Permission for repository contents, commits, branches, downloads, releases, and merges. Applies to target repositories. |
| `permissions__metadata` | string ("read" | "write") | No | Read-only permission for repository metadata, search, and collaborator listing. Applies to target repositories. |
| `permissions__packages` | string ("read" | "write") | No | Permission for packages in GitHub Packages. Applies to target repositories or organization. |
| `permissions__starring` | string ("read" | "write") | No | Permission to list and manage repositories a user is starring. Applies to target user. |
| `permissions__statuses` | string ("read" | "write") | No | Permission for commit statuses. Applies to target repositories. |
| `permissions__followers` | string ("read" | "write") | No | Permission to manage followers for the user account. Applies to target user. |
| `permissions__gpg__keys` | string ("read" | "write") | No | Permission to view and manage GPG keys for the user account. Applies to target user. |
| `permissions__workflows` | string ("write") | No | Permission for updating GitHub Actions workflow files. Requires `contents: write`. Applies to target repositories. |
| `permissions__codespaces` | string ("read" | "write") | No | Permission for Codespaces. Applies to target user/organization if repositories are not specified, otherwise to target repositories. |
| `permissions__deployments` | string ("read" | "write") | No | Permission for deployments and deployment statuses. Applies to target repositories. |
| `permissions__environments` | string ("read" | "write") | No | Permission for repository environments. Applies to target repositories. |
| `permissions__single__file` | string ("read" | "write") | No | Permission to access specific files in targeted repositories. The file paths must be configured in the GitHub App settings. |
| `permissions__administration` | string ("read" | "write") | No | Permission for repository administration (settings, teams, collaborators). Applies to target repositories. |
| `permissions__git__ssh__keys` | string ("read" | "write") | No | Permission to manage Git SSH keys for the user account. Applies to target user. |
| `permissions__pull__requests` | string ("read" | "write") | No | Permission for pull requests, comments, assignees, labels, milestones, and merges. Applies to target repositories. |
| `permissions__email__addresses` | string ("read" | "write") | No | Permission to manage email addresses for the user account. Applies to target user. |
| `permissions__security__events` | string ("read" | "write") | No | Permission for security events (e.g., code scanning alerts). Applies to target repositories. |
| `permissions__repository__hooks` | string ("read" | "write") | No | Permission for repository webhooks. Applies to target repositories. |
| `permissions__team__discussions` | string ("read" | "write") | No | Permission for team discussions and related comments. Applies to target organization. |
| `permissions__organization__plan` | string ("read") | No | Read-only permission for viewing an organization's billing plan. Applies to target organization. |
| `permissions__dependabot__secrets` | string ("read" | "write") | No | Permission for Dependabot secrets for targeted repositories. |
| `permissions__interaction__limits` | string ("read" | "write") | No | Permission to view and manage interaction limits on a repository. Applies to target repositories or organization. |
| `permissions__organization__hooks` | string ("read" | "write") | No | Permission for organization webhooks. Applies to target organization. |
| `permissions__organization__events` | string ("read") | No | Read-only permission to view organization audit log events. Applies to target organization. |
| `permissions__repository__projects` | string ("read" | "write" | "admin") | No | Permission for repository projects, columns, and cards. Applies to target repositories. |
| `permissions__organization__secrets` | string ("read" | "write") | No | Permission for organization-level secrets (e.g., Actions secrets). Applies to target organization. |
| `permissions__vulnerability__alerts` | string ("read" | "write") | No | Permission for Dependabot alerts. Applies to target repositories. |
| `permissions__organization__packages` | string ("read" | "write") | No | Permission for organization-level GitHub Packages. Applies to target organization. |
| `permissions__organization__projects` | string ("read" | "write" | "admin") | No | Permission for organization projects and projects beta (if available). Applies to target organization. |
| `permissions__secret__scanning__alerts` | string ("read" | "write") | No | Permission for secret scanning alerts. Applies to target repositories. |
| `permissions__organization__custom__roles` | string ("read" | "write") | No | Permission for custom repository roles within an organization. Applies to target organization. |
| `permissions__organization__administration` | string ("read" | "write") | No | Permission for administrative settings of an organization. Applies to target organization. |
| `permissions__organization__user__blocking` | string ("read" | "write") | No | Permission for viewing and managing users blocked by the organization. Applies to target organization. |
| `permissions__repository__custom__properties` | string ("read" | "write") | No | Permission to view and edit repository custom properties, if allowed by property definition. Applies to target repositories. |
| `permissions__organization__custom__org__roles` | string ("read" | "write") | No | Permission for custom organization roles. Applies to target organization. |
| `permissions__organization__custom__properties` | string ("read" | "write" | "admin") | No | Permission for custom properties for an organization. Applies to target organization. |
| `permissions__organization__announcement__banners` | string ("read" | "write") | No | Permission to view and manage organization announcement banners. Applies to target organization. |
| `permissions__organization__self__hosted__runners` | string ("read" | "write") | No | Permission for GitHub Actions self-hosted runners for an organization. Applies to target organization. |
| `permissions__organization__personal__access__tokens` | string ("read" | "write") | No | Permission for fine-grained personal access tokens requested by organization members. Applies to target organization. |
| `permissions__organization__copilot__seat__management` | string ("write") | No | Permission for GitHub Copilot seat assignments for organization members (beta). Applies to target organization. |
| `permissions__organization__personal__access__token__requests` | string ("read" | "write") | No | Permission for requests for fine-grained personal access tokens within an organization. Applies to target organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a dependency snapshot

**Slug:** `GITHUB_CREATE_A_SNAPSHOT_OF_DEPENDENCIES_FOR_A_REPOSITORY`

Creates a snapshot of a repository's dependencies to populate the GitHub dependency graph and enable security alerts; `sha` must be a 40-character commit ID, `ref` a fully qualified Git reference (e.g., `refs/heads/main`), and `scanned` an ISO 8601 timestamp.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Git reference (fully qualified, e.g., `refs/heads/main`) of the repository branch/tag that triggered this snapshot. |
| `sha` | string | Yes | Commit SHA (maximum 40 characters) associated with this dependency snapshot. |
| `repo` | string | Yes | Repository name, without `.git` extension (name is not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (name is not case-sensitive). |
| `job__id` | string | No | Optional external ID of the job that generated this snapshot. |
| `scanned` | string | Yes | UTC timestamp (ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ) when the snapshot was taken. |
| `version` | integer | Yes | Version of the dependency snapshot submission, typically of the manifest or lock file format. |
| `metadata` | string | No | Optional user-defined metadata as a JSON string for domain-specific information. Limited to 8 keys with scalar values (e.g., string, number, boolean). Example: '{"key1": "value1", "key2": 123}' |
| `manifests` | string | No | Optional collection of package manifests as a JSON string (e.g., package-lock.json, pom.xml). Keys are manifest file names; values detail dependencies. Example: '{"package-lock.json": {"name": "...", "resolved": {...}}}' |
| `detector__url` | string | No | Optional URL of the detector tool used. |
| `detector__name` | string | No | Optional name of the tool used to detect dependencies. |
| `job__html__url` | string | No | Optional URL for the job that generated this snapshot. |
| `job__correlator` | string | No | Optional string to group snapshots. For a given `job.correlator` and `detector.name`, only the 'latest' snapshot is current. Useful to distinguish detection runs (e.g., concatenating GITHUB_WORKFLOW and GITHUB_JOB). |
| `detector__version` | string | No | Optional version of the detector tool used. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a tag object

**Slug:** `GITHUB_CREATE_A_TAG_OBJECT`

Creates an annotated Git tag object in a repository, pointing to an existing Git object (commit, tree, or blob) defined by its SHA and ensuring the `type` field correctly specifies the object's type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tag` | string | Yes | The name of the tag, typically a version identifier (e.g., "v0.0.1"). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `type` | string ("commit" | "tree" | "blob") | Yes | The type of the Git object being tagged. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `object` | string | Yes | The SHA of the Git object (commit, tree, or blob) that this tag is pointing to. |
| `message` | string | Yes | The message associated with the tag. |
| `tagger__date` | string | No | The timestamp for when this object was tagged. This should be in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. |
| `tagger__name` | string | No | The name of the person creating the tag. |
| `tagger__email` | string | No | The email address of the person creating the tag. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a tag protection state for a repository

**Slug:** `GITHUB_CREATE_A_TAG_PROTECTION_STATE_FOR_A_REPOSITORY`

DEPRECATED: This API was sunset on August 30, 2024. Use GITHUB_CREATE_A_REPOSITORY_RULESET instead to create tag protection rules via repository rulesets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. Not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Not case sensitive. |
| `pattern` | string | Yes | Glob pattern to protect tags. Examples: `v1.*` (protects tags starting with `v1.`), `*` (protects all tags). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a team

**Slug:** `GITHUB_CREATE_A_TEAM`

Creates a new team in an organization, optionally with maintainers, repositories, specific privacy, notification settings, or a parent team; if `parent_team_id` is given, `privacy` must be 'closed'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name where the team will be created (not case-sensitive). |
| `name` | string | Yes | Name of the new team. |
| `privacy` | string ("secret" | "closed") | No | Team privacy: 'secret' (visible to owners and members) or 'closed' (visible to all org members). Defaults to 'secret' for non-nested teams; must be 'closed' if `parent_team_id` is set. |
| `permission` | string ("pull" | "push") | No | **Deprecated**. Default repository permission ('pull' for read access, 'push' for write access) for the team. |
| `repo_names` | array | No | Repository full names (e.g., "org-name/repo-name") for team access; repositories must exist and be accessible to the organization. |
| `description` | string | No | Team's purpose or focus. |
| `maintainers` | array | No | GitHub user handles of organization members to be team maintainers; users must be organization members. |
| `parent_team_id` | integer | No | ID of an existing team to be the parent, creating a nested team. If provided, new team `privacy` must be 'closed'. |
| `notification_setting` | string ("notifications_enabled" | "notifications_disabled") | No | Notification settings for @mentions: 'notifications_enabled' (members notified) or 'notifications_disabled' (no one notified). Default: 'notifications_enabled'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a temporary private fork

**Slug:** `GITHUB_CREATE_A_TEMPORARY_PRIVATE_FORK`

Creates a temporary private fork of the specified repository to address a security vulnerability, linking the fork to a GHSA ID that must be specifically associated with this repository; the fork may take up to 5 minutes to become accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner (username or organization) of the repository; not case-sensitive. |
| `ghsa_id` | string | Yes | Identifier for the GitHub Security Advisory (e.g., GHSA-rfv9-x7w6-39px) that the fork will address. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a tree

**Slug:** `GITHUB_CREATE_A_TREE`

Creates a new Git tree object in a repository, defining file/directory structure by specifying tree entries, optionally building on a `base_tree` SHA; all provided SHAs must be valid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `tree` | array | Yes | Array of objects defining the tree structure. Each object (node) requires `path` (string), `mode` (string; e.g., '100644' file, '100755' executable, '040000' subdirectory/tree, '160000' submodule, '120000' symlink), and `type` (string: 'blob', 'tree', or 'commit'). For new/updated blobs, provide `content` (UTF-8 string). For existing objects or `tree`/`commit` types, provide `sha` (string). To delete, specify `path`, `mode`, `type`, and set `sha` to `null`. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `base_tree` | string | No | SHA1 of an existing Git tree object to use as a base. If provided, its entries are combined with `tree` entries, where `tree` entries overwrite those from `base_tree` with the same path. Typically the SHA1 of the latest commit's tree for new branch changes. If omitted, the new tree is built from `tree` entries; files from the parent commit's tree not in `tree` are treated as deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a user project

**Slug:** `GITHUB_CREATE_A_USER_PROJECT`

Creates a new GitHub Projects V2 project board for the authenticated user to organize and track issues, pull requests, and notes. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Optional description for the new project. Note: GitHub Projects V2 does not support a body/description field during creation, so this field is accepted but not used. |
| `name` | string | Yes | Name/title for the new project. This will be displayed as the project board title. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a workflow dispatch event

**Slug:** `GITHUB_CREATE_A_WORKFLOW_DISPATCH_EVENT`

Manually triggers a GitHub Actions workflow identified by `workflow_id` at a given `ref`, if the workflow is configured to accept `workflow_dispatch` events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Git reference (branch or tag) for the workflow. |
| `repo` | string | Yes | Repository name, excluding the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Owner of the repository (username or organization, case-insensitive). |
| `inputs` | string | No | JSON string containing key-value inputs for the workflow, matching `on.workflow_dispatch.inputs` definitions (max 10); uses workflow defaults if omitted. Example: '{"actor": "mona", "environment": "production"}' |
| `workflow_id` | string | Yes | Identifier of the workflow: numeric ID or just the filename (e.g., 'main.yml'). If a full path like '.github/workflows/main.yml' is provided, the prefix is automatically stripped. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create commit signature protection

**Slug:** `GITHUB_CREATE_COMMIT_SIGNATURE_PROTECTION`

Enables commit signature protection for a specified branch, requiring all new commits to be signed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `branch` | string | Yes | The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a custom deployment protection rule on an environment

**Slug:** `GITHUB_CREATE_DEPLOYMENT_PROTECTION_RULE`

Enables a custom deployment protection rule for an existing environment in a repository by linking a configured GitHub App (via `integration_id`) to control deployments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository where the environment exists. Do not include the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The GitHub username or organization name that owns the repository. This name is not case sensitive. |
| `integration_id` | integer | No | The unique identifier of the GitHub App that provides the custom deployment protection rule. This app must be installed and configured for the repository. Required - use GITHUB_LIST_ENVIRONMENT_CUSTOM_DEPLOYMENT_RULES to find available integration IDs for your environment. |
| `environment_name` | string | Yes | The name of the environment to which the protection rule will be applied. This name must be URL-encoded if it contains special characters (e.g., slashes `/` should be replaced with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create draft item for user project

**Slug:** `GITHUB_CREATE_DRAFT_ITEM_FOR_USER_PROJECT`

Creates a draft issue item in a user-owned GitHub ProjectsV2. Use when you need to add a new draft item to track ideas or tasks in a user's project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The body content of the draft issue item to create in the project. |
| `title` | string | Yes | The title of the draft issue item to create in the project. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create inference chat completions

**Slug:** `GITHUB_CREATE_INFERENCE_CHAT_COMPLETIONS`

Tool to create chat completions using GitHub Models inference API. Use when you need to generate AI-powered text responses using models like GPT-4, Claude, or Llama through GitHub's inference endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `seed` | integer | No | If specified, the system will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result. |
| `stop` | array | No | Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence. |
| `model` | string | Yes | ID of the specific model to use for the request. Format: {publisher}/{model_name}, e.g., openai/gpt-4o, anthropic/claude-3.5-sonnet. |
| `tools` | array | No | A list of tools (functions) the model may call. The model will choose when and how to call these functions based on the conversation context. |
| `top_p` | number | No | An alternative to temperature called nucleus sampling. Range: [0.0, 1.0]. The model considers tokens with top_p probability mass. |
| `stream` | boolean | No | If true, partial message deltas will be sent as data-only server-sent events as they become available. |
| `messages` | array | Yes | The collection of context messages associated with this chat completion request. Each message must have a role (assistant, developer, system, or user) and content. |
| `max_tokens` | integer | No | Maximum number of tokens to generate in the completion. The total length of input tokens and generated tokens is limited by the model's context length. |
| `modalities` | array | No | List of supported modalities for this request. Supported values: text, audio. |
| `temperature` | number | No | Controls the apparent creativity of generated completions. Range: [0.0, 1.0]. Lower values make output more deterministic, higher values more random. |
| `tool_choice` | string ("auto" | "required" | "none") | No | Controls which (if any) tool is called by the model. |
| `stream_options` | object | No | Options for streaming responses. |
| `response_format` | object | No | Specifies the format of the model's output. |
| `presence_penalty` | number | No | Influences probability of generated tokens appearing based on whether they appear in the text so far. Range: [-2.0, 2.0]. Positive values increase likelihood of new topics. |
| `frequency_penalty` | number | No | Influences probability of generated tokens appearing based on their cumulative frequency in the text so far. Range: [-2.0, 2.0]. Positive values decrease likelihood of repetition. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create inference embeddings

**Slug:** `GITHUB_CREATE_INFERENCE_EMBEDDINGS`

Tool to create inference embeddings using GitHub's AI models. Use when you need to convert text into vector representations for similarity search, clustering, or other ML tasks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | string | No | A unique identifier representing your end-user, which can help monitor and detect abuse. |
| `input` | string | Yes | Input text to embed, encoded as a string or array of strings. Each string will be converted to an embedding vector. |
| `model` | string | Yes | ID of the specific model to use for the request. Format: {publisher}/{model_name} |
| `dimensions` | integer | No | The number of dimensions the resulting output embeddings should have. Must be supported by the model (max 2048). |
| `encoding_format` | string | No | Format for embeddings: 'float' (default) or 'base64'. Float returns arrays of numbers, base64 returns encoded strings. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create issue type

**Slug:** `GITHUB_CREATE_ISSUE_TYPE`

Create a new issue type for a GitHub organization. Requires the authenticated user to be an organization administrator. OAuth tokens need admin:org scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |
| `name` | string | Yes | The name of the issue type. |
| `color` | string ("gray" | "blue" | "green" | "yellow" | "orange" | "red" | "pink" | "purple") | No | The color of the issue type. |
| `is_enabled` | boolean | Yes | Whether the issue type is enabled at the organization level. |
| `description` | string | No | A short description of the issue type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create JIT runner config for repo

**Slug:** `GITHUB_CREATE_JIT_RUNNER_CONFIG`

Generates a temporary Just-In-Time (JIT) configuration for a new self-hosted GitHub Actions runner for a repository; any specified non-default `runner_group_id` must be an existing runner group accessible by the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The desired name for the new self-hosted runner. |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `labels` | array | Yes | A list of custom labels to assign to the runner. These labels help in targeting specific runners for jobs. Minimum items: 1. Maximum items: 100. |
| `work_folder` | string | No | The working directory for the runner, relative to its installation path. This is where job execution will take place. |
| `runner_group_id` | integer | Yes | The unique identifier of the runner group to which the new runner will be assigned. Use 0 for the default group or the ID of a specific runner group. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update an environment

**Slug:** `GITHUB_CREATE_OR_UPDATE_AN_ENVIRONMENT`

Creates a new environment or updates an existing one in a GitHub repository, allowing configuration of deployment protection rules such as wait timers and reviewers; ensure `environment_name` is URL-encoded if it contains special characters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The username or organization name of the repository owner (not case-sensitive). |
| `reviewers` | string | No | JSON string containing up to 6 users or teams allowed to review deployments. Reviewers need at least read access; one approval suffices. Each reviewer object requires `id` and `type` ('User' or 'Team'). Example: '[{"id": 4532, "type": "User"}]' |
| `wait_timer` | integer | No | Time in minutes to delay a job after it's triggered (0-43,200, i.e., up to 30 days). |
| `environment_name` | string | Yes | Name of the environment. URL-encode if it contains special characters (e.g., '/' becomes '%2F'). |
| `prevent_self_review` | boolean | No | If true, prevents the user who triggered deployment from approving their own job. |
| `deployment__branch__policy__protected__branches` | boolean | No | If true, only branches with existing protection rules can deploy; `deployment_branch_policy_custom_branch_policies` must then be false. |
| `deployment__branch__policy__custom__branch__policies` | boolean | No | If true, deployment is restricted to branches matching custom name patterns; `deployment_branch_policy_protected_branches` must then be false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update an environment secret

**Slug:** `GITHUB_CREATE_OR_UPDATE_AN_ENVIRONMENT_SECRET`

Creates or updates an environment secret with an `encrypted_value` that was encrypted using the public key identified by `key_id` for the specified environment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository. Not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. Not case-sensitive. |
| `key_id` | string | Yes | ID of the public key used for encryption, obtained from the 'Get an environment public key' GitHub API endpoint. |
| `secret_name` | string | Yes | Name of the secret. Case-sensitive. |
| `encrypted_value` | string | Yes | Value of the secret, encrypted with LibSodium using the public key obtained from the 'Get an environment public key' GitHub API endpoint for the target environment. |
| `environment_name` | string | Yes | Name of the environment. Case-sensitive; URL-encode special characters (e.g., `/` becomes `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update an organization secret

**Slug:** `GITHUB_CREATE_OR_UPDATE_AN_ORGANIZATION_SECRET`

Creates or updates an organization secret for GitHub Actions, requiring its value to be pre-encrypted via LibSodium using the organization's public key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `key_id` | string | Yes | ID of the public key (from 'Get an organization public key' endpoint) used for encryption. This is required for both creating and updating secrets. |
| `visibility` | string ("all" | "private" | "selected") | Yes | Controls which repositories can access the secret. If 'selected', `selected_repository_ids` must be provided. |
| `secret_name` | string | Yes | The name of the secret. |
| `encrypted_value` | string | Yes | Value for the secret, pre-encrypted using LibSodium with the organization's public key (obtained from 'Get an organization public key' endpoint). This is required for both creating and updating secrets. |
| `selected_repository_ids` | array | No | List of repository IDs that can access this secret. Required and only applicable when `visibility` is 'selected'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update a repository secret

**Slug:** `GITHUB_CREATE_OR_UPDATE_A_REPOSITORY_SECRET`

Creates or updates a GitHub Actions secret within a specific repository; use `encrypted_value` and `key_id` to set or change its value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | The repository owner's username or organization name (case-insensitive). |
| `key_id` | string | No | ID of the public key used to encrypt `encrypted_value` (obtained with the public key). Required if `encrypted_value` is provided. |
| `secret_name` | string | Yes | The name for the secret being created or updated. Must not start with 'GITHUB_' prefix (reserved for GitHub internal secrets). |
| `encrypted_value` | string | No | Value for the secret, pre-encrypted with the repository's public key using LibSodium (public key is obtained via 'Get a repository public key' endpoint). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update a secret for the authenticated user

**Slug:** `GITHUB_CREATE_OR_UPDATE_A_SECRET_FOR_THE_AUTHENTICATED_USER`

Creates or updates a Codespaces secret for the authenticated user; `encrypted_value` must be encrypted with the public key (ID: `key_id`) from GitHub's 'Get public key for the authenticated user' endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key_id` | string | No | ID of the public key (from GitHub's 'Get public key for the authenticated user' endpoint) used to encrypt `encrypted_value`. If not provided, it will be fetched automatically. |
| `secret_name` | string | Yes | The name of the secret. This name must be unique among the user's Codespaces secrets. |
| `secret_value` | string | No | The plaintext value for your secret. This will be automatically encrypted using the user's Codespaces public key before being sent to GitHub. If you already have an encrypted value, use the encrypted_value parameter instead. |
| `encrypted_value` | string | No | Secret's value, encrypted using [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages) with the public key (see `key_id`) obtained from GitHub's 'Get public key for the authenticated user' endpoint. |
| `selected_repository_ids` | array | No | Repository IDs that can access this secret. If omitted or empty, accessible to all user's Codespaces-enabled repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update custom properties for an organization

**Slug:** `GITHUB_CREATE_OR_UPDATE_CUSTOM_PROPERTIES_FOR_AN_ORG`

Creates new custom property schemas or updates existing ones in bulk for a specified organization; each property definition must include `property_name` and `value_type`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The case-insensitive organization name. |
| `properties` | string | Yes | Definitions for custom properties as a JSON string. Each must include a unique `property_name` (max 75 chars, no spaces) and `value_type`. Optional: `description`, `required`, `default_value`, `allowed_values` (for 'single_select' type). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update a custom property for an organization

**Slug:** `GITHUB_CREATE_OR_UPDATE_CUSTOM_PROPERTY_ORG`

Creates a new custom property (name must be unique for creation) or updates an existing one for an organization to define metadata for its repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's unique identifier (case-insensitive). |
| `required` | boolean | No | If true, property must be set for all repositories and `default_value` is mandatory. |
| `value_type` | string ("string" | "single_select" | "multi_select" | "true_false" | "url") | Yes | Data type of the custom property. Can be 'string' (free text), 'single_select' (single choice from list), 'multi_select' (multiple choices from list), 'true_false' (boolean), or 'url' (URL format). |
| `description` | string | No | Explanation of the custom property's purpose. |
| `default_value` | string | No | Default value if property isn't set. For `single_select` type, must be one of `allowed_values`. Can be a string for single values or an array for multi_select. |
| `allowed_values` | array | No | Ordered list of allowed values (up to 200). Required and non-empty if `value_type` is `single_select` or `multi_select`. |
| `values_editable_by` | string ("org_actors" | "org_and_repo_actors") | No | Who can edit the values of the property. Can be 'org_actors' (organization actors only) or 'org_and_repo_actors' (organization and repository actors). |
| `custom_property_name` | string | Yes | Name of the custom property (case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update file contents

**Slug:** `GITHUB_CREATE_OR_UPDATE_FILE_CONTENTS`

Creates a new file or updates an existing file in a GitHub repository; SHA can be provided to validate file updates, automatically fetched if not provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | No | The blob SHA of the file being replaced. Automatically fetched if not provided. If a 409 conflict occurs (SHA mismatch due to concurrent modifications), the action will automatically retry up to 5 times with exponential backoff and jitter. |
| `path` | string | Yes | The full path to the file in the repository, including the filename and extension. Do not include leading slashes. |
| `repo` | string | Yes | The name of the repository (not case sensitive, without the `.git` extension). |
| `owner` | string | Yes | The account owner of the repository (not case sensitive). |
| `branch` | string | No | The branch name. Defaults to the repository's default branch if omitted. If a non-existent branch is specified, the action will automatically fall back to the repository's default branch. For empty repositories, omitting this parameter is recommended to let GitHub initialize with the repository's configured default branch. |
| `content` | string | Yes | The new file content. Can be provided as plain text (will be automatically encoded to Base64) or as Base64-encoded text. GitHub API requires Base64 encoding, which this action handles automatically. |
| `message` | string | Yes | The commit message for this file creation or update. |
| `author__date` | string | No | Author's timestamp (ISO 8601 format). Defaults to committer's date if author details are provided but date is not. |
| `author__name` | string | No | Author's name. If specified, `author_email` is also required. Defaults to committer details; if all committer/author details omitted, GitHub uses authenticated user. |
| `author__email` | string | No | Author's email. If specified, `author_name` is also required. Defaults to committer details; if all committer/author details omitted, GitHub uses authenticated user. |
| `committer__date` | string | No | Committer's commit timestamp (ISO 8601 format). Defaults to current time if committer details are provided but date is not. |
| `committer__name` | string | No | Committer's name. If specified, `committer_email` is also required. GitHub uses authenticated user if all committer/author details omitted. |
| `committer__email` | string | No | Committer's email. If specified, `committer_name` is also required. GitHub uses authenticated user if all committer/author details omitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update GitHub Pages Site

**Slug:** `GITHUB_CREATE_OR_UPDATE_GITHUB_PAGES_SITE`

Tool to enable or update GitHub Pages configuration for a repository. Use when setting up GitHub Pages for static site deployment or modifying Pages settings like custom domains and HTTPS enforcement.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the .git extension. Not case-sensitive. |
| `cname` | string | No | Custom domain for the Pages site (e.g., 'example.com'). Set to null to remove custom domain. Only used during updates. |
| `owner` | string | Yes | The account owner of the repository (username or organization). Not case-sensitive. |
| `build_type` | string ("legacy" | "workflow") | No | Build process type: 'legacy' for traditional GitHub Pages build from a branch, 'workflow' for GitHub Actions. When 'workflow', source_branch and source_path are ignored. |
| `source_path` | string ("/" | "/docs") | No | The directory path within source_branch containing the site files: '/' for root or '/docs' for docs folder. Ignored if build_type is 'workflow'. |
| `source_branch` | string | No | The repository branch to use for GitHub Pages source (e.g., 'main', 'gh-pages'). Required if build_type is 'legacy'. Ignored if build_type is 'workflow'. |
| `https_enforced` | boolean | No | Whether to enforce HTTPS for the Pages site. Only used during updates. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update repo secret with encrypted value

**Slug:** `GITHUB_CREATE_OR_UPDATE_REPO_SECRET_WITH_ENCRYPTED_VALUE`

Creates or updates a Dependabot secret in a repository using an `encrypted_value` (pre-encrypted with LibSodium using the repository's Dependabot public key) and its corresponding `key_id`. This action allows you to securely manage secrets for a given repository, ensuring that sensitive data remains protected during the update process. By providing the encrypted value alongside the key ID, you can seamlessly maintain the necessary credentials for your repository's operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case-sensitive. |
| `key_id` | string | No | The ID of the public key that was used to encrypt the secret value. This ID is retrieved from GitHub along with the public key via the 'Get a repository public key' endpoint for Dependabot secrets. If not provided or if an outdated key_id is used, the action will automatically fetch the latest public key from GitHub and retry with the current key_id. |
| `secret_name` | string | Yes | The name of the Dependabot secret to create or update. |
| `encrypted_value` | string | No | Value for your secret. This value must be encrypted with LibSodium, using the public key retrieved from the GitHub API's 'Get a repository public key' endpoint for Dependabot secrets. The resulting encrypted string is typically Base64 encoded. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for a commit comment

**Slug:** `GITHUB_CREATE_REACTION_FOR_A_COMMIT_COMMENT`

Creates an emoji reaction for a commit comment; if the user has already reacted with the same content, details of the existing reaction are returned.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Username of the repository owner. Not case-sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions) to add to the commit comment. |
| `comment_id` | integer | Yes | Unique ID of the commit comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for an issue

**Slug:** `GITHUB_CREATE_REACTION_FOR_AN_ISSUE`

Creates a reaction for a specified issue within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case-sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The reaction type to add to the issue. See the [GitHub documentation on reactions](https://docs.github.com/rest/reactions/reactions#about-reactions) for full details. |
| `issue_number` | integer | Yes | The number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for an issue comment

**Slug:** `GITHUB_CREATE_REACTION_FOR_AN_ISSUE_COMMENT`

Creates a reaction for a specific comment on an issue within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account that owns the repository (not case-sensitive). |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | Reaction content to add to the issue comment. Must be one of the values from `ContentEnm`. |
| `comment_id` | integer | Yes | Unique identifier of the issue comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for a pull request review comment

**Slug:** `GITHUB_CREATE_REACTION_FOR_A_PULL_REQUEST_REVIEW_COMMENT`

Adds a specified reaction to a pull request review comment within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The reaction to add. See the [GitHub API documentation on reactions](https://docs.github.com/rest/reactions/reactions#about-reactions) for more context on reactions. |
| `comment_id` | integer | Yes | The unique identifier of the pull request review comment to which the reaction will be added. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for a release

**Slug:** `GITHUB_CREATE_REACTION_FOR_A_RELEASE`

Creates an emoji reaction for a specific, existing release in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `content` | string ("+1" | "laugh" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The type of reaction to add to the release. |
| `release_id` | integer | Yes | The unique identifier (ID) of the release to add a reaction to. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for a team discussion

**Slug:** `GITHUB_CREATE_REACTION_FOR_A_TEAM_DISCUSSION`

Creates a reaction for a team discussion within a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The reaction content to add to the team discussion. |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team name. |
| `discussion_number` | integer | Yes | The unique number identifying the team discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create reaction for a team discussion comment

**Slug:** `GITHUB_CREATE_REACTION_FOR_A_TEAM_DISCUSSION_COMMENT`

Adds a reaction to a team discussion comment, requiring the specified organization, team, discussion, and comment to exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name on GitHub. This name is not case sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | Yes | The type of reaction to add to the team discussion comment. For more information on reaction types, see the [GitHub API documentation on reactions](https://docs.github.com/rest/reactions/reactions#about-reactions). |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team name. |
| `comment_number` | integer | Yes | The unique number identifying the comment within the discussion. |
| `discussion_number` | integer | Yes | The unique number identifying the team discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create sponsorship

**Slug:** `GITHUB_CREATE_SPONSORSHIP`

Tool to start a new GitHub sponsorship or reactivate a past sponsorship using GraphQL. Use when you need to sponsor a maintainer through GitHub Sponsors with a specified amount and privacy level.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | integer | Yes | The amount to sponsor in cents (USD). For example, 500 cents equals $5.00. |
| `sponsor_id` | string | No | The global node ID of the user or organization acting as sponsor (e.g., 'U_kgDOABCDEF'). Required if sponsor_login is not provided. |
| `is_recurring` | boolean | No | Whether the sponsorship is recurring (true) or one-time (false). Note: one-time payments currently have a known bug in the GitHub API and may not work as expected. |
| `privacy_level` | string ("PRIVATE" | "PUBLIC") | No | Privacy level for GitHub sponsorships |
| `sponsor_login` | string | No | The username of the sponsoring user or organization. Required if sponsor_id is not provided. |
| `sponsorable_id` | string | No | The global node ID of the user or organization to sponsor (e.g., 'U_kgDOMNOPQR'). Required if sponsorable_login is not provided. |
| `sponsorable_login` | string | No | The username of the user or organization to sponsor. Required if sponsorable_id is not provided. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Sponsors Tier

**Slug:** `GITHUB_CREATE_SPONSORS_TIER`

Tool to create a new payment tier for your GitHub Sponsors profile using GraphQL. Use when you need to add a new sponsorship tier with a specific monthly price and description. The amount is specified in dollars and will be converted to cents automatically.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `amount` | integer | Yes | The monthly sponsorship amount in dollars (USD). This value will be converted to cents internally (e.g., 5 for $5/month becomes 500 cents, 500 for $500/month becomes 50000 cents). Minimum is $1. |
| `description` | string | Yes | A detailed description of what this sponsorship tier provides. Explain the benefits and perks sponsors will receive at this level. This is a required field. |
| `sponsorable_id` | string | Yes | The global node ID of the user or organization who will receive sponsorships for this tier (e.g., 'U_kgDOABCDEF' for users, 'O_kgDOGHIJKL' for organizations). Use the get_viewer_graphql_id action to fetch your own ID. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations and track request origin. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Organization Secret with LibSodium

**Slug:** `GITHUB_CREATE_UPDATE_ORG_SECRET_WITH_LIB_SODIUM`

Creates or updates a Dependabot organization secret, requiring the secret value to be pre-encrypted with LibSodium using the organization's public key obtained from the 'Get an organization public key' endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |
| `key_id` | string | No | ID of the Dependabot public key used for encryption (retrieved from 'Get an organization public key for Dependabot' endpoint: GET /orgs/{org}/dependabot/secrets/public-key). Required if `encrypted_value` is provided. |
| `visibility` | string ("all" | "private" | "selected") | Yes | Secret visibility: `all` (all repositories), `private` (private repositories), or `selected` (specific repositories designated by `selected_repository_ids`). |
| `secret_name` | string | Yes | The secret name (case-insensitive and unique within the organization). |
| `encrypted_value` | string | No | Value of the secret, encrypted using [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages) and the organization's Dependabot public key (obtained from the 'Get an organization public key for Dependabot' endpoint: GET /orgs/{org}/dependabot/secrets/public-key). Required to create or update the secret's value. |
| `selected_repository_ids` | array | No | List of repository IDs that can access the secret; required and used only when `visibility` is `selected`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create user list

**Slug:** `GITHUB_CREATE_USER_LIST`

Tool to create a new user list on GitHub. Use when you need to organize and group GitHub users for easier tracking and management.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the user list to create. |
| `description` | string | No | A description for the user list to provide context about its purpose. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. This can be used to track the request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create view for user project

**Slug:** `GITHUB_CREATE_VIEW_FOR_USER_PROJECT`

Tool to create a new view in a user-owned GitHub project (Projects V2). Use when you need to add a customized view with specific layout, filters, and visible fields to organize project items. Note: This action works with GitHub Projects V2. The view can be configured with different layouts (table, board, roadmap) and optional filters. The visible_fields parameter is not applicable to roadmap layouts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the view to be created. |
| `filter` | string | No | The filter query for the view. See GitHub's filtering projects documentation for syntax details. |
| `layout` | string ("table" | "board" | "roadmap") | Yes | The layout type for the view. Options are 'table', 'board', or 'roadmap'. |
| `user_id` | string | Yes | The unique identifier of the user who owns the project. This can be the username or user login. |
| `project_number` | integer | Yes | The project's number as displayed in the project URL. |
| `visible_fields` | array | No | List of field IDs that should be visible in the view. Not applicable to roadmap layout. If not provided, default visible fields will be used. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Decline a repository invitation

**Slug:** `GITHUB_DECLINE_A_REPOSITORY_INVITATION`

Declines a specific, pending repository invitation for the authenticated user, identified by its `invitation_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invitation_id` | integer | Yes | Identifier of the pending repository invitation to decline; obtained by listing the user's pending invitations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete access restrictions

**Slug:** `GITHUB_DELETE_ACCESS_RESTRICTIONS`

Removes all user, team, and app-based access restrictions from a protected branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |
| `branch` | string | Yes | The name of the branch from which to remove access restrictions. Wildcard characters are not supported; for wildcard usage, refer to the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete admin branch protection

**Slug:** `GITHUB_DELETE_ADMIN_BRANCH_PROTECTION`

Removes admin enforcement from a protected branch (branch name cannot contain wildcard characters) in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `branch` | string | Yes | The name of the branch. Cannot contain wildcard characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a file

**Slug:** `GITHUB_DELETE_A_FILE`

Deletes a file by path from a GitHub repository. The file's blob SHA is automatically fetched if not provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | No | Blob SHA of the file being deleted. Optional - if not provided, it will be automatically fetched from the file at the given path. |
| `path` | string | Yes | Path to the file to be deleted within the repository. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `branch` | string | No | Branch from which the file will be deleted; defaults to the repository's default branch. |
| `message` | string | Yes | Commit message for the deletion. |
| `author__name` | string | No | Name of the commit author for the deletion; defaults to the committer's name. |
| `author__email` | string | No | Email address of the commit author for the deletion; defaults to the committer's email. |
| `committer__name` | string | No | Name of the user committing the deletion; defaults to the authenticated user's name. |
| `committer__email` | string | No | Email address of the user committing the deletion; defaults to the authenticated user's email. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a package version for the authenticated user

**Slug:** `GITHUB_DELETE_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER`

Deletes an existing package version associated with the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `package_name` | string | Yes | The unique name of the package. |
| `package_type` | string | Yes | Type of the package. E.g., `maven` for GitHub Gradle registry, `container` for `ghcr.io` images. The `docker` type covers images from `docker.pkg.github.com` (including migrated ones). |
| `package_version_id` | integer | Yes | The unique numeric identifier of the specific package version to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an app authorization

**Slug:** `GITHUB_DELETE_APP_AUTHORIZATION`

Deletes an OAuth application grant for a user, which revokes ALL OAuth tokens and their associated authorizations for the application. This endpoint is only accessible to OAuth App owners and requires Basic Authentication using the OAuth App's client_id and client_secret.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `client_id` | string | Yes | The client ID of your OAuth App. This must be YOUR OAuth App that you own, as this endpoint requires the app's client_secret for authentication. |
| `access_token` | string | Yes | An OAuth access token that was issued by your OAuth App (specified by client_id). Providing this token will revoke ALL tokens for that user's grant, not just this single token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an app token

**Slug:** `GITHUB_DELETE_APP_TOKEN`

Revokes a single OAuth access token for an OAuth App or GitHub App with OAuth authorization. IMPORTANT: This endpoint requires Basic Authentication using the OAuth App's client_id as username and client_secret as password. It CANNOT be called with personal access tokens, GitHub App installation tokens, or any other token type. You must be the OAuth App owner to use this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `client_id` | string | Yes | The client ID of the OAuth App or GitHub App with OAuth authorization. |
| `access_token` | string | Yes | The OAuth access token to be revoked. Must be a token issued by this OAuth App. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a reference

**Slug:** `GITHUB_DELETE_A_REFERENCE`

Deletes a Git reference from a repository; 'ref' must be fully qualified (e.g., 'refs/heads/branch' or 'refs/tags/tag').

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The Git reference to delete. Accepts multiple formats: 'refs/heads/branch-name', 'heads/branch-name', or just 'branch-name' for branches; 'refs/tags/tag-name' or 'tags/tag-name' for tags. Simple branch names are automatically prefixed with 'heads/'. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a release

**Slug:** `GITHUB_DELETE_A_RELEASE`

Permanently deletes a specific release, its assets, and potentially its associated Git tag from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository, typically a username or organization name. This field is not case-sensitive. |
| `release_id` | integer | Yes | The unique numerical identifier (ID) of the release to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a release asset

**Slug:** `GITHUB_DELETE_A_RELEASE_ASSET`

Deletes a specific release asset from a GitHub repository; this action is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization); not case-sensitive. |
| `asset_id` | integer | Yes | The unique identifier of the release asset to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a release reaction

**Slug:** `GITHUB_DELETE_A_RELEASE_REACTION`

Deletes a reaction from a GitHub release, provided the repository, release, and reaction exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | The account owner of the repository (case-insensitive). |
| `release_id` | integer | Yes | Unique identifier of the release. |
| `reaction_id` | integer | Yes | Unique identifier of the reaction to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository

**Slug:** `GITHUB_DELETE_A_REPOSITORY`

Permanently deletes the specified repository; this is a destructive, irreversible action that requires admin privileges for the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension; case-insensitive. |
| `owner` | string | Yes | The account owner of the repository (user or organization); case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository invitation

**Slug:** `GITHUB_DELETE_A_REPOSITORY_INVITATION`

Deletes an active repository invitation, permanently revoking a user's access to collaborate on the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |
| `invitation_id` | integer | Yes | The unique numerical identifier of the repository invitation to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository ruleset

**Slug:** `GITHUB_DELETE_A_REPOSITORY_RULESET`

Permanently deletes a repository ruleset.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `ruleset_id` | integer | Yes | The unique identifier (ID) of the ruleset to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository secret

**Slug:** `GITHUB_DELETE_A_REPOSITORY_SECRET`

Deletes a named GitHub Actions secret from a specified repository; this operation is destructive and idempotent, and requires the repository to exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username or organization name and is not case-sensitive. |
| `secret_name` | string | Yes | The name of the secret to delete. This refers to a secret used in GitHub Actions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository subscription

**Slug:** `GITHUB_DELETE_A_REPOSITORY_SUBSCRIPTION`

Deletes the authenticated user's subscription to a specified repository if it exists, effectively 'unwatching' it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository variable

**Slug:** `GITHUB_DELETE_A_REPOSITORY_VARIABLE`

Deletes a named variable (e.g., for GitHub Actions workflows) from a repository; the repository and the variable must already exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the repository variable to delete. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a repository webhook

**Slug:** `GITHUB_DELETE_A_REPOSITORY_WEBHOOK`

Deletes a specific webhook from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a review comment for a pull request

**Slug:** `GITHUB_DELETE_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST`

Deletes a specific pull request review comment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `comment_id` | integer | Yes | The unique numerical identifier of the pull request review comment to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an artifact

**Slug:** `GITHUB_DELETE_ARTIFACT`

Deletes a GitHub artifact by its ID within a repository, typically resulting in an empty response (HTTP 204 No Content) on success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository (user or organization); not case-sensitive. |
| `artifact_id` | integer | Yes | Unique ID of the artifact to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a secret for the authenticated user

**Slug:** `GITHUB_DELETE_A_SECRET_FOR_THE_AUTHENTICATED_USER`

Deletes an existing Codespaces secret for the authenticated user by `secret_name`. This is a destructive and irreversible operation. Returns 404 if the secret does not exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | Name of the Codespaces secret to delete. Case-sensitive; allows alphanumeric characters or underscores; must not start with `GITHUB_` or contain spaces. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a self hosted runner from an organization

**Slug:** `GITHUB_DELETE_A_SELF_HOSTED_RUNNER_FROM_AN_ORGANIZATION`

Forces the removal of a self-hosted runner from a GitHub organization. This endpoint can be used to completely remove the runner when the machine you were using no longer exists. The runner will be immediately disconnected from GitHub Actions. Requires admin:org scope and organization admin access. Returns 204 No Content on successful deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (not case-sensitive). |
| `runner_id` | integer | Yes | Unique ID of the self-hosted runner to remove (obtainable by listing organization runners). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a self hosted runner from a repository

**Slug:** `GITHUB_DELETE_A_SELF_HOSTED_RUNNER_FROM_A_REPOSITORY`

Removes a specific self-hosted runner (by `runner_id`) from a repository, if registered there; this is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a tag protection state for a repository

**Slug:** `GITHUB_DELETE_A_TAG_PROTECTION_STATE_FOR_A_REPOSITORY`

DEPRECATED: This API was sunset on August 30, 2024. Use GITHUB_DELETE_A_REPOSITORY_RULESET instead to manage tag protection rules via repository rulesets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `tag_protection_id` | integer | Yes | The unique identifier of the tag protection to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a team

**Slug:** `GITHUB_DELETE_A_TEAM`

Deletes a team (and any child teams) from an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's unique identifier (case-insensitive). |
| `team_slug` | string | Yes | The team's URL-friendly slug. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a thread subscription

**Slug:** `GITHUB_DELETE_A_THREAD_SUBSCRIPTION`

Call this to mute a specific notification thread by deleting the user's subscription; notifications may still occur if the user is @mentioned, comments, or due to repository watch settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thread_id` | integer | Yes | The unique identifier of the notification thread. This ID is obtained from other API calls, such as when listing notifications (e.g., via the `GET /notifications` endpoint). Ensure this ID refers to an active thread to which the user is currently subscribed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an autolink reference from a repository

**Slug:** `GITHUB_DELETE_AUTOLINK_REFERENCE`

Deletes a specific autolink reference (which automatically links external resource IDs like JIRA-123 to URLs) from the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This is not case-sensitive. |
| `autolink_id` | integer | Yes | The unique numerical identifier of the autolink reference to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a workflow run

**Slug:** `GITHUB_DELETE_A_WORKFLOW_RUN`

Deletes a specific workflow run from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete branch protection

**Slug:** `GITHUB_DELETE_BRANCH_PROTECTION`

Removes all protection rules from a specific branch in a GitHub repository; the branch must currently have protection rules enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. Not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. Not case sensitive. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not supported for this REST API endpoint; use the GitHub GraphQL API for wildcard support. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a code scanning analysis from a repository

**Slug:** `GITHUB_DELETE_CODE_SCANNING_ANALYSIS`

Deletes a specific code scanning analysis by its ID from a repository; `confirm_delete` must be `true` if it's the last analysis of its type for a given tool and reference to prevent data loss.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `analysis_id` | integer | Yes | Unique identifier of the code scanning analysis to delete, typically obtained by listing analyses. |
| `confirm_delete` | string | No | Pass the string `true` to confirm deletion when this is the last analysis of its type for a specific tool and reference. Required to avoid a 400 error when deleting the final analysis in a set. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a codespace for the authenticated user

**Slug:** `GITHUB_DELETE_CODESPACE`

Deletes a specific codespace owned by the authenticated user; this is a destructive action and the codespace must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | The unique name of the codespace to be deleted. This can be the system-generated name (e.g., 'monalisa-octocat-g4v9wxj96hp') or a user-defined display name if it's unique for the user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a commit comment

**Slug:** `GITHUB_DELETE_COMMIT_COMMENT`

Deletes a specific commit comment, identified by its `comment_id`, from the specified repository; the comment must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, excluding the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This value is not case-sensitive. |
| `comment_id` | integer | Yes | The unique numerical identifier of the commit comment to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a commit comment reaction

**Slug:** `GITHUB_DELETE_COMMIT_COMMENT_REACTION`

Deletes a reaction from a commit comment in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the commit comment from which the reaction will be deleted. |
| `reaction_id` | integer | Yes | The unique identifier of the reaction to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete commit signature protection

**Slug:** `GITHUB_DELETE_COMMIT_SIGNATURE_PROTECTION`

Disables GPG commit signature protection for a specific branch in a GitHub repository, meaning commits pushed to this branch no longer require GPG signing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username of the owner (for personal repositories) or the organization name (for organization-owned repositories). The name is not case-sensitive. |
| `branch` | string | Yes | The name of the branch for which commit signature protection will be disabled. Wildcard characters are not supported in the branch name. To use wildcards, refer to the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a custom organization role

**Slug:** `GITHUB_DELETE_CUSTOM_ORGANIZATION_ROLE`

Deletes a custom organization role (which should not be actively assigned) by its ID; a 204 No Content response indicates success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `role_id` | integer | Yes | Unique ID of the custom role to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete dependabot secret by name

**Slug:** `GITHUB_DELETE_DEPENDEBOT_SECRET_BY_NAME`

Deletes a specific Dependabot secret, identified by its name, from a given repository if both the repository and secret exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., username or organization name). This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the Dependabot secret to delete. Secret names are case-sensitive and can only contain alphanumeric characters ([A-Z], [a-z], [0-9]) or underscores (_); spaces are not allowed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a deploy key

**Slug:** `GITHUB_DELETE_DEPLOY_KEY`

Deletes a specific deploy key from a repository; to change a key's properties or access scope, the existing key must be deleted and a new one created.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `key_id` | integer | Yes | The unique identifier (ID) of the deploy key to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a deployment

**Slug:** `GITHUB_DELETE_DEPLOYMENT`

Permanently deletes a specified *inactive* deployment from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `deployment_id` | integer | Yes | Unique identifier of the deployment to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a deployment branch policy

**Slug:** `GITHUB_DELETE_DEPLOYMENT_BRANCH_POLICY`

Deletes a specific deployment branch or tag policy, identified by its ID, from a given environment within a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `branch_policy_id` | integer | Yes | The unique identifier of the branch policy. |
| `environment_name` | string | Yes | The name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with `%2F`.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a discussion

**Slug:** `GITHUB_DELETE_DISCUSSION`

Deletes a specific team discussion, identified by its number, from an organization's team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Case-insensitive name of the organization. |
| `team_slug` | string | Yes | URL-friendly version (slug) of the team name. |
| `discussion_number` | integer | Yes | The unique number identifying the discussion to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a discussion comment

**Slug:** `GITHUB_DELETE_DISCUSSION_COMMENT`

Deletes a specific comment from an existing team discussion within an organization, provided the specified organization, team, discussion, and comment all exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case sensitive). |
| `team_slug` | string | Yes | The slug of the team name (URL-friendly version). |
| `comment_number` | integer | Yes | Unique number identifying the comment. |
| `discussion_number` | integer | Yes | Unique number identifying the discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete authenticated user email address

**Slug:** `GITHUB_DELETE_EMAIL_ADDRESS`

Sends an empty request body to `DELETE /user/emails` to attempt deletion of user email addresses; the API typically requires specific emails, so outcome may vary.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emails` | array | Yes | Array of email addresses to delete from the authenticated user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an environment

**Slug:** `GITHUB_DELETE_ENVIRONMENT`

Deletes an existing deployment environment from an existing repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This is not case sensitive. |
| `environment_name` | string | Yes | The name of the environment to delete. The name must be URL encoded; for example, slashes (`/`) should be replaced with `%2F`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an environment secret

**Slug:** `GITHUB_DELETE_ENVIRONMENT_SECRET`

Deletes an existing and accessible secret from a specified environment within a GitHub repository, returning an empty dictionary on success or error details otherwise.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the secret to be deleted. GitHub stores and processes secret names as uppercase (e.g., `my_secret` becomes `MY_SECRET`). |
| `environment_name` | string | Yes | The name of the environment from which the secret will be deleted. This name must be URL-encoded if it contains special characters (e.g., slashes `/` should be replaced with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an environment variable

**Slug:** `GITHUB_DELETE_ENVIRONMENT_VARIABLE`

Deletes a named environment variable from a specified, existing environment within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the environment variable to delete. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `environment_name` | string | Yes | The name of the environment. Must be URL-encoded if it contains special characters (e.g., slashes `/` should be `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a gist

**Slug:** `GITHUB_DELETE_GIST`

Permanently deletes an existing GitHub gist, specified by its `gist_id`; this action is destructive and cannot be undone.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier of the gist to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a gist comment

**Slug:** `GITHUB_DELETE_GIST_COMMENT`

Deletes a specific comment from a GitHub Gist using its `gist_id` and `comment_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier of the Gist from which the comment will be deleted. |
| `comment_id` | integer | Yes | The unique identifier of the comment to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete GitHub Actions cache by ID

**Slug:** `GITHUB_DELETE_GITHUB_ACTIONS_CACHE_BY_ID`

Deletes a specific GitHub Actions cache from a repository using its unique `cache_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. |
| `owner` | string | Yes | The username or organization name that owns the repository. |
| `cache_id` | integer | Yes | The unique ID of the GitHub Actions cache to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a GitHub Pages site

**Slug:** `GITHUB_DELETE_GITHUB_PAGES_SITE`

Deletes the GitHub Pages site for the specified repository; completes without error if no site is currently enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an issue comment

**Slug:** `GITHUB_DELETE_ISSUE_COMMENT`

Permanently deletes a specific comment by its ID from an issue or pull request, if the repository exists and the comment ID is valid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `comment_id` | integer | Yes | Unique identifier of the comment to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an issue comment reaction

**Slug:** `GITHUB_DELETE_ISSUE_COMMENT_REACTION`

Deletes a reaction from an issue comment in a repository; the repository, comment, and reaction must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |
| `comment_id` | integer | Yes | The unique numeric identifier for the issue comment from which the reaction will be deleted. |
| `reaction_id` | integer | Yes | The unique numeric identifier for the reaction to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an issue reaction

**Slug:** `GITHUB_DELETE_ISSUE_REACTION`

Permanently removes a specific reaction from an issue in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `reaction_id` | integer | Yes | The unique identifier of the reaction to be deleted. |
| `issue_number` | integer | Yes | The unique number identifying the issue from which the reaction will be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a label

**Slug:** `GITHUB_DELETE_LABEL`

Permanently removes an existing label from a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the label to delete. Label names are case-insensitive. If the label name contains spaces or special characters, ensure it is correctly URL-encoded (e.g., 'help wanted' becomes 'help%20wanted'). |
| `repo` | string | Yes | REQUIRED. The name of the repository, without the `.git` extension. Must be provided together with 'owner' to identify the repository (e.g., for 'github.com/octocat/Hello-World', repo is 'Hello-World'). This field is not case-sensitive. |
| `owner` | string | Yes | REQUIRED. The username or organization name that owns the repository. GitHub repositories are identified by owner/repo (e.g., 'octocat/Hello-World'), so both 'owner' and 'repo' must be provided together. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a milestone

**Slug:** `GITHUB_DELETE_MILESTONE`

Deletes the specified milestone if it exists; this operation is idempotent, typically returning a 404 if the milestone is not found or already deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This name is not case-sensitive. |
| `milestone_number` | integer | Yes | The unique number that identifies the milestone to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an organization

**Slug:** `GITHUB_DELETE_ORGANIZATION`

Deletes a GitHub organization and its repositories; this is a destructive action and the organization name will be unavailable for reuse for approximately 90 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique name of the organization to be deleted. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an organization secret

**Slug:** `GITHUB_DELETE_ORGANIZATION_SECRET`

Permanently deletes a secret from a GitHub organization, making it inaccessible to GitHub Actions workflows or other tools.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `secret_name` | string | Yes | The name of the secret to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an organization variable

**Slug:** `GITHUB_DELETE_ORGANIZATION_VARIABLE`

Deletes a named GitHub Actions variable from a specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This parameter is not case-sensitive. |
| `name` | string | Yes | The name of the organization variable to delete. This parameter is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete an organization webhook

**Slug:** `GITHUB_DELETE_ORGANIZATION_WEBHOOK`

Deletes a specific webhook, identified by `hook_id`, from an existing organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This field is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be retrieved from the `X-GitHub-Hook-ID` header in a webhook delivery or by listing organization webhooks. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a codespace from the organization

**Slug:** `GITHUB_DELETE_ORG_CODESPACE`

Permanently deletes a specific codespace belonging to a member of the specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `username` | string | Yes | GitHub username of the user owning the codespace. |
| `codespace_name` | string | Yes | Unique name of the codespace. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a package for an organization

**Slug:** `GITHUB_DELETE_ORG_PACKAGE`

Deletes a specific package in an organization; cannot delete public packages with over 5,000 downloads.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization owning the package (not case-sensitive). |
| `package_name` | string | Yes | Unique name of the package to be deleted. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Type of the package to be deleted. Packages in GitHub's Gradle registry have type `maven`. Docker images in GitHub's Container registry (`ghcr.io`) have type `container`. Use type `docker` for images previously in GitHub's Docker registry (`docker.pkg.github.com`), even if migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a package for the authenticated user

**Slug:** `GITHUB_DELETE_PACKAGE`

Permanently deletes a specific package owned by the authenticated user; public packages downloaded over 5,000 times cannot be deleted via this API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `package_name` | string | Yes | The unique name of the package to delete. For npm: supports scoped packages like '@scope/name'. For maven: use format 'com.example.package'. For container/docker: use image name like 'my-app'. The name must match exactly as it appears in the GitHub Packages registry. |
| `package_type` | string | Yes | The type of package to delete. Supported types: 'npm' (Node.js packages), 'maven' (Java/Gradle packages), 'rubygems' (Ruby gems), 'docker' (legacy Docker images from docker.pkg.github.com), 'nuget' (.NET packages), 'container' (Docker images from ghcr.io). Note: GitHub Gradle packages use 'maven' type; ghcr.io images use 'container' type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete package version

**Slug:** `GITHUB_DELETE_PACKAGE_VERSION`

Tool to delete a package version using GitHub GraphQL API. Use when you need to remove a specific version of a package by its global node ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations. |
| `package_version_id` | string | Yes | The global node ID of the package version to delete (e.g., 'MDEyOlBhY2thZ2VWZXJzaW9uMQ=='). This is the GraphQL ID, not the numeric REST API ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete package version for an organization

**Slug:** `GITHUB_DELETE_PACKAGE_VERSION_FOR_AN_ORGANIZATION`

Deletes a specific package version within an organization; requires admin permissions for packages with over 5,000 downloads.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `package_name` | string | Yes | Name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Package ecosystem. Notes: - `maven`: For GitHub's Gradle registry packages. - `container`: For Docker images in GitHub's Container registry (ghcr.io). - `docker`: For images originally in GitHub's Docker registry (docker.pkg.github.com), including migrated ones. |
| `package_version_id` | integer | Yes | Unique ID of the package version to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete package version for a user

**Slug:** `GITHUB_DELETE_PACKAGE_VERSION_FOR_A_USER`

Permanently and irreversibly deletes a specific version of a package owned by the specified user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the account that owns the package. |
| `package_name` | string | Yes | The name of the package to which the version belongs. |
| `package_type` | string | Yes | The type of the package. Supported types include npm, maven, rubygems, docker, nuget, and container. Packages in GitHub's Gradle registry use the `maven` type. Docker images in GitHub's Container registry (ghcr.io) use the `container` type. The `docker` type can be used for images previously in GitHub's Docker registry (docker.pkg.github.com), even if migrated. |
| `package_version_id` | integer | Yes | The unique identifier of the package version to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a pending review for a pull request

**Slug:** `GITHUB_DELETE_PENDING_REVIEW`

Deletes a pending (unsubmitted) review from a pull request; this is only possible if the review has not yet been submitted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `review_id` | integer | Yes | The unique identifier of the pending review to be deleted. |
| `pull_number` | integer | Yes | The number that identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a project

**Slug:** `GITHUB_DELETE_PROJECT`

Deletes the specified GitHub project (Projects V2) using the GraphQL API. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects (classic) REST API was sunset on April 1, 2025 and is no longer available. The project is permanently deleted and cannot be recovered. The user must have admin permissions for the project to delete it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `project_id` | string | Yes | The unique GraphQL node ID of the project to be deleted (e.g., 'PVT_kwDOBcMqx84ABdPx'). This is returned from project creation or listing operations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a project card (Classic - Deprecated)

**Slug:** `GITHUB_DELETE_PROJECT_CARD`

Deletes a project card from a GitHub 'Project (classic)'; this operation is idempotent. DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action may return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `card_id` | integer | Yes | The unique numerical identifier of the project card to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a project field (column)

**Slug:** `GITHUB_DELETE_PROJECT_COLUMN`

Deletes a project field (column) from a GitHub Projects V2 project using the GraphQL API. IMPORTANT: GitHub Classic Projects REST API was sunset on April 1, 2025. This action now uses the GitHub Projects V2 GraphQL API with the deleteProjectV2Field mutation. Note: The built-in Status field cannot be deleted as it is a core field in GitHub Projects V2. Only custom fields can be deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `field_id` | string | Yes | The node ID of the project field to be deleted. This is a GraphQL node ID (e.g., 'PVTF_...'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete project item for user

**Slug:** `GITHUB_DELETE_PROJECT_ITEM_FOR_USER`

Tool to delete a project item for a user in GitHub Projects V2. Use when you need to remove an item from a user's project. Requires the project item's GraphQL node ID (starts with 'PVTI_'). Uses the GitHub GraphQL API deleteProjectV2Item mutation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The GraphQL node ID of the project item to delete (e.g. 'PVTI_lADOBCxhzs4A...'). |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a pull request comment reaction

**Slug:** `GITHUB_DELETE_PULL_REQUEST_COMMENT_REACTION`

Deletes a specific reaction from a pull request review comment, provided the comment and reaction exist on that comment within the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner (username or organization) of the repository; not case-sensitive. |
| `comment_id` | integer | Yes | Unique ID of the pull request review comment. |
| `reaction_id` | integer | Yes | Unique ID of the reaction to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete pull request review protection

**Slug:** `GITHUB_DELETE_PULL_REQUEST_REVIEW_PROTECTION`

Disables the requirement for pull request reviews before merging for a specific, existing branch in an existing repository; this action is idempotent and will succeed even if the protection is not currently enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (not case-sensitive). |
| `branch` | string | Yes | Name of the branch to remove pull request review protection from (wildcards not supported; use GraphQL API for wildcards). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete repo codespace secret by name

**Slug:** `GITHUB_DELETE_REPO_CODESPACE_SECRET_BY_NAME`

Deletes a specific Codespace secret from a repository by its name; this action is idempotent and will succeed even if the secret doesn't exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the name of the organization that owns the repository. This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the Codespace secret to be deleted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete social accounts for the authenticated user

**Slug:** `GITHUB_DELETE_SOCIAL_ACCOUNTS_FOR_THE_AUTHENTICATED_USER`

Deletes currently linked social media account URLs from the authenticated user's GitHub profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account_urls` | array | Yes | Absolute URLs of the social media profiles to be unlinked from the GitHub profile. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team discussion comment reaction

**Slug:** `GITHUB_DELETE_TEAM_DISCUSSION_COMMENT_REACTION`

Deletes a reaction from a team discussion comment, given the organization name, team slug, discussion number, comment number, and reaction ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `team_slug` | string | Yes | The slug of the team name (URL-friendly version). |
| `reaction_id` | integer | Yes | The unique identifier of the reaction to be deleted. |
| `comment_number` | integer | Yes | The number that uniquely identifies the comment within the discussion. |
| `discussion_number` | integer | Yes | The number that uniquely identifies the discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team discussion reaction

**Slug:** `GITHUB_DELETE_TEAM_DISCUSSION_REACTION`

Permanently deletes a specific reaction from a team discussion within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. This name is not case sensitive. |
| `team_slug` | string | Yes | The slug of the team name, which is a URL-friendly version of the team name. |
| `reaction_id` | integer | Yes | The unique identifier of the reaction to be deleted. |
| `discussion_number` | integer | Yes | The unique number identifying the specific discussion within the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete User List

**Slug:** `GITHUB_DELETE_USER_LIST`

Tool to delete a GitHub user list using GraphQL. Use when you need to remove a user list from a GitHub account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `listId` | string | Yes | The ID of the user list to delete. This is a GitHub global node ID for the list. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used to track requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete a package for a user

**Slug:** `GITHUB_DELETE_USER_PACKAGE`

Deletes a package owned by the specified user, requiring admin permissions for the authenticated user; deletion of public packages with over 5,000 downloads may require GitHub support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the account that owns the package. |
| `package_name` | string | Yes | The unique name of the package to be deleted. |
| `package_type` | string | Yes | Ecosystem of the package. Packages in GitHub's Gradle registry use `maven`. Docker images pushed to GitHub's Container registry (`ghcr.io`) use `container`. The `docker` type can find images from the old Docker registry (`docker.pkg.github.com`), even if migrated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete workflow run logs

**Slug:** `GITHUB_DELETE_WORKFLOW_RUN_LOGS`

Deletes all logs for a specific workflow run in a GitHub repository, provided the repository and run exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Disable a custom protection rule for an environment

**Slug:** `GITHUB_DISABLE_A_CUSTOM_PROTECTION_RULE_FOR_AN_ENVIRONMENT`

Disables a specific, currently active custom deployment protection rule for an existing environment within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository (without the `.git` extension). This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case sensitive. |
| `environment_name` | string | Yes | The name of the environment. This name must be URL encoded; for example, any slashes (`/`) in the name must be replaced with `%2F`. |
| `protection_rule_id` | integer | Yes | The unique integer identifier of the custom deployment protection rule to be disabled. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Disable a workflow

**Slug:** `GITHUB_DISABLE_A_WORKFLOW`

Disables a specified workflow (by ID or filename) in a given GitHub repository, preventing new automatic triggers; any in-progress runs will continue.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |
| `workflow_id` | string | Yes | The ID of the workflow or the workflow's file name (e.g., `main.yml` or `ci.yaml`). You can obtain the workflow ID by listing workflows in a repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Disable private vulnerability reporting for a repository

**Slug:** `GITHUB_DISABLE_PRIVATE_VULN_REPORTING_FOR_REPO`

Disables private vulnerability reporting for an existing GitHub repository, preventing direct private vulnerability reports to maintainers via GitHub's interface for this repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Disable Repository Actions In Org

**Slug:** `GITHUB_DISABLE_REPOSITORY_ACTIONS_IN_ORG`

Removes a repository from the list of selected repositories enabled for GitHub Actions in an organization. Only works when the organization's `enabled_repositories` policy is set to `selected`. Requires admin:org scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (not case-sensitive). |
| `repository_id` | integer | Yes | The unique identifier of the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Dismiss a review for a pull request

**Slug:** `GITHUB_DISMISS_A_REVIEW_FOR_A_PULL_REQUEST`

Dismisses an APPROVED or CHANGES_REQUESTED review on a pull request with a mandatory explanatory message. IMPORTANT: Only reviews in APPROVED or CHANGES_REQUESTED state can be dismissed. Reviews in COMMENTED, PENDING, or already DISMISSED state will return a 422 error. To dismiss a review on a protected branch, you must be a repository admin or be authorized to dismiss pull request reviews.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `event` | string ("DISMISS") | No | The event type for dismissing the review. Must be set to DISMISS. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `message` | string | Yes | The reason for dismissing the review. This is a required field. |
| `review_id` | integer | Yes | The unique identifier for the review to be dismissed. The review must be in APPROVED or CHANGES_REQUESTED state. |
| `pull_number` | integer | Yes | The unique number identifying the pull request within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download an artifact

**Slug:** `GITHUB_DOWNLOAD_AN_ARTIFACT`

Downloads a GitHub Actions workflow artifact as a ZIP file. Returns the artifact as a downloadable file. Use GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY or GITHUB_LIST_WORKFLOW_RUN_ARTIFACTS to get valid artifact IDs first.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (case-insensitive). |
| `artifact_id` | integer | Yes | Unique numeric identifier of the artifact. Obtain from GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY or GITHUB_LIST_WORKFLOW_RUN_ARTIFACTS actions. |
| `archive_format` | string | No | Archive format for the download. GitHub API only supports 'zip'. Defaults to 'zip'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download a repository tarball

**Slug:** `GITHUB_DOWNLOAD_A_REPOSITORY_ARCHIVE_TAR`

Downloads a repository's source code as a tarball (.tar.gz) archive for a specific Git reference, if the repository is accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | A Git reference (e.g., branch name, tag name, or commit SHA) that points to the specific version of the repository content to be downloaded as a tarball archive. For example, `main` for the main branch, `v1.0.0` for a tag, or a full commit SHA. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download a repository archive ZIP

**Slug:** `GITHUB_DOWNLOAD_A_REPOSITORY_ARCHIVE_ZIP`

Downloads a repository's source code as a ZIP archive for a specific Git reference (branch, tag, or commit SHA). IMPORTANT SIZE LIMITATION: This action may fail with 'payload too large' errors for large repositories due to platform size restrictions. If you encounter size limit issues, consider these alternatives: - Use GITHUB_GET_REPOSITORY_CONTENT to fetch specific files or directories (also lists directory contents) - Clone the repository using git if you need the full codebase Best suited for: small to medium repositories, downloading specific tagged releases, or quick code inspection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The Git reference for the archive. This can be a branch name, a tag name, or a commit SHA. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download job logs for a workflow run

**Slug:** `GITHUB_DOWNLOAD_JOB_LOGS_FOR_A_WORKFLOW_RUN`

Downloads logs for a specific job in a GitHub Actions workflow run, contingent on the repository's existence and the job ID being valid and having produced logs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive.  |
| `owner` | string | Yes | The account owner of the repository (e.g., user or organization). This name is not case-sensitive. |
| `job_id` | integer | Yes | The unique identifier of the job for which to download logs. You can obtain this from the 'List jobs for a workflow run' endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download workflow run attempt logs

**Slug:** `GITHUB_DOWNLOAD_WORKFLOW_RUN_ATTEMPT_LOGS`

Downloads a ZIP archive of logs for a specific workflow run attempt. Returns a downloadable ZIP file containing logs for all jobs and steps in the workflow run.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. |
| `attempt_number` | integer | Yes | The attempt number of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download workflow run logs

**Slug:** `GITHUB_DOWNLOAD_WORKFLOW_RUN_LOGS`

Downloads logs for a specific GitHub Actions workflow run as a ZIP archive containing log files for each job in the workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository (e.g., 'Spoon-Knife') without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., 'octocat'). This name is not case-sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run (e.g., 12345). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enable a workflow

**Slug:** `GITHUB_ENABLE_A_WORKFLOW`

Reactivates a currently disabled GitHub Actions workflow within a repository using its workflow ID or filename.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This value is not case-sensitive. |
| `workflow_id` | string | Yes | The ID of the workflow to be enabled. You can provide either the numeric workflow ID (e.g., 30433642) or the workflow filename (e.g., 'ci.yaml', 'data.yml'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enable GitHub actions in selected repositories

**Slug:** `GITHUB_ENABLE_GITHUB_ACTIONS_IN_SELECTED_REPOSITORIES`

Sets the specific repositories that can use GitHub Actions within an organization by replacing the current list; only applies if the organization's Actions policy is 'selected repositories'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `selected_repository_ids` | array | Yes | List of unique repository IDs for which GitHub Actions will be enabled. This list completely replaces the current selection of repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enable private vulnerability reporting for a repository

**Slug:** `GITHUB_ENABLE_PRIVATE_VULN_REPORTING_FOR_REPO`

Enables private vulnerability reporting for a repository, allowing security researchers to privately submit vulnerability reports to maintainers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username or organization name and is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enable repo for Github Actions

**Slug:** `GITHUB_ENABLE_REPO_FOR_GITHUB_ACTIONS`

Adds a repository to the list of selected repositories enabled for GitHub Actions in an organization. Requires the organization's 'enabled_repositories' policy to be set to 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `repository_id` | integer | Yes | The unique numerical identifier of the GitHub repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Encrypt and update dev secret

**Slug:** `GITHUB_ENCRYPT_AND_UPDATE_DEV_SECRET`

Creates or updates a repository's development environment secret using an `encrypted_value` and its corresponding `key_id`; the secret must be pre-encrypted with the repository's Codespaces public key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `key_id` | string | No | ID of the public key (retrieved from the GitHub API's 'Get a repository public key for Codespaces' endpoint: `GET /repos/{owner}/{repo}/codespaces/secrets/public-key`) used to encrypt the secret's value. If not provided, it will be fetched automatically. |
| `secret_name` | string | Yes | The name of the development environment secret. |
| `secret_value` | string | No | The plaintext value for your secret. This will be automatically encrypted using the repository's Codespaces public key before being sent to GitHub. If you already have an encrypted value, use the encrypted_value parameter instead. |
| `encrypted_value` | string | No | Value for your secret, already encrypted using the public key retrieved from the GitHub API's 'Get a repository public key for Codespaces' endpoint (`GET /repos/{owner}/{repo}/codespaces/secrets/public-key`). Use this if you have pre-encrypted the value yourself. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Encrypt org dev env secret

**Slug:** `GITHUB_ENCRYPT_ORG_DEV_ENV_SECRET`

Creates or updates an organization's GitHub Codespaces secret using an encrypted value and its corresponding public key ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `key_id` | string | No | ID of the public key (from GET /orgs/{org}/codespaces/secrets/public-key) used to encrypt the secret's value. If not provided, it will be fetched automatically when encrypting. |
| `visibility` | string ("all" | "private" | "selected") | Yes | Visibility of the secret. 'selected' requires `selected_repository_ids`. |
| `secret_name` | string | Yes | Name of the secret to create or update. |
| `secret_value` | string | No | The plaintext value for your secret. This will be automatically encrypted using the organization's Codespaces public key before being sent to GitHub. If you already have an encrypted value, use the encrypted_value parameter instead. |
| `encrypted_value` | string | No | Encrypted secret value, using the public key from 'Get an organization public key' (GET /orgs/{org}/codespaces/secrets/public-key). Use this if you have pre-encrypted the value yourself. If not provided and secret_value is given, encryption will be done automatically. |
| `selected_repository_ids` | array | No | Repository IDs that can access the secret; required if visibility is 'selected'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Export a codespace for the authenticated user

**Slug:** `GITHUB_EXPORT_A_CODESPACE_FOR_THE_AUTHENTICATED_USER`

Triggers an export of a user's specified codespace, automatically stopping it if active, and returns its export status and download URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | Unique name of the codespace to be exported. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Export an SBOM for a repository

**Slug:** `GITHUB_EXPORT_SBOM_FOR_REPO`

Exports the software bill of materials (SBOM) in SPDX JSON format for a repository, if its dependency graph is enabled and it has at least one commit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Find Pull Requests

**Slug:** `GITHUB_FIND_PULL_REQUESTS`

Primary tool to find and search pull requests. Supports filtering by repository, author, state, labels, and merge status, and returns structured PR data for reliable use in workflows. GitHub search results are capped at ~1000 total items; narrow filters when totals approach this limit. `created_since`/`updated_since` filter on creation/update timestamps, not `merged_at`; apply merge-date filtering client-side.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | No | Filter by specific repository. Can be provided in 'owner/repo' format (e.g., 'facebook/react'), or as just the repo name when used with the owner parameter. When owner and repo are both provided and have the same value, they are combined as 'owner/repo'. At least one of 'repo' or 'owner' must be provided to search in a specific context, or omit both to search across all accessible repositories. The repository must exist and be accessible with your token. Prefer 'owner/repo' format; bare repo name without the `owner` parameter causes invalid repository format errors. |
| `sort` | string ("comments" | "reactions" | "interactions" | "created" | "updated") | No | Field to sort results by. Set explicitly to 'updated' with `order=desc` when recency matters; default behavior may return best-match relevance ordering instead. |
| `label` | string | No | Filter by label name. |
| `order` | string ("desc" | "asc") | No | Sort order (ascending or descending). |
| `owner` | string | No | Filter by repository owner (user or organization). Can be used alone to search all repositories for an owner, or combined with repo parameter to specify owner and repo separately. When both owner and repo are provided, the search is scoped to 'owner/repo'. At least one of 'owner' or 'repo' must be provided to search in a specific context, or omit both to search across all accessible repositories. The owner must exist and repositories must be accessible with your token. |
| `query` | string | No | Optional search query for PR title, description, or commit messages. Supports GitHub search syntax including label filters (e.g., 'label:bug'), logical operators (AND, OR, NOT), and text search. If not provided, PRs will be listed based on other filter parameters. Type qualifiers (type:pr, is:pr, is:issue, type:issue) are automatically normalized. When using logical operators with qualifiers like labels, the query is automatically grouped for proper parsing. When omitting query, ensure at least one structured filter parameter is provided; passing no query and no filters may cause validation errors. Prefer dedicated parameters (`label`, `state`, `author`) over embedding qualifiers in the query string. Exact title matching is not supported; post-filter on title client-side if needed. |
| `state` | string | No | Filter by PR state: 'open', 'closed', or 'all'. |
| `author` | string | No | Filter by PR author username. Must be a valid GitHub username (alphanumeric characters and hyphens only, cannot start or end with hyphen). No dots or other special characters allowed. |
| `assignee` | string | No | Filter by PR assignee username. Use '@me' for current user. Must be a valid GitHub username (alphanumeric characters and hyphens only, cannot start or end with hyphen). No dots or other special characters allowed. |
| `language` | string | No | Filter by programming language. |
| `mentions` | string | No | Filter by username mentioned in PR. Must be a valid GitHub username (alphanumeric characters and hyphens only, cannot start or end with hyphen). No dots or other special characters allowed. |
| `per_page` | integer | No | Number of results per page (maximum 100). GitHub caps total search results at ~1000 items; iterate `page` until results fewer than `per_page` are returned, and add `repo`, `label`, or date filters when totals approach 1000. |
| `is_merged` | boolean | No | Filter by merge status. True for merged PRs, False for unmerged, None for all. |
| `base_branch` | string | No | Filter by base branch name. |
| `head_branch` | string | No | Filter by head branch name. |
| `raw_response` | boolean | No | Return full API response if true, optimized response for AI agents if false. |
| `created_since` | string | No | Filter PRs created after this date (ISO 8601 format). Provide as UTC ISO 8601 timestamp to avoid off-by-one-day errors at range boundaries. Does not filter on `merged_at`. |
| `updated_since` | string | No | Filter PRs updated after this date (ISO 8601 format). |
| `for_authenticated_user` | boolean | No | Include private repositories accessible to the authenticated user in search results. When True, searches all repos (public and private) you have access to. When False, searches public repos only. Set to True when searching private repositories; False searches all of GitHub and produces large noisy result sets. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Find Repositories

**Slug:** `GITHUB_FIND_REPOSITORIES`

AI-optimized repository search with smart filtering by language, stars, topics, and ownership. Builds intelligent search queries and returns clean, actionable repository data. Check `incomplete_results` in the response — when true, results are non-exhaustive. Search endpoints are rate-limited to ~30 requests/minute (vs. 5000/hour for general REST); apply backoff on 403/429. Total results are capped at ~1000 per query regardless of pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `sort` | string ("stars" | "forks" | "help-wanted-issues" | "updated") | No | Field to sort results by. |
| `order` | string ("desc" | "asc") | No | Sort order (ascending or descending). |
| `owner` | string | No | Filter by specific user or organization. Do NOT use this parameter if your 'query' already contains 'user:', 'org:', or 'repo:' qualifiers - they will conflict. Use either 'owner' parameter OR search qualifiers in 'query', not both. |
| `query` | string | Yes | Search query for repository name, description, or README content. Accepts both 'query' and 'q' as parameter names. Supports OR operator for alternatives (e.g., 'bug OR error'). Multi-word phrases in OR expressions are automatically quoted. GitHub limits OR expressions to 6 terms maximum; queries exceeding this limit are truncated. If using GitHub qualifiers like 'repo:', 'user:', or 'org:', they must be properly formatted (e.g., 'repo:owner/name', 'user:username', 'org:orgname'). Note: 'owner:' is not a valid GitHub qualifier; if used, it will be automatically transformed to 'user:'. Must be non-empty; blank strings trigger a 'Search query cannot be empty' validation error. |
| `topic` | string | No | Filter by repository topic/tag. |
| `archived` | boolean | No | Filter by archived status. None means include both. |
| `language` | string | No | Filter by programming language. |
| `per_page` | integer | No | Number of results per page (maximum 100). GitHub caps total results at ~1000 per query; for exhaustive searches, split by `language`, `topic`, `min_stars`/`max_stars`, or `owner`. |
| `max_stars` | integer | No | Maximum number of stars the repository should have. |
| `min_forks` | integer | No | Minimum number of forks the repository should have. |
| `min_stars` | integer | No | Minimum number of stars the repository should have. |
| `fork_filter` | string | No | How to handle forks: 'include' (include forks), 'exclude' (exclude forks), 'only' (only forks). |
| `raw_response` | boolean | No | Return full API response if true, optimized response for AI agents if false. |
| `for_authenticated_user` | boolean | No | Search only in repositories accessible to the authenticated user (including private repos). Requires token scopes `repo`/`read:org`; sparse results compared to GitHub UI typically indicate insufficient token scopes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Follow Organization (GraphQL)

**Slug:** `GITHUB_FOLLOW_ORGANIZATION_GRAPHQL`

Tool to follow a GitHub organization using GraphQL. Use when you need to make the authenticated user follow an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `organizationId` | string | Yes | The global GraphQL node ID of the organization to follow. Must be a valid organization node ID. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used to track requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Follow a user

**Slug:** `GITHUB_FOLLOW_USER`

Allows the authenticated user to follow the GitHub user specified by `username`; this action is idempotent and the user cannot follow themselves.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user to be followed by the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Follow User (GraphQL)

**Slug:** `GITHUB_FOLLOW_USER_GRAPHQL`

Tool to follow a GitHub user using GraphQL. Use when you need to make the authenticated user follow another user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The global Node ID of the user to follow. Must be a valid GitHub user ID in the format 'MDQ6VXNlcjU4MzIzMQ=='. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used to track requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Force cancel a workflow run

**Slug:** `GITHUB_FORCE_CANCEL_WORKFLOW_RUN`

Forcefully cancels a queued or in-progress GitHub Actions workflow run, bypassing conditions like always() that would otherwise continue execution. Only use when the standard cancel endpoint fails. Cannot cancel completed workflow runs. Requires write permissions to the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. Note: Only workflow runs with status 'queued' or 'in_progress' can be canceled. Completed workflow runs cannot be canceled. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fork a gist

**Slug:** `GITHUB_FORK_GIST`

Forks a specified public gist, creating a copy under the authenticated user's account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier of the gist to be forked. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Generate release notes content for a release

**Slug:** `GITHUB_GENERATE_RELEASE_NOTES`

Generates Markdown release notes content (listing changes, pull requests, and contributors) for a GitHub repository release, customizable via tags and a configuration file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `tag_name` | string | Yes | The tag name for which the release notes are to be generated. This can be an existing tag or a new tag name. |
| `target_commitish` | string | No | Specifies the commitish value (e.g., a branch name, tag name, or commit SHA) that will be the target for the release's tag. This is required if the `tag_name` does not reference an existing tag. It is ignored if `tag_name` already exists. |
| `previous_tag_name` | string | No | The name of the previous tag to use as the starting point for the release notes. This manually specifies the range of changes to be included. If omitted, GitHub will attempt to automatically determine the previous release. |
| `configuration_file_path` | string | No | Specifies a path to a configuration file in the repository (e.g., `.github/release.yml`) containing settings for generating release notes. If unspecified, GitHub looks for a configuration file at ".github/release.yml" or ".github/release.yaml". If no such file is found, default settings are used. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a blob

**Slug:** `GITHUB_GET_A_BLOB`

Retrieves the raw, typically Base64-encoded, content of a file (blob) from a GitHub repository using its SHA hash, if the repository and blob SHA exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `file_sha` | string | Yes | The SHA-1 hash of the file (blob) to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a branch

**Slug:** `GITHUB_GET_A_BRANCH`

Retrieves detailed information for a specified branch within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `branch` | string | Yes | The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql). If 'HEAD' is provided, it will be resolved to the repository's default branch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get access restrictions

**Slug:** `GITHUB_GET_ACCESS_RESTRICTIONS`

Lists users, teams, and GitHub Apps with push access to a branch; this branch must be protected in repository settings for detailed restrictions, otherwise expect a 404 or empty response.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., username or organization name). This name is not case-sensitive. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not supported in this field. To manage branch protections with wildcard patterns, please refer to the GitHub GraphQL API documentation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a commit

**Slug:** `GITHUB_GET_A_COMMIT`

Retrieves a specific commit from a repository by its owner, name, and a valid commit reference (SHA, branch, or tag), supporting pagination for large diffs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The commit reference. Can be a commit SHA (e.g., '`sha`'), a branch name (e.g., 'heads/`BRANCH_NAME`' or simply '`BRANCH_NAME`'), or a tag name (e.g., 'tags/`TAG_NAME`'). For more information, see "[Git References](https://git-scm.com/book/en/v2/Git-Internals-Git-References)" in the Git documentation. |
| `page` | integer | No | Page number for paginating the commit's diff if it's too large. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | Number of results per page when paginating the commit's diff (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get admin branch protection

**Slug:** `GITHUB_GET_ADMIN_BRANCH_PROTECTION`

Checks if repository administrators are subject to the branch protection rules on a specific branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `branch` | string | Yes | Name of the branch (wildcard characters not allowed; use GraphQL API for wildcard support). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all API versions

**Slug:** `GITHUB_GET_ALL_API_VERSIONS`

Retrieves all officially supported, date-based (e.g., "2022-11-28") versions of the GitHub REST API from the /versions endpoint.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all contributor commit activity

**Slug:** `GITHUB_GET_ALL_CONTRIBUTOR_COMMIT_ACTIVITY`

Retrieves commit activity (total commits, weekly additions/deletions/commits) for all contributors to a repository; may require a retry if GitHub returns 202 while preparing data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, excluding `.git` (case-insensitive). |
| `owner` | string | Yes | Username of the repository owner (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all deployment protection rules for an environment

**Slug:** `GITHUB_GET_ALL_DEPLOYMENT_PROTECTION_RULES_FOR_ENV`

Lists all enabled custom deployment protection rules for a specific environment in a repository; the environment must exist and be configured for deployments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `environment_name` | string | Yes | The name of the environment. This name must be URL-encoded. For instance, if the environment name contains slashes (`/`), they should be replaced with `%2F`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a milestone

**Slug:** `GITHUB_GET_A_MILESTONE`

Retrieves detailed information for a specific milestone within a GitHub repository by its number.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `milestone_number` | integer | Yes | The unique sequential number identifying the milestone within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an app

**Slug:** `GITHUB_GET_AN_APP`

Retrieves publicly available information for an existing GitHub App, identified by its unique URL-friendly `app_slug`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_slug` | string | Yes | The app's unique, URL-friendly, lowercase, hyphenated identifier, derived from its name (e.g., 'my-awesome-app'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an artifact

**Slug:** `GITHUB_GET_AN_ARTIFACT`

Gets a specific artifact for a repository by `artifact_id`. This action retrieves the details of a specific artifact from a GitHub repository using the artifact's unique identifier. It allows users to access information about artifacts stored in the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `artifact_id` | integer | Yes | The unique identifier (ID) of the artifact to retrieve. This ID can be obtained from other API calls that list artifacts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an assignment

**Slug:** `GITHUB_GET_AN_ASSIGNMENT`

Retrieves detailed information for a specific GitHub Classroom assignment if the authenticated user is an administrator of the classroom.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignment_id` | integer | Yes | The unique identifier of the GitHub Classroom assignment to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an autolink reference of a repository

**Slug:** `GITHUB_GET_AN_AUTOLINK_REFERENCE_OF_A_REPOSITORY`

Retrieves a specific autolink reference (which automatically hyperlinks text like 'JIRA-123' to an external system) for a repository using its unique ID; requires administrator access to the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `autolink_id` | integer | Yes | The unique numeric identifier of the autolink configuration to retrieve. You can get this ID from the 'Get all autolinks of a repository' action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an environment

**Slug:** `GITHUB_GET_AN_ENVIRONMENT`

Retrieves the details of a specific deployment environment for a given repository, including its name, configurations, and current status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This name is not case-sensitive. |
| `environment_name` | string | Yes | The name of the deployment environment. The name must be URL-encoded; for example, any slashes `/` must be replaced with `%2F`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an environment public key

**Slug:** `GITHUB_GET_AN_ENVIRONMENT_PUBLIC_KEY`

Retrieves the public key for a specified GitHub repository environment, used to encrypt secrets for GitHub Actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `environment_name` | string | Yes | The name of the environment. The name must be URL encoded. For example, any slashes (`/`) in the name must be replaced with `%2F`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an environment secret

**Slug:** `GITHUB_GET_AN_ENVIRONMENT_SECRET`

Retrieves metadata (name and timestamps) for a single secret in a GitHub Actions environment. Note: The actual secret value is never returned by this API for security reasons.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (not case-sensitive). |
| `secret_name` | string | Yes | Name of the secret to retrieve. |
| `environment_name` | string | Yes | Name of the environment (must be URL-encoded if it contains special characters). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an environment variable

**Slug:** `GITHUB_GET_AN_ENVIRONMENT_VARIABLE`

Retrieves a specific environment variable from a GitHub Actions environment by repository owner, repository name, environment name, and variable name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the specific environment variable to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This is not case-sensitive. |
| `environment_name` | string | Yes | The name of the GitHub Actions environment. If the name contains special characters (e.g., slashes `/`), it must be URL-encoded (e.g., `staging/feature` becomes `staging%2Ffeature`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an issue

**Slug:** `GITHUB_GET_AN_ISSUE`

Retrieves detailed information about a specific issue in a repository using the owner, repository name, and issue number.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository (without `.git` extension). Not case-sensitive. |
| `owner` | string | Yes | Username of the account owning the repository. Not case-sensitive. |
| `issue_number` | integer | Yes | The identifying number of the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an issue comment

**Slug:** `GITHUB_GET_AN_ISSUE_COMMENT`

Action to get an issue comment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the issue comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an issue event

**Slug:** `GITHUB_GET_AN_ISSUE_EVENT`

Fetches details of a specific issue event for a given repository and event ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Username of the account owning the repository. Not case-sensitive. |
| `event_id` | integer | Yes | Unique identifier for the issue event. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization

**Slug:** `GITHUB_GET_AN_ORGANIZATION`

Get an organization

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization public key

**Slug:** `GITHUB_GET_AN_ORGANIZATION_PUBLIC_KEY`

Action for `GetAnOrganizationPublicKey`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization role

**Slug:** `GITHUB_GET_AN_ORGANIZATION_ROLE`

Retrieves a specific GitHub organization role by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `role_id` | integer | Yes | The unique numerical identifier of the role within the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization secret

**Slug:** `GITHUB_GET_AN_ORGANIZATION_SECRET`

Gets an organization secret's metadata (e.g., name, creation/update dates, visibility), but not its encrypted value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `secret_name` | string | Yes | Name of the secret. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization variable

**Slug:** `GITHUB_GET_AN_ORGANIZATION_VARIABLE`

Retrieves details (name, value, visibility, timestamps) of a specific, existing variable for an existing GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (case-insensitive). |
| `name` | string | Yes | Name of the organization variable. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get an organization webhook

**Slug:** `GITHUB_GET_AN_ORGANIZATION_WEBHOOK`

Retrieves the full configuration, including subscribed events and delivery settings, for an existing organization webhook.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a package for an organization

**Slug:** `GITHUB_GET_A_PACKAGE_FOR_AN_ORGANIZATION`

Retrieves a specific package (by type and name) from an organization, if both the package and organization exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `package_name` | string | Yes | The unique name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Type of the package. GitHub Gradle packages use `maven` type. Images from `ghcr.io` (Container registry) use `container` type. Use `docker` for images from `docker.pkg.github.com` (Docker registry), even if migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a package for a user

**Slug:** `GITHUB_GET_A_PACKAGE_FOR_A_USER`

Retrieves metadata for a specific package owned by a GitHub user, using package type, name, and username as identifiers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | GitHub username of the package owner. |
| `package_name` | string | Yes | Unique name of the package on GitHub Packages. |
| `package_type` | string | Yes | Specifies the package's type. Note: Gradle packages use 'maven'; ghcr.io images use 'container'; 'docker' can find images migrated from docker.pkg.github.com to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a package for the authenticated user

**Slug:** `GITHUB_GET_A_PACKAGE_FOR_THE_AUTHENTICATED_USER`

Retrieves detailed information for a specific package owned by the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `package_name` | string | Yes | The unique name of the package as it appears in the registry. |
| `package_type` | string | Yes | Type of the package. 'maven' for GitHub's Gradle registry; 'container' for Docker images in GitHub's Container registry (`ghcr.io`); 'docker' for images from GitHub's Docker registry (`docker.pkg.github.com`), including those migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a package version for an organization

**Slug:** `GITHUB_GET_A_PACKAGE_VERSION_FOR_AN_ORGANIZATION`

Retrieves detailed information for a specific version of a package within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `package_name` | string | Yes | Unique package name. |
| `package_type` | string | Yes | Package type. `maven` for GitHub Gradle registry. `container` for GitHub Container registry (`ghcr.io`) images. `docker` for images from GitHub Docker registry (`docker.pkg.github.com`), including migrated ones. |
| `package_version_id` | integer | Yes | Unique ID of the package version. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a package version for a user

**Slug:** `GITHUB_GET_A_PACKAGE_VERSION_FOR_A_USER`

Retrieves a specific public package version associated with a GitHub user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the account that owns the package. |
| `package_name` | string | Yes | The name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | The type of package. 'maven' is used for Gradle packages. 'container' is for images in GitHub's Container registry (ghcr.io). 'docker' can be used for images previously in GitHub's Docker registry (docker.pkg.github.com). |
| `package_version_id` | integer | Yes | The unique numeric identifier of the specific package version. Obtain this ID by first listing package versions using the 'list_package_versions_for_a_package_owned_by_a_user' action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get authenticated user package version

**Slug:** `GITHUB_GET_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER`

Retrieves detailed information for an existing specific package version associated with the authenticated user, identified by its type, name, and version ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `package_name` | string | Yes | The name of the package, which can be case-sensitive depending on the package type. |
| `package_type` | string | Yes | The package type. Note: GitHub's Gradle registry packages use 'maven'; ghcr.io images use 'container'; 'docker' can refer to images from docker.pkg.github.com. |
| `package_version_id` | integer | Yes | The unique numerical identifier (ID) of the specific package version. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a project

**Slug:** `GITHUB_GET_A_PROJECT`

Retrieves detailed information for a specific GitHub project (V2) using its project number and owner. Note: This action uses GitHub's Projects V2 REST API. The legacy Projects (classic) REST API was sunset on April 1, 2025. The project is identified by its number (visible in the project URL) and owner (either a username or organization name). If no owner is specified, the authenticated user is assumed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | No | The organization that owns the project. If provided, this takes precedence over username. |
| `username` | string | No | The GitHub username who owns the project. If not provided, defaults to the authenticated user. |
| `project_number` | integer | Yes | The project's sequential number (e.g., 1, 2, 3). This is displayed in the project URL as https://github.com/users/{username}/projects/{project_number}. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a project card

**Slug:** `GITHUB_GET_A_PROJECT_CARD`

Retrieves all details of a specific project card, given its unique `card_id`. DEPRECATION NOTICE: GitHub Projects (classic) REST API was sunset on April 1, 2025. This action only works with existing classic project cards that were created before the sunset date. For new projects, use GitHub Projects V2 (GraphQL API) instead.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `card_id` | integer | Yes | The unique identifier of the project card. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a project column (Classic - Deprecated)

**Slug:** `GITHUB_GET_A_PROJECT_COLUMN`

Retrieves detailed information for a specific project column from GitHub Projects (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ Returns column details including: id, name, url, project_url, cards_url, node_id, created_at, and updated_at timestamps.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `column_id` | integer | Yes | The unique integer identifier of the project column to retrieve. This ID can be obtained from the 'list_project_columns' action or from the column's API URL (e.g., /projects/columns/12345). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a pull request

**Slug:** `GITHUB_GET_A_PULL_REQUEST`

Retrieves a specific pull request from a GitHub repository using its owner, repository name, and pull request number.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the .git extension. This value is not case sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This value is not case sensitive. |
| `pull_number` | integer | Yes | The number that identifies the specific pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a reference

**Slug:** `GITHUB_GET_A_REFERENCE`

Retrieves a specific Git reference (e.g., a branch, tag, or fully qualified like 'heads/main') from a GitHub repository. The reference must exist in the repository; use 'list_matching_references' first if unsure what references are available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The Git reference to retrieve. IMPORTANT: The reference must actually exist in the repository; a 404 error will be returned if it does not exist. If you're unsure which references exist, use the 'list_matching_references' or 'get_a_branch' action first to discover available branches/tags. Must be formatted as `heads/<branch_name>` for branches or `tags/<tag_name>` for tags. Simple branch/tag names (e.g., `main`) will automatically be converted to `heads/<name>`. Use full format when retrieving tags (e.g., `tags/v1.0.0`). Note: Not all repositories use 'master'; many now use 'main' as the default branch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a release

**Slug:** `GITHUB_GET_A_RELEASE`

Gets a specific release from a GitHub repository, provided the repository is accessible and the release exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `release_id` | integer | Yes | The unique numerical identifier for the release. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a release asset

**Slug:** `GITHUB_GET_A_RELEASE_ASSET`

Gets metadata for a specific release asset in a GitHub repository, including a `browser_download_url` for downloading the asset.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). This name is not case sensitive. |
| `asset_id` | integer | Yes | The unique numeric identifier of the release asset. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a release by tag name

**Slug:** `GITHUB_GET_A_RELEASE_BY_TAG_NAME`

Gets a release from a GitHub repository by its tag name; the repository and a release with this tag must already exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tag` | string | Yes | Tag identifying the release to fetch. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository

**Slug:** `GITHUB_GET_A_REPOSITORY`

Retrieves detailed information about an existing and accessible GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository public key

**Slug:** `GITHUB_GET_A_REPOSITORY_PUBLIC_KEY`

Gets a repository's public key for encrypting secrets to be used in GitHub Actions, if the repository exists and is accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository readme

**Slug:** `GITHUB_GET_A_REPOSITORY_README`

Fetches the README file (if it exists and is accessible) from a specified GitHub repository, returning its Base64-encoded content and metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The specific git reference (branch name, tag name, or commit SHA) to retrieve the README from. If omitted, the repository's default branch is used. |
| `repo` | string | Yes | The name of the repository, excluding the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The GitHub account owner of the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository readme for a directory

**Slug:** `GITHUB_GET_A_REPOSITORY_README_FOR_A_DIRECTORY`

Retrieves the README file from a specified directory within a GitHub repository, optionally at a given commit, branch, or tag.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `dir` | string | Yes | Path to the directory containing the README file. |
| `ref` | string | No | Commit, branch, or tag name; defaults to the repository's default branch if not provided. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository ruleset

**Slug:** `GITHUB_GET_A_REPOSITORY_RULESET`

Retrieves a specific repository ruleset by its ID; if `includes_parents` is true, the search for this `ruleset_id` also extends to rulesets from parent organizations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, excluding `.git` extension; case-insensitive. |
| `owner` | string | Yes | Account owner of the repository (username or organization); case-insensitive. |
| `ruleset_id` | integer | Yes | Unique identifier of the ruleset. |
| `includes_parents` | boolean | No | If true, also returns rulesets configured at higher levels (e.g., organization) that apply to this repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository rule suite

**Slug:** `GITHUB_GET_A_REPOSITORY_RULE_SUITE`

Gets detailed information for a specific repository rule suite by its ID, including its evaluation status and the results of its individual rules.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, excluding the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the name of the organization that owns the repository. This name is not case-sensitive. |
| `rule_suite_id` | integer | Yes | The unique identifier of the rule suite. To obtain this ID, you can list rule suites for the repository (e.g., via `GET /repos/{owner}/{repo}/rulesets/rule-suites`) or organization (e.g., via `GET /orgs/{org}/rulesets/rule-suites`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository secret

**Slug:** `GITHUB_GET_A_REPOSITORY_SECRET`

Gets metadata (name, creation/update timestamps) for an existing repository secret, excluding its encrypted value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the secret to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository subscription

**Slug:** `GITHUB_GET_A_REPOSITORY_SUBSCRIPTION`

Gets the authenticated user's subscription details for a repository, indicating if they receive notifications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository variable

**Slug:** `GITHUB_GET_A_REPOSITORY_VARIABLE`

Gets a specific GitHub Actions variable by name from an accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the GitHub Actions variable to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. |
| `owner` | string | Yes | The username or organization that owns the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a repository webhook

**Slug:** `GITHUB_GET_A_REPOSITORY_WEBHOOK`

Returns the configuration of an existing webhook for a given repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). The name is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the hook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a review comment for a pull request

**Slug:** `GITHUB_GET_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST`

Retrieves a specific pull request review comment by its ID, provided the repository exists, is accessible, and the comment ID is valid.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository (without the `.git` extension). Not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). Not case-sensitive. |
| `comment_id` | integer | Yes | Unique identifier of the pull request review comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a review for a pull request

**Slug:** `GITHUB_GET_A_REVIEW_FOR_A_PULL_REQUEST`

Retrieves a specific review for a pull request using its owner, repository, pull request number, and review ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case sensitive. |
| `review_id` | integer | Yes | The unique numeric identifier of the review. |
| `pull_number` | integer | Yes | The numeric identifier of the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a secret for the authenticated user

**Slug:** `GITHUB_GET_A_SECRET_FOR_THE_AUTHENTICATED_USER`

Retrieves metadata (name, timestamps, visibility; not the value) for a specific, existing development environment secret associated with the authenticated user's GitHub Codespaces.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | The name of the secret to retrieve. This is case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a self hosted runner for an organization

**Slug:** `GITHUB_GET_A_SELF_HOSTED_RUNNER_FOR_AN_ORGANIZATION`

Retrieves detailed information about a specific self-hosted runner registered within a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The login name of the GitHub organization. This name is not case-sensitive. |
| `runner_id` | integer | Yes | Unique identifier (ID) of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a self hosted runner for a repository

**Slug:** `GITHUB_GET_A_SELF_HOSTED_RUNNER_FOR_A_REPOSITORY`

Gets a specific self-hosted runner for a repository by its unique ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |
| `runner_id` | integer | Yes | The unique identifier (ID) of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get assignment grades

**Slug:** `GITHUB_GET_ASSIGNMENT_GRADES`

Retrieves all grades for an existing GitHub Classroom assignment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignment_id` | integer | Yes | The unique identifier of the classroom assignment. This can be obtained from the list_assignments_for_a_classroom action or from the assignment's URL in GitHub Classroom. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a tag

**Slug:** `GITHUB_GET_A_TAG`

Retrieves detailed information for a specific Git tag object from a GitHub repository, using the SHA of the tag object itself.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization that owns the repository (case-insensitive). |
| `tag_sha` | string | Yes | SHA of the Git tag object to retrieve; this is the SHA of the tag object, not the commit it may point to. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a team by name

**Slug:** `GITHUB_GET_A_TEAM_BY_NAME`

Retrieves a GitHub team by its slug from a specific organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the team name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a thread

**Slug:** `GITHUB_GET_A_THREAD`

Retrieves a specific GitHub notification thread using its unique `thread_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thread_id` | integer | Yes | The unique identifier of the notification thread, typically obtained from a list of notifications. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a thread subscription for the authenticated user

**Slug:** `GITHUB_GET_A_THREAD_SUBSCRIPTION_FOR_THE_AUTHENTICATED_USER`

Retrieves the authenticated user's subscription details for a specific notification thread, identified by `thread_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thread_id` | integer | Yes | The unique identifier of the notification thread. This ID corresponds to the `id` field returned when retrieving notifications, for example, through the 'List notifications for the authenticated user' (GET /notifications) operation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository files and directories

**Slug:** `GITHUB_GET_A_TREE`

Browse and list all files/directories in a GitHub repository. Efficiently retrieves the complete repository structure in a single API call when used with recursive mode. Perfect for analyzing codebase structure, finding specific files, or getting an overview of repository contents without cloning.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name without owner or .git extension (e.g., for github.com/kubernetes/kubernetes, repo is 'kubernetes'). |
| `owner` | string | Yes | Repository owner username or organization name (e.g., for github.com/kubernetes/kubernetes, owner is 'kubernetes'). |
| `tree_sha` | string | Yes | Branch name (e.g., 'main', 'master'), tag name (e.g., 'v1.0.0'), or commit SHA to retrieve the tree from. Use branch name to get the current state of that branch. |
| `recursive` | string | No | Set to True (or '1'/'true') to fetch the ENTIRE repository file tree recursively (all files and directories in one call). Set to False or leave empty to fetch only the top-level files/folders. For browsing or analyzing the full repository structure, use recursive=True. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a user

**Slug:** `GITHUB_GET_A_USER`

Retrieves the public profile information for an existing GitHub user, specified by their username.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user to retrieve. This is case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a webhook configuration for an organization

**Slug:** `GITHUB_GET_A_WEBHOOK_CONFIGURATION_FOR_AN_ORGANIZATION`

Retrieves the configuration for a specific webhook associated with a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization's name (case-insensitive). |
| `hook_id` | integer | Yes | Unique ID of the webhook (see `X-GitHub-Hook-ID` header in webhook deliveries). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a webhook configuration for a repository

**Slug:** `GITHUB_GET_A_WEBHOOK_CONFIGURATION_FOR_A_REPOSITORY`

Returns the configuration for an existing webhook on the specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the hook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a webhook delivery for an organization webhook

**Slug:** `GITHUB_GET_A_WEBHOOK_DELIVERY_FOR_AN_ORGANIZATION_WEBHOOK`

Returns detailed information for a specific delivery attempt of a webhook configured for the specified GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the organization webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery. |
| `delivery_id` | integer | Yes | The unique identifier of the specific webhook delivery attempt. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a workflow

**Slug:** `GITHUB_GET_A_WORKFLOW`

Retrieves detailed information for a specific GitHub Actions workflow in a repository, identified by either its numeric ID or its filename.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name owning the repository (case-insensitive). |
| `workflow_id` | integer | No | Unique numeric identifier of the workflow; use this or `workflow_name`. |
| `workflow_name` | string | No | Full name of the workflow file (e.g., `ci.yml`); use this or `workflow_id`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a workflow run

**Slug:** `GITHUB_GET_A_WORKFLOW_RUN`

Gets a specific workflow run by its ID from a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository (case-insensitive, without .git extension). |
| `owner` | string | Yes | The username or organization name that owns the repository (not case-sensitive). |
| `run_id` | integer | Yes | Unique ID of the workflow run. |
| `exclude_pull_requests` | boolean | No | If true, excludes pull request data; the `pull_requests` array in the response will be empty. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a workflow run attempt

**Slug:** `GITHUB_GET_A_WORKFLOW_RUN_ATTEMPT`

Retrieves detailed information for a specific attempt of a workflow run in a GitHub repository, including its status, conclusion, and timings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository, such as a GitHub username or organization name. This name is not case sensitive. |
| `run_id` | integer | Yes | The unique identifier (ID) of the workflow run. This ID is specific to a repository and can be obtained from API calls that list workflow runs. |
| `attempt_number` | integer | Yes | The attempt number of the specific workflow run. Each re-run of a workflow creates a new attempt number, starting from 1. |
| `exclude_pull_requests` | boolean | No | If `true`, excludes pull request data from the API response; the `pull_requests` array in the response will then be empty. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get billing usage report for user

**Slug:** `GITHUB_GET_BILLING_USAGE_REPORT_USER`

Retrieves the billing usage report for a specified GitHub user. Use when you need to analyze billing costs and usage patterns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day` | integer | No | If specified, only return results for a single day. The value of `day` is an integer between `1` and `31`. If no `year` or `month` is specified, the default `year` and `month` are used. |
| `year` | integer | No | If specified, only return results for a single year. The value of `year` is an integer with four digits representing a year. For example, `2025`. Default value is the current year. |
| `month` | integer | No | If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. If no year is specified the default `year` is used. |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get branch protection

**Slug:** `GITHUB_GET_BRANCH_PROTECTION`

Retrieves branch protection settings for a specific, existing, and accessible branch in a GitHub repository; protection feature availability varies by GitHub product plan.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository (username or organization name); not case-sensitive. |
| `branch` | string | Yes | Name of the branch; wildcard characters are not supported (use GitHub GraphQL API for wildcard matching). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog models

**Slug:** `GITHUB_GET_CATALOG_MODELS`

Tool to retrieve the list of AI models available in the GitHub Models catalog. Use when you need to discover available models, their capabilities, token limits, and supported modalities.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a check run

**Slug:** `GITHUB_GET_CHECK_RUN`

Retrieves detailed information for a specific check run within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `check_run_id` | integer | Yes | The unique numerical identifier of the check run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a check suite

**Slug:** `GITHUB_GET_CHECK_SUITE`

Retrieves a specific check suite (a collection of check runs) by its ID from a repository accessible to the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case sensitive.  |
| `owner` | string | Yes | The username of the account that owns the repository. This value is not case sensitive. |
| `check_suite_id` | integer | Yes | The unique identifier of the check suite. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a classroom

**Slug:** `GITHUB_GET_CLASSROOM`

Retrieves details for a specific GitHub Classroom. Requires the authenticated user to be an administrator of the classroom.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `classroom_id` | integer | Yes | The unique identifier of the classroom. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a code of conduct

**Slug:** `GITHUB_GET_CODE_OF_CONDUCT`

Retrieves the full details of a specific GitHub code of conduct using its unique key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | Unique key for a specific code of conduct. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Code of Conduct (GraphQL)

**Slug:** `GITHUB_GET_CODE_OF_CONDUCT_GRAPH_QL`

Tool to look up a code of conduct by its key using GitHub's GraphQL API. Use when you need to fetch code of conduct details as part of a GraphQL workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The unique key identifier for the code of conduct to retrieve. Common keys include 'contributor_covenant', 'citizen_code_of_conduct', and 'django'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a CodeQL database for a repository

**Slug:** `GITHUB_GET_CODEQL_DATABASE`

Gets an existing CodeQL database (including a download URL) for a specified language in an accessible repository, if one has been successfully built for that language.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `language` | string | Yes | The programming language of the CodeQL database to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a code scanning alert

**Slug:** `GITHUB_GET_CODE_SCANNING_ALERT`

Retrieves a specific code scanning alert, which identifies potential code vulnerabilities or errors, by its number from the specified GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `alert_number` | integer | Yes | Unique number identifying the code scanning alert (must be >= 1), found in the alert's URL or API responses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a code scanning analysis for a repository

**Slug:** `GITHUB_GET_CODE_SCANNING_ANALYSIS`

Retrieves detailed information for a specific code scanning analysis on an accessible repository, identified by its `analysis_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username or organization name owning the repository (not case-sensitive). |
| `analysis_id` | integer | Yes | Unique ID of the code scanning analysis, obtained by listing all analyses for the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a code scanning default setup configuration

**Slug:** `GITHUB_GET_CODE_SCANNING_DEFAULT_SETUP`

Gets the default setup configuration for code scanning in a repository, including state, languages, query suite, and schedule for a repository if it exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a codespace for the authenticated user

**Slug:** `GITHUB_GET_CODESPACE`

Call to retrieve detailed information for a `codespace_name` belonging to the authenticated user, ensuring the codespace exists and is accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | Unique name or identifier of the codespace, typically auto-generated upon creation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get commit authors

**Slug:** `GITHUB_GET_COMMIT_AUTHORS`

Fetches commit authors identified during a repository import, used to map authors from an external VCS to GitHub accounts. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This name is not case-sensitive. |
| `since` | integer | No | An optional author ID. If provided, only authors with an ID greater than this specified ID will be returned. This ID refers to the `id` field of an author object in the response, and can be used for paginating through the list of authors. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a commit comment

**Slug:** `GITHUB_GET_COMMIT_COMMENT`

Retrieves the full details of a specific commit comment in a GitHub repository, using its unique identifier.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the commit comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a commit object

**Slug:** `GITHUB_GET_COMMIT_OBJECT`

Retrieves detailed information (including author, committer, message, tree, parents, verification) for a specific commit in a GitHub repository, identified by its SHA.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | Account owner of the repository. The name is not case sensitive. |
| `commit_sha` | string | Yes | SHA identifier of the commit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get commit signature protection

**Slug:** `GITHUB_GET_COMMIT_SIGNATURE_PROTECTION`

Gets the commit signature protection status for a branch in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `branch` | string | Yes | The name of the branch. This name IS case-sensitive (unlike owner and repo). Wildcard characters are not allowed. To use wildcard characters in branch names, consider using the GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get commit statuses

**Slug:** `GITHUB_GET_COMMIT_STATUSES`

List all statuses for a commit reference (SHA, branch, or tag) in reverse chronological order. Use when you need to check CI/CD status results from various systems for a specific commit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The commit reference. Can be a commit SHA, branch name (heads/BRANCH_NAME), or tag name (tags/TAG_NAME). |
| `page` | integer | No | Page number of results to fetch. Default: 1 |
| `repo` | string | Yes | The name of the repository without the .git extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | Number of results per page, maximum 100. Default: 30 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get community profile metrics

**Slug:** `GITHUB_GET_COMMUNITY_PROFILE_METRICS`

Retrieves a repository's community profile metrics, including health percentage and the presence of key community files (e.g., README, LICENSE).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without '.git' extension. Not case-sensitive. |
| `owner` | string | Yes | Username of the account owning the repository. Not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get contextual information for a user

**Slug:** `GITHUB_GET_CONTEXTUAL_INFORMATION_FOR_A_USER`

Gets contextual hovercard information for a GitHub user; `subject_type` and `subject_id` can be jointly provided for more specific details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | GitHub username for whom to retrieve hovercard data. |
| `subject_id` | string | No | Entity ID for `subject_type` for more specific hovercard context; required if `subject_type` is also given. |
| `subject_type` | string ("organization" | "repository" | "issue" | "pull_request") | No | Entity type for more specific hovercard context (e.g., 'repository'); required if `subject_id` is also given. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a custom deployment protection rule

**Slug:** `GITHUB_GET_CUSTOM_DEPLOYMENT_PROTECTION_RULE`

Retrieves a specific custom deployment protection rule (used by GitHub Apps for external validation or manual approval of deployments) for a given environment in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This name is not case sensitive. |
| `environment_name` | string | Yes | The name of the environment. The name must be URL encoded if it contains special characters (e.g., any slashes `/` must be replaced with `%2F`). |
| `protection_rule_id` | integer | Yes | The unique identifier of the custom deployment protection rule. Get this ID from GITHUB_GET_ALL_DEPLOYMENT_PROTECTION_RULES_FOR_AN_ENVIRONMENT action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get default attributes for a codespace

**Slug:** `GITHUB_GET_DEFAULT_ATTRIBUTES_FOR_A_CODESPACE`

Get pre-flight data (e.g., default location, devcontainer path) for creating a Codespace in a given repository (must exist and be accessible), optionally for a specific Git ref.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | Git reference (branch name, tag name, or commit SHA) for devcontainer configuration. If omitted, the repository's default branch is used. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `client_ip` | string | No | Optional IP address to override default location auto-detection (e.g., for proxied requests). If unspecified, location is inferred from source IP. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get default workflow permissions for an organization

**Slug:** `GITHUB_GET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_AN_ORGANIZATION`

Gets the default GITHUB_TOKEN workflow permissions and settings for a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get default workflow permissions for a repository

**Slug:** `GITHUB_GET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_A_REPOSITORY`

Gets the default workflow permissions (`read` or `write`) for the GITHUB_TOKEN and whether it can approve pull request reviews in an existing and accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a diff of the dependencies between commits

**Slug:** `GITHUB_GET_DEPENDENCY_DIFF`

Gets the dependency diff between two Git revisions in a repository, where 'basehead' specifies the revisions and 'name' can optionally scope to a specific manifest file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The optional full path, relative to the repository root, of a specific dependency manifest file (e.g., `package-lock.json`, `pom.xml`). If provided, the diff will be scoped to this file. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `basehead` | string | Yes | A string specifying the base and head Git revisions to compare, in the format `BASE_REF...HEAD_REF`. `BASE_REF` and `HEAD_REF` can be commit SHAs, branch names, or tags. For example, `main...develop` or `v1.0.0...v1.1.0`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a deploy key

**Slug:** `GITHUB_GET_DEPLOY_KEY`

Gets a specific deploy key, identified by its `key_id`, for the GitHub repository specified by `owner` and `repo`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `key_id` | integer | Yes | The unique numerical identifier of the deploy key. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a deployment

**Slug:** `GITHUB_GET_DEPLOYMENT`

Gets a specific deployment by ID from a repository, provided the repository and deployment ID exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `deployment_id` | integer | Yes | The unique numeric identifier of the deployment to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a deployment branch policy

**Slug:** `GITHUB_GET_DEPLOYMENT_BRANCH_POLICY`

Retrieves a specific deployment branch policy for an environment in a repository, identified by its unique ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `branch_policy_id` | integer | Yes | The unique identifier of the branch policy. |
| `environment_name` | string | Yes | The name of the environment. The name must be URL encoded; for example, replace any slashes in the name with `%2F`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a deployment status

**Slug:** `GITHUB_GET_DEPLOYMENT_STATUS`

Retrieves a specific deployment status by its ID for a given deployment within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `status_id` | integer | Yes | The unique identifier of the deployment status. |
| `deployment_id` | integer | Yes | The unique identifier of the deployment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get details about a codespace export

**Slug:** `GITHUB_GET_DETAILS_ABOUT_A_CODESPACE_EXPORT`

Retrieves detailed information about a specific export of a codespace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `export_id` | string | Yes | The ID of the export operation. Currently, only 'latest' is supported, which refers to the most recent export for the specified codespace. |
| `codespace_name` | string | Yes | The unique name of the codespace. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a discussion

**Slug:** `GITHUB_GET_DISCUSSION`

Fetches a specific discussion by its number from a team within an organization. This is a read-only action that retrieves discussion details including title, body, author information, comment count, and reactions. The authenticated user must be a member of the organization to access team discussions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `team_slug` | string | Yes | The team's slug (URL-friendly name). |
| `discussion_number` | integer | Yes | The discussion's unique number within the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a discussion comment

**Slug:** `GITHUB_GET_DISCUSSION_COMMENT`

Fetches a specific comment from a team discussion within a specific organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This field is not case-sensitive. |
| `team_slug` | string | Yes | The slug of the team name. This is the team name converted to lowercase, with spaces and special characters replaced by hyphens. For example, 'Developer Tools Team' becomes 'developer-tools-team'. |
| `comment_number` | integer | Yes | The unique number identifying the comment within the discussion. |
| `discussion_number` | integer | Yes | The unique number identifying the discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get emojis

**Slug:** `GITHUB_GET_EMOJIS`

Lists all emojis available for use on GitHub, including custom and Unicode emojis.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Enterprise Member Invitation

**Slug:** `GITHUB_GET_ENTERPRISE_MEMBER_INVITATION`

Tool to look up a pending enterprise unaffiliated member invitation by invitee and enterprise. Use when you need to check the status of a specific invitation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_login` | string | Yes | The login (username) of the user invited to join the enterprise. This is the GitHub username of the invitee. |
| `enterprise_slug` | string | Yes | The slug of the enterprise the user was invited to join. Enterprise slugs are used to identify enterprises in GitHub URLs (e.g., 'acme-corp'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get feeds

**Slug:** `GITHUB_GET_FEEDS`

Fetches a list of available GitHub feed URLs for the authenticated user.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a gist

**Slug:** `GITHUB_GET_GIST`

Fetches a specific GitHub gist by its `gist_id`, returning comprehensive details if the gist exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique hexadecimal string identifier of the gist, found in its URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a gist comment

**Slug:** `GITHUB_GET_GIST_COMMENT`

Retrieves a specific Gist comment by its ID and the Gist's ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique alphanumeric identifier of the Gist (found in the Gist URL after gist.github.com/username/). |
| `comment_id` | integer | Yes | The unique numeric identifier of the comment. Obtain this from listing gist comments or from the comment URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a gist revision

**Slug:** `GITHUB_GET_GIST_REVISION`

Retrieves a specific revision of a gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | Yes | The SHA (Secure Hash Algorithm) identifier of a specific gist revision. This is a 40-character hexadecimal string. |
| `gist_id` | string | Yes | The unique identifier of the gist. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get GitHub Actions cache usage for an organization

**Slug:** `GITHUB_GET_GITHUB_ACTIONS_CACHE_USAGE_FOR_AN_ORGANIZATION`

Retrieves total GitHub Actions cache usage statistics for an organization, including active cache count and size across all repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get github actions cache usage for a repository

**Slug:** `GITHUB_GET_GITHUB_ACTIONS_CACHE_USAGE_FOR_A_REPOSITORY`

Retrieves the total count of active GitHub Actions caches and their combined size in bytes for a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get github actions permissions for an organization

**Slug:** `GITHUB_GET_GITHUB_ACTIONS_PERMISSIONS_FOR_AN_ORGANIZATION`

Gets the GitHub Actions permissions for a specified organization, detailing repository enablement and allowed actions policies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get GitHub Actions permissions for a repository

**Slug:** `GITHUB_GET_GITHUB_ACTIONS_PERMISSIONS_FOR_A_REPOSITORY`

Gets the GitHub Actions permissions policy for a repository, including its enabled status and the scope of allowed actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get billing premium request usage

**Slug:** `GITHUB_GET_GITHUB_BILLING_PREMIUM_REQUEST_USAGE_REPORT_USER`

Tool to get billing premium request usage report for a GitHub user. Use when you need to retrieve usage data for premium features like Copilot or AI models.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day` | integer | No | If specified, only return results for a single day. The value of `day` is an integer between `1` and `31`. If no `year` or `month` is specified, the default `year` and `month` are used. |
| `year` | integer | No | If specified, only return results for a single year. The value of `year` is an integer with four digits representing a year. For example, `2025`. Default value is the current year. |
| `model` | string | No | The model name to query usage for. The name is not case sensitive. |
| `month` | integer | No | If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. Default value is the current month. If no year is specified the default `year` is used. |
| `product` | string | No | The product name to query usage for. The name is not case sensitive. |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get billing usage summary for user

**Slug:** `GITHUB_GET_GITHUB_BILLING_USAGE_SUMMARY_FOR_USER`

Tool to retrieve billing usage summary for a GitHub user account. Use when tracking usage costs, monitoring billing details, or generating usage reports for a specific user. Note: This endpoint only returns data for the past 24 months and is currently in public preview.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day` | integer | No | If specified, only return results for a single day. The value of day is an integer between 1 and 31. If no year or month is specified, the default year and month are used. |
| `sku` | string | No | The SKU to query for usage. |
| `year` | integer | No | If specified, only return results for a single year. The value of year is an integer with four digits representing a year (e.g., 2025). Default value is the current year. |
| `month` | integer | No | If specified, only return results for a single month. The value of month is an integer between 1 and 12. Default value is the current month. If no year is specified the default year is used. |
| `product` | string | No | The product name to query usage for. The name is not case sensitive. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `repository` | string | No | The repository name to query for usage in the format owner/repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get github meta information

**Slug:** `GITHUB_GET_GITHUB_META_INFORMATION`

Fetches GitHub's publicly available metadata, useful for configuring network security policies or IP allow-listing.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get github pages build

**Slug:** `GITHUB_GET_GITHUB_PAGES_BUILD`

Retrieves detailed information about a specific GitHub Pages build for a repository, which must have GitHub Pages enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `build_id` | integer | Yes | The unique identifier of the GitHub Pages build to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a gitignore template

**Slug:** `GITHUB_GET_GITIGNORE_TEMPLATE`

Retrieves a specific .gitignore template from GitHub by its name, which must be an existing template in GitHub's collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the .gitignore template to retrieve (e.g., 'Python', 'Node'). This is case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a global security advisory

**Slug:** `GITHUB_GET_GLOBAL_SECURITY_ADVISORY`

Retrieve a global GitHub security advisory by its GHSA identifier. Use this to get detailed information about vulnerabilities including severity, affected packages, CVSS scores, and references.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ghsa_id` | string | Yes | The GHSA (GitHub Security Advisory) identifier of the advisory. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch GraphQL Node

**Slug:** `GITHUB_GET_GRAPHQL_NODE`

Tool to fetch any GitHub object by its global node ID. Use when you have a node_id and need to retrieve the corresponding object details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The global node ID of the object to fetch. This is the GraphQL global identifier (node_id) returned by GitHub's API, not the numeric ID. |
| `fragment` | string | No | Optional GraphQL fragment to specify which fields to retrieve from the returned node. Use GraphQL inline fragment syntax (e.g., '... on User { login name }'). If omitted, only the 'id' field will be returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get GraphQL rate limit

**Slug:** `GITHUB_GET_GRAPHQL_RATE_LIMIT`

Tool to retrieve the authenticated client's GitHub GraphQL API rate limit information. Use when you need to check remaining quota, current usage, or reset time for GraphQL requests.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `dry_run` | boolean | No | If true, calculate the cost for the query without evaluating it. Use this to estimate query costs without consuming actual quota. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get information about a sarif upload

**Slug:** `GITHUB_GET_INFORMATION_ABOUT_A_SARIF_UPLOAD`

Retrieves detailed information, including processing status and results URL, about a specific SARIF (Static Analysis Results Interchange Format) upload for a repository, uniquely identified by its sarif_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account that owns the repository (not case-sensitive). |
| `sarif_id` | string | Yes | Unique identifier of the SARIF upload, returned when a SARIF file is successfully uploaded. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get interaction restrictions for an organization

**Slug:** `GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION`

Retrieves interaction restrictions for an organization, showing which GitHub user types can interact with its public repositories and when restrictions expire; returns an empty response if no restrictions are set.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get interaction restrictions for a repository

**Slug:** `GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY`

Retrieves active interaction restrictions for a repository, detailing which user groups are limited from activities like commenting or creating pull requests, and when these restrictions expire.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get interaction restrictions for public repositories

**Slug:** `GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_PUBLIC_REPOS`

Retrieves currently active interaction restrictions for the authenticated user's public repositories.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a label

**Slug:** `GITHUB_GET_LABEL`

Retrieves a specific label by its name from a specified GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the label to retrieve. GitHub's API treats label names as case-insensitive for this operation. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a username or organization name). The name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get large files

**Slug:** `GITHUB_GET_LARGE_FILES`

Lists files larger than 100MB identified during a previous source import for the specified repository. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get latest pages build

**Slug:** `GITHUB_GET_LATEST_PAGES_BUILD`

Retrieves information about the most recent GitHub Pages build for a repository, which must exist, be accessible, have GitHub Pages enabled, and have at least one prior build.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the name of the organization that owns the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a license

**Slug:** `GITHUB_GET_LICENSE`

Call this action to retrieve comprehensive details for a specific software license recognized by GitHub, using its unique license key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `license` | string | Yes | The unique identifier (key) of the license. This is typically the SPDX license identifier (e.g., 'mit', 'apache-2.0'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get License (GraphQL)

**Slug:** `GITHUB_GET_LICENSE_GRAPH_QL`

Tool to look up an open source license by its SPDX ID using GitHub's GraphQL API. Use when you need to fetch license details for compliance tracking or repository setup.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | Yes | The license's downcased SPDX ID. Common keys include 'mit', 'apache-2.0', 'gpl-3.0', 'bsd-3-clause', 'lgpl-3.0', 'mpl-2.0', 'agpl-3.0', 'unlicense', 'isc', 'bsd-2-clause'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get octocat

**Slug:** `GITHUB_GET_OCTOCAT`

Fetches an ASCII art representation of GitHub's Octocat, suitable for text-based displays.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `s` | string | No | Custom message for Octocat's speech bubble. If omitted or empty, a random 'Zen of GitHub' message will be displayed instead. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Customize OIDC subject claim template

**Slug:** `GITHUB_GET_OIDC_SUBJECT_CLAIM_TEMPLATE`

Retrieves the OpenID Connect (OIDC) subject claim customization template for a repository, which defines the `sub` claim structure in OIDC tokens for GitHub Actions workflows; returns the default configuration if no customization is applied.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get allowed actions and workflows for an org

**Slug:** `GITHUB_GET_ORG_ALLOWED_ACTIONS`

Gets the list of allowed actions and reusable workflows for an organization when the 'allowed_actions' policy is set to 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique identifier or name of the organization. This field is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get organization audit log

**Slug:** `GITHUB_GET_ORGANIZATION_AUDIT_LOG`

Tool to retrieve an organization's audit log events for security and compliance investigations. Use when tracking organizational changes, security audits, or compliance monitoring. Requires organization owner permissions and read:audit_log scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `after` | string | No | A cursor for pagination. Returns events after this cursor. Use the cursor from the response to fetch the next page. |
| `order` | string | No | The order of audit log events. Can be 'asc' (ascending, oldest first) or 'desc' (descending, newest first). Defaults to 'desc'. |
| `before` | string | No | A cursor for pagination. Returns events before this cursor. Use the cursor from the response to fetch the previous page. |
| `phrase` | string | No | A search phrase to filter audit log events. For example, 'action:org' for organization-related events, or 'actor:octocat' for events by a specific user. |
| `include` | string | No | The event types to include. Can be 'web' (web interface events), 'git' (Git events), or 'all'. Defaults to 'web'. |
| `per_page` | integer | No | The number of results per page (max 100). Defaults to 30. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a custom property for an organization

**Slug:** `GITHUB_GET_ORGANIZATION_CUSTOM_PROPERTY`

Retrieves the definition (schema) of a specific, existing custom property for an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization's login name (not case-sensitive). |
| `custom_property_name` | string | Yes | Name of the custom property to retrieve (case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get organization project item

**Slug:** `GITHUB_GET_ORGANIZATION_PROJECT_ITEM`

Tool to get an item from an organization-owned GitHub Projects V2 project. Use when you need to retrieve details about a specific project item including its content, fields, timestamps, and creator information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `fields` | string | No | Limit results to specific fields, by their IDs. If not specified, the title field will be returned. Format: fields[]=123&fields[]=456 or fields=123,456,789 |
| `item_id` | integer | Yes | The unique identifier of the project item. |
| `project_number` | integer | Yes | The project's number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get organization public key for Codespaces secrets

**Slug:** `GITHUB_GET_ORGANIZATION_PUBLIC_KEY`

Retrieves an organization's public key, which must be used to encrypt secret values before they are configured for Codespaces.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Public Key For Secret Encryption

**Slug:** `GITHUB_GET_ORGANIZATION_PUBLIC_KEY_FOR_DEPENDABOT`

Retrieves the public key for an existing GitHub organization, required for encrypting Dependabot secrets. Requires admin:org scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. Requires admin:org scope (must be an organization admin). This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get org dev environment secret safely

**Slug:** `GITHUB_GET_ORG_DEV_ENVIRONMENT_SECRET_SAFELY`

Retrieves metadata for a specific secret available to an organization's GitHub Codespaces without exposing its encrypted value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (login). The name is not case-sensitive. |
| `secret_name` | string | Yes | The name of the development environment secret to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get custom OIDC subject claim template

**Slug:** `GITHUB_GET_ORG_OIDC_SUBJECT_CLAIM_TEMPLATE`

Retrieves the OpenID Connect (OIDC) subject claim customization template for a GitHub organization, which defines how the `sub` claim in OIDC tokens for workflows is constructed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization (case-insensitive). This is the organization's login/username, not a numeric ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a dns health check for github pages

**Slug:** `GITHUB_GET_PAGES_DNS_HEALTH_CHECK`

Retrieves the DNS health check status (e.g., CNAME/A records, HTTPS) for a GitHub Pages site; the check may be pending (HTTP 202) on initial calls or after site changes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a GitHub Pages site

**Slug:** `GITHUB_GET_PAGES_SITE`

Retrieves information for a GitHub Pages site, which must be enabled for the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get page views

**Slug:** `GITHUB_GET_PAGE_VIEWS`

Retrieves page view statistics for a repository over the last 14 days, including total views, unique visitors, and a daily or weekly breakdown.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | string ("day" | "week") | No | The time unit for which to aggregate page views. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get pending deployments for a workflow run

**Slug:** `GITHUB_GET_PENDING_DEPLOYMENTS_FOR_A_WORKFLOW_RUN`

Retrieves pending deployment environments for a specific workflow run that are awaiting approval due to protection rules.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository (user or organization); not case-sensitive. |
| `run_id` | integer | Yes | Unique numerical identifier of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get project permission for a user

**Slug:** `GITHUB_GET_PROJECT_PERMISSION_FOR_A_USER`

Retrieves permission information for a GitHub project (classic) collaborator. Returns the permission level and full user object for a collaborator on a GitHub project (classic). The permission returned can be admin, write, read, or none.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the project owner or the user whose permission is being checked. |
| `project_id` | integer | Yes | The unique identifier (number) of the project. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get public key for secret encryption

**Slug:** `GITHUB_GET_PUBLIC_KEY_FOR_SECRET_ENCRYPTION`

Retrieves a repository's public key for encrypting GitHub Codespaces secrets; requires `repo` scope or equivalent read access to codespaces secrets for private repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (not case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get public key for the authenticated user

**Slug:** `GITHUB_GET_PUBLIC_KEY_FOR_THE_AUTHENTICATED_USER`

Retrieves the authenticated user's public key for encrypting GitHub Codespaces secrets. The returned key must be used with libsodium sealed box encryption before creating or updating secrets via the API.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get pull request review protection

**Slug:** `GITHUB_GET_PULL_REQUEST_REVIEW_PROTECTION`

Retrieves the pull request review protection settings for a specific branch in a GitHub repository, if such protection is configured.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. For example, in 'octocat/Hello-World', 'Hello-World' is the repository name. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. For example, in 'octocat/Hello-World', 'octocat' is the owner. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not allowed. To use wildcard characters in branch names, refer to the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get rate limit status for the authenticated user

**Slug:** `GITHUB_GET_RATE_LIMIT_STATUS_FOR_THE_AUTHENTICATED_USER`

Retrieves the authenticated user's current GitHub API rate limit status, including usage and limits across different resource categories.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Raw Repository Content

**Slug:** `GITHUB_GET_RAW_REPOSITORY_CONTENT`

Tool to fetch raw file content from a GitHub repository. Returns raw bytes in whatever format the file uses (JSON, CSV, binary, etc.) — parsing and validation are the caller's responsibility. Ensure owner, repo, ref, and path are consistent when combining with other GitHub tools to avoid mismatched-ref errors.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The branch name, tag name, or commit SHA to fetch the file from. Defaults to the repository's default branch (usually 'main' or 'master'). Recommended to pass explicitly — omitting it fetches from the default branch, which may not match the ref used in other tool calls and can yield unexpected or missing content. |
| `path` | string | Yes | The file path within the repository, relative to the repository root. Use forward slashes for directory separators (e.g., 'src/utils/helper.js'). Do not include leading slash. Do NOT pass a full GitHub URL - only the relative path within the repo. Must exactly match the file path as it exists in the repository — use GITHUB_GET_A_TREE to discover valid paths rather than guessing directory structure. |
| `repo` | string | Yes | The repository name (not the full URL). This is the repository name shown in the repository URL (e.g., for github.com/torvalds/linux, the repo is 'linux'). Do not include '.git' suffix. Case-insensitive. |
| `owner` | string | Yes | The GitHub username or organization name that owns the repository. This is the account name shown in the repository URL (e.g., for github.com/torvalds/linux, the owner is 'torvalds'). Case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get allowed actions and workflows for a repository

**Slug:** `GITHUB_GET_REPO_ALLOWED_ACTIONS`

Gets the settings for allowed actions and reusable workflows in a repository. Requires the repository's `allowed_actions` policy to be set to `selected` (returns 409 if set to `all` or `local_only`).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository development environment secret

**Slug:** `GITHUB_GET_REPO_DEV_ENV_SECRET`

Gets metadata (name, creation/update timestamps) for a specific, existing development environment secret (Codespaces secret) in a repository, without exposing its value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive.  |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |
| `secret_name` | string | Yes | The name of the development environment secret to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository attestations

**Slug:** `GITHUB_GET_REPOS_ATTESTATIONS`

Tool to retrieve attestations by subject digest from a GitHub repository. Use when you need to verify or check attestations for a specific artifact identified by its SHA256 digest.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see "Using pagination in the REST API". |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see "Using pagination in the REST API". |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "Using pagination in the REST API". |
| `predicate_type` | string | No | Optional filter for fetching attestations with a given predicate type. This option accepts `provenance`, `sbom`, `release`, or freeform text for custom predicate types. |
| `subject_digest` | string | Yes | The parameter should be set to the attestation's subject's SHA256 digest, in the form `sha256:HEX_DIGEST`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository clones

**Slug:** `GITHUB_GET_REPOSITORY_CLONES`

Retrieves the total number of clones and a breakdown of clone activity (daily or weekly) for a specified repository over the preceding 14 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per` | string ("day" | "week") | No | Specifies the time frame for aggregating clone data: `day` for daily clone counts, or `week` for weekly clone counts (a week starts on Monday). |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository content

**Slug:** `GITHUB_GET_REPOSITORY_CONTENT`

Retrieves a file's Base64 encoded content or lists a directory's contents from a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The name of the commit, branch, or tag to read from. Use this parameter to specify which branch (e.g., 'feat/godlocal-dev', 'main', 'develop'), tag (e.g., 'v1.2.0'), or commit SHA you want to access. If not provided, the repository's default branch will be used. Note: Branch names should be passed here, NOT in the path parameter. |
| `path` | string | Yes | Required. The path to the content in the repository. This can be a file or a directory path. Use an empty string to retrieve the contents of the repository's root directory. Leading slashes are automatically stripped (e.g., '/src/main.js' becomes 'src/main.js'). CRITICAL: Do NOT pass branch names here (e.g., 'feat/godlocal-dev', 'main', 'develop'). Branch names belong in the `ref` parameter, not the `path` parameter. The path should be the file or directory path within the repository (e.g., 'src/main.js', 'README.md'). Do NOT include the branch or ref name as a prefix in the path. For example, use 'src/main.js' not 'main/src/main.js' - the branch is specified separately via the ref parameter. File paths must include the file extension (e.g., 'README.md', not 'README'). For common files like README, LICENSE, or CHANGELOG without extensions, the action will automatically try common extensions (.md, .txt, .rst). Paths are case-sensitive and must match the exact casing in the repository (e.g., 'Docker' is different from 'docker'). If you receive a 404 'Not Found' error, verify the exact path by first listing the parent directory contents. |
| `repo` | string | Yes | Required. The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | Required. The account owner of the repository. This name is not case sensitive. Can also accept full repository path in format 'owner/repo' - the repo part will be extracted automatically. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Repository via GraphQL

**Slug:** `GITHUB_GET_REPOSITORY_GRAPH_QL`

Tool to lookup a repository by owner and name using GitHub's GraphQL API. Use when you need comprehensive repository information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the repository. |
| `owner` | string | Yes | The login field of a user or organization that owns the repository. |
| `followRenames` | boolean | No | Follow repository renames. If true, the query will follow repository renames to find the current repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Repository Owner

**Slug:** `GITHUB_GET_REPOSITORY_OWNER`

Tool to lookup a repository owner (User or Organization) by login using GitHub's GraphQL API. Use when you need to determine whether a login is a user or organization and retrieve basic profile information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `login` | string | Yes | The username or organization name to lookup. This is case-sensitive and must match the exact GitHub login. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository permissions for a user

**Slug:** `GITHUB_GET_REPOSITORY_PERMISSIONS_FOR_A_USER`

Retrieves a specific user's permission level ('admin', 'write', 'read', or 'none') for a given repository, where 'maintain' role is reported as 'write' and 'triage' as 'read'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `username` | string | Yes | GitHub user's handle (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve repo public key for encryption

**Slug:** `GITHUB_GET_REPOSITORY_PUBLIC_KEY_FOR_ENCRYPTION`

Gets a repository's public key, used to encrypt secrets for Dependabot.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository secret securely

**Slug:** `GITHUB_GET_REPOSITORY_SECRET_SECURELY`

Retrieves metadata for an existing Dependabot secret in a repository, without exposing its encrypted value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `secret_name` | string | Yes | The name of the Dependabot secret to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get repository security advisory

**Slug:** `GITHUB_GET_REPOSITORY_SECURITY_ADVISORY`

Tool to retrieve a repository security advisory using its GHSA identifier. Use when you need detailed information about a specific security vulnerability.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `ghsa_id` | string | Yes | The GHSA (GitHub Security Advisory) identifier of the advisory. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a delivery for a repository webhook

**Slug:** `GITHUB_GET_REPOSITORY_WEBHOOK_DELIVERY`

Retrieves a specific delivery for a repository webhook, identified by its `hook_id` and `delivery_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery, or by listing repository webhooks. |
| `delivery_id` | integer | Yes | The unique identifier of a specific delivery for the webhook. This ID corresponds to a single delivery attempt. You can find this by listing webhook deliveries. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get rules for a branch

**Slug:** `GITHUB_GET_RULES_FOR_A_BRANCH`

Retrieves all active rules for a specific branch in a GitHub repository, excluding rules in 'evaluate' or 'disabled' status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The GitHub account owner of the repository. This name is not case-sensitive. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not supported for this parameter; to use wildcards, refer to the GitHub GraphQL API. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Organization Dependabot Secret

**Slug:** `GITHUB_GET_SINGLE_ORG_SECRET_WITHOUT_DECRYPTION`

Gets a single organization Dependabot secret's metadata (name, timestamps, visibility) without revealing its encrypted value. Requires admin:org scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization (case-insensitive). |
| `secret_name` | string | Yes | The name of the Dependabot secret to retrieve (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get status checks protection

**Slug:** `GITHUB_GET_STATUS_CHECKS_PROTECTION`

Retrieves the status check protection settings for a specific branch in a GitHub repository, if status check protection is enabled for it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not supported in branch names for this endpoint; for wildcard support, please refer to the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get team membership for a user

**Slug:** `GITHUB_GET_TEAM_MEMBERSHIP_FOR_A_USER`

Retrieves a user's role and membership status within a specific team in an organization. Returns membership details including role ('member' or 'maintainer') and state ('active' or 'pending'). If the user is not a member of the team, returns is_member=False with a descriptive message. Requires the authenticated user to be an organization member with visibility into the team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `username` | string | Yes | The GitHub username of the user. |
| `team_slug` | string | Yes | The URL-friendly version of the team name (slug). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get teams with access to the protected branch

**Slug:** `GITHUB_GET_TEAMS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH`

Lists teams with explicit push access to a protected branch, provided team restrictions are configured in the branch's protection settings; returns an empty list otherwise.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Username of the repository owner; not case-sensitive. |
| `branch` | string | Yes | Name of the branch; does not support wildcard characters (for wildcard support, use the GraphQL API). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the authenticated user

**Slug:** `GITHUB_GET_THE_AUTHENTICATED_USER`

Gets the profile information for the currently authenticated GitHub user, including potentially private details based on user settings.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the combined status for a specific reference

**Slug:** `GITHUB_GET_THE_COMBINED_STATUS_FOR_A_SPECIFIC_REFERENCE`

Retrieves the aggregated commit status (e.g., success, failure, pending) from all checks for a specific reference (SHA, branch, or tag) in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The specific commit reference to query. This can be a commit SHA, a branch name (e.g., `heads/main`), or a tag name (e.g., `tags/v1.0.0`). See "[Git References](https://git-scm.com/book/en/v2/Git-Internals-Git-References)" for more details. |
| `page` | integer | No | The page number for the results to retrieve. See "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)" for more information. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | The number of results to display per page, with a maximum of 100. Details on pagination can be found in "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the hourly commit count for each day

**Slug:** `GITHUB_GET_THE_HOURLY_COMMIT_COUNT_FOR_EACH_DAY`

Retrieves the 'punch card' data, showing hourly commit counts for each day of the week for an existing and accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username or organization name. The name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the last year of commit activity

**Slug:** `GITHUB_GET_THE_LAST_YEAR_OF_COMMIT_ACTIVITY`

Fetches weekly commit totals and daily commit counts for the last 52 weeks for a specified GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the latest release

**Slug:** `GITHUB_GET_THE_LATEST_RELEASE`

Fetches the latest official (non-prerelease, non-draft) release for a GitHub repository; requires at least one such published release.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the license for a repository

**Slug:** `GITHUB_GET_THE_LICENSE_FOR_A_REPOSITORY`

Retrieves the license file and its details for a repository, optionally from a specific Git reference (branch, tag, or commit SHA).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The specific Git reference (branch name, tag name, or commit SHA) to retrieve the license from. For a branch, it can be formatted as `refs/heads/<branch_name>` or simply `<branch_name>`. To reference a pull request's merge commit, use `refs/pull/<pull_number>/merge`. If omitted, the license from the repository's default branch is used. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the review history for a workflow run

**Slug:** `GITHUB_GET_THE_REVIEW_HISTORY_FOR_A_WORKFLOW_RUN`

Retrieves the detailed approval history for a specific workflow run in a GitHub repository, detailing each review's environment, state, reviewer, and comments, to track the approval process for workflows, particularly automated deployments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the name of the organization that owns the repository. This name is not case-sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run for which to retrieve the review history. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the status of a GitHub Pages deployment

**Slug:** `GITHUB_GET_THE_STATUS_OF_A_GITHUB_PAGES_DEPLOYMENT`

Retrieves the status of a specific GitHub Pages deployment for a repository, which must have GitHub Pages enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |
| `pages_deployment_id` | string | Yes | The unique identifier of the GitHub Pages deployment. This can be the numeric ID of the deployment or the commit SHA that triggered the deployment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the weekly commit activity

**Slug:** `GITHUB_GET_THE_WEEKLY_COMMIT_ACTIVITY`

Fetches the weekly commit activity (additions and deletions per week) for a repository over the past year; best for repositories with under 10,000 commits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the weekly commit count

**Slug:** `GITHUB_GET_THE_WEEKLY_COMMIT_COUNT`

Retrieves the weekly commit count for a repository, detailing commits by the owner and all contributors over the last 52 weeks; GitHub may return a 202 status or an empty response if statistics are being computed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get the Zen of GitHub

**Slug:** `GITHUB_GET_THE_ZEN_OF_GITHUB`

Retrieves a random quote from GitHub's 'Zen of GitHub' collection, reflecting GitHub's design philosophies and offering humorous insights, useful for displaying GitHub wisdom or a lighthearted message.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get top referral paths

**Slug:** `GITHUB_GET_TOP_REFERRAL_PATHS`

Fetches the top 10 most viewed content paths for a repository from the last 14 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account or organization owning the repository (not case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get top referral sources

**Slug:** `GITHUB_GET_TOP_REFERRAL_SOURCES`

Fetches the top 10 websites that referred traffic to a repository within the last 14 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user by ID

**Slug:** `GITHUB_GET_USER_BY_ID`

Retrieves a GitHub user's profile information by their unique numeric account ID. Use when you know the user's numeric ID rather than their username.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `account_id` | integer | Yes | The unique numeric identifier of the GitHub user account to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user project item

**Slug:** `GITHUB_GET_USER_PROJECT_ITEM`

Tool to get an item from a user-owned project in GitHub Projects V2. Use when you need to retrieve details about a specific item (issue, pull request, or draft issue) in a user's project board.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | Limit results to specific fields, by their IDs. If not specified, the title field will be returned. Example: fields[]=123&fields[]=456&fields[]=789 or fields=123,456,789 |
| `item_id` | integer | Yes | The unique identifier of the project item. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user attestations by subject digest

**Slug:** `GITHUB_GET_USERS_ATTESTATIONS`

Tool to get attestations by subject digest for a GitHub user. Use when you need to retrieve attestation data for a specific artifact or resource identified by its subject digest.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see 'Using pagination in the REST API'. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `predicate_type` | string | No | Optional filter for fetching attestations with a given predicate type. This option accepts 'provenance', 'sbom', 'release', or freeform text for custom predicate types. |
| `subject_digest` | string | Yes | Subject digest for the attestation. Must include the algorithm prefix (e.g., 'sha256:' or 'sha512:'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user's projects v2

**Slug:** `GITHUB_GET_USERS_PROJECTS_V2`

Tool to list GitHub Projects v2 for a specified user. Use when you need to retrieve all projects owned by a user with pagination support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | No | Limit results to projects of the specified type. |
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see 'Using pagination in the REST API'. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see 'Using pagination in the REST API'. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see 'Using pagination in the REST API'. |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get users with access to the protected branch

**Slug:** `GITHUB_GET_USERS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH`

Lists users with explicit push access to a protected branch, provided its protection rule restricts pushes to specific users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., user or organization). This name is not case-sensitive. |
| `branch` | string | Yes | The name of the protected branch. Wildcard characters are not supported. To use wildcard characters in branch names, refer to the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Viewer via GraphQL

**Slug:** `GITHUB_GET_VIEWER_GRAPHQL`

Tool to retrieve the authenticated user's profile information via GitHub GraphQL. Use when working with GraphQL queries or need viewer details in GraphQL format.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get workflow external access level

**Slug:** `GITHUB_GET_WORKFLOW_EXTERNAL_ACCESS`

Gets the access level settings for a private repository, determining how workflows outside this repository can use its actions and reusable workflows.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get a job for a workflow run

**Slug:** `GITHUB_GET_WORKFLOW_RUN_JOB`

Retrieves detailed information for a specific job within a GitHub Actions workflow run, given its `job_id` which must be valid for the specified repository's workflow.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `job_id` | integer | Yes | The unique numerical identifier of the job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get workflow run usage

**Slug:** `GITHUB_GET_WORKFLOW_RUN_USAGE`

Gets the billable time, in milliseconds, for a specific workflow run, detailing time spent on various operating systems.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | Account owner of the repository (username or organization name); not case sensitive. |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get workflow usage

**Slug:** `GITHUB_GET_WORKFLOW_USAGE`

Gets the billable time (in milliseconds, broken down by runner OS) for a specific workflow within a repository for the current billing cycle.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `workflow_id` | string | Yes | The unique identifier (ID) of the workflow or the workflow's file name (e.g., 'main.yml'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Check if repo starred by auth user

**Slug:** `GITHUB_IS_REPOSITORY_STARRED_BY_THE_USER`

Use to determine if the authenticated user has starred a specific GitHub repository, which is confirmed by an HTTP 204 status (resulting in an empty dictionary in the response data); the action fails (e.g., HTTP 404) if the repository is not starred or does not exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List accepted assignments for an assignment

**Slug:** `GITHUB_LIST_ACCEPTED_ASSIGNMENTS_FOR_AN_ASSIGNMENT`

Lists accepted assignments (student repositories created after acceptance) for an existing GitHub Classroom assignment, identified by its unique `assignment_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |
| `assignment_id` | integer | Yes | The unique identifier of the classroom assignment for which to list accepted assignments. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories accessible via GitHub App installation

**Slug:** `GITHUB_LIST_ACCESSIBLE_REPOSITORIES`

Lists repositories that the authenticated user can access through a specific GitHub App installation. Returns repositories where the user has explicit :read, :write, or :admin permission through the installation. The response includes permission details for each repository. Prerequisites: - Requires a GitHub App user access token (not a standard OAuth token) - Use GITHUB_LIST_APP_INSTALLATIONS first to get valid installation IDs

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch, starting from 1. |
| `per_page` | integer | No | Number of repositories to return per page. Maximum is 100. |
| `installation_id` | integer | Yes | The unique identifier of the GitHub App installation. Get this from GITHUB_LIST_APP_INSTALLATIONS. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List app installations for user token

**Slug:** `GITHUB_LIST_APP_INSTALLATIONS`

Lists GitHub App installations accessible to the authenticated user via their access token, including installation details, permissions, and repository access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to retrieve. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get apps with access to the protected branch

**Slug:** `GITHUB_LIST_APPS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH`

Lists GitHub Apps with push access to a repository's protected branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `branch` | string | Yes | The name of the protected branch. This name cannot contain wildcard characters. To work with branch names containing wildcard characters, please use the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List artifacts for a repository

**Slug:** `GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY`

Lists GitHub Actions workflow artifacts for a specified repository, which must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of an artifact. If specified, only artifacts with this exact name will be returned. If omitted or null, all artifacts in the repository are listed (subject to pagination). |
| `page` | integer | No | The page number of the results to fetch, starting from 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is not case-sensitive. |
| `per_page` | integer | No | The number of artifacts to return per page; maximum is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List assignees

**Slug:** `GITHUB_LIST_ASSIGNEES`

Lists users who can be assigned to issues in a repository, typically those with push access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results (1-indexed). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |
| `per_page` | integer | No | Number of results per page. Max 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List assignments for a classroom

**Slug:** `GITHUB_LIST_ASSIGNMENTS_FOR_A_CLASSROOM`

Lists all assignments for a given GitHub Classroom `classroom_id`; the classroom must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Specifies the page number of the results to retrieve. For more information, refer to GitHub's documentation on [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |
| `per_page` | integer | No | Specifies the number of results to return per page (maximum is 100). For more information, refer to GitHub's documentation on [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |
| `classroom_id` | integer | Yes | The unique identifier of the classroom for which assignments are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List attestation repositories

**Slug:** `GITHUB_LIST_ATTESTATION_REPOSITORIES`

Tool to list attestation repositories for an organization. Use when you need to discover which repositories in an organization have attestations. Attestations provide verifiable metadata about software artifacts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see 'Using pagination in the REST API'. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see 'Using pagination in the REST API'. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see 'Using pagination in the REST API'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List available machine types for a repository

**Slug:** `GITHUB_LIST_AVAILABLE_MACHINE_TYPES_FOR_A_REPOSITORY`

Lists machine types available for GitHub Codespaces in a repository, optionally using a Git ref to check compatibility based on prebuild availability and devcontainer configurations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The Git reference (branch name, tag name, or commit SHA) to check for prebuild availability and devcontainer configuration restrictions. This ensures listed machine types are compatible with the specified repository version. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username (for personal repositories) or the organization name (for organization-owned repositories). The name is not case sensitive. |
| `location` | string | No | The geographic location to check for available machine types. If not provided, the location may be inferred. Specifying a location can help find machines in a preferred region. |
| `client_ip` | string | No | An IP address used for auto-detecting the location if `location` is not specified. This is particularly useful when requests are proxied, to ensure location-based machine availability is accurate. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List branches

**Slug:** `GITHUB_LIST_BRANCHES`

Lists branches for an existing GitHub repository, with an option to filter by protection status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. |
| `repo` | string | Yes | Repository name, excluding `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner's username (case-insensitive). |
| `per_page` | integer | No | Number of results per page (max 100). |
| `protected` | boolean | No | Filter by protection status: `true` for protected, `false` for unprotected; omit for all branches. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List branches for head commit

**Slug:** `GITHUB_LIST_BRANCHES_FOR_HEAD_COMMIT`

Lists branches in an accessible repository where the provided commit SHA is the head, useful for identifying development lines based on that commit.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case-sensitive. |
| `commit_sha` | string | Yes | The full SHA-1 hash of the commit. This action will find branches where this commit is the most recent one (the head). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List check run annotations

**Slug:** `GITHUB_LIST_CHECK_RUN_ANNOTATIONS`

Lists annotations for a specific check run in a GitHub repository, detailing issues like errors or warnings on particular code lines.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. See "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)" for more details. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This is typically the username or organization name. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (maximum 100). See "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)" for more details. |
| `check_run_id` | integer | Yes | The unique identifier of the check run for which annotations are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List check runs for a git ref

**Slug:** `GITHUB_LIST_CHECK_RUNS_FOR_A_REF`

List GitHub check runs for a commit SHA, branch, or tag to assess CI status and conclusions. Use when you need reliable CI pass/fail signals beyond commit metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The git reference - can be a commit SHA, branch name, or tag name. |
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | Yes | The name of the repository without .git extension. Case-insensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Case-insensitive. |
| `app_id` | integer | No | Filter by GitHub App identifier. |
| `filter` | string | No | Filter by completion timestamp: 'latest' returns the most recent check runs, 'all' returns all check runs. |
| `status` | string | No | Filter by check run status: queued, in_progress, or completed. |
| `per_page` | integer | No | Number of results per page, maximum 100. |
| `check_name` | string | No | Filters results to check runs with the specified name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List check runs in a check suite

**Slug:** `GITHUB_LIST_CHECK_RUNS_IN_A_CHECK_SUITE`

Lists check runs for a specific check suite in a GitHub repository, optionally filtering by check name or status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch (starts at 1). |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (case-insensitive). |
| `filter` | string ("latest" | "all") | No | Filter by `completed_at` timestamp: 'latest' for most recent, 'all' for all check runs. |
| `status` | string ("queued" | "in_progress" | "completed") | No | Filter check runs by status; returns all statuses if omitted. |
| `per_page` | integer | No | Number of check runs per page (max 100). |
| `check_name` | string | No | Filter check runs by this name; returns all names if omitted. |
| `check_suite_id` | integer | Yes | Numeric ID of the check suite. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List check suites for a git reference

**Slug:** `GITHUB_LIST_CHECK_SUITES_FOR_A_GIT_REFERENCE`

Lists check suites for a Git reference (commit SHA, branch, or tag) in a repository, optionally filtering by GitHub App ID or check run name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Git reference (commit SHA, branch name like `heads/BRANCH_NAME` or `BRANCH_NAME`, or tag name like `tags/TAG_NAME` or `TAG_NAME`) to list check suites for. |
| `page` | integer | No | Page number of results to fetch (1-indexed). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This name is not case-sensitive. |
| `app_id` | integer | No | Filters check suites by the `id` of the GitHub App that created them. If omitted, check suites from all apps are returned. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `check_name` | string | No | Filters check suites by the name of a check run. Only check suites that contain at least one check run with this name will be returned. If omitted, check suites are not filtered by check run name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List child teams

**Slug:** `GITHUB_LIST_CHILD_TEAMS`

Lists the immediate child teams of a parent team within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `team_slug` | string | Yes | The slug (URL-friendly version) of the parent team's name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List classrooms

**Slug:** `GITHUB_LIST_CLASSROOMS`

Lists GitHub Classrooms to which the authenticated user has administrative access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for the results. |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List codeowners errors

**Slug:** `GITHUB_LIST_CODEOWNERS_ERRORS`

Lists syntax errors in a repository's CODEOWNERS file, which must be located at the root, `.github/`, or `docs/` directory for the specified ref.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | Branch name, tag, or commit SHA for the CODEOWNERS file; defaults to the repository's default branch if unspecified. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List CodeQL databases for a repository

**Slug:** `GITHUB_LIST_CODEQL_DATABASES_FOR_A_REPOSITORY`

Lists all CodeQL databases for a repository where CodeQL analysis has been previously run and completed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List code scanning alerts for an organization

**Slug:** `GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_AN_ORGANIZATION`

Lists code scanning alerts for a GitHub organization; use EITHER `tool_name` OR `tool_guid` if filtering by tool, not both.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `page` | integer | No | Page number for results. Used if `before` or `after` cursors are not provided. |
| `sort` | string ("created" | "updated") | No | Sort field. |
| `after` | string | No | A pagination cursor to retrieve results appearing after this. |
| `state` | string ("open" | "closed" | "dismissed" | "fixed") | No | Filter alerts by state. |
| `before` | string | No | A pagination cursor to retrieve results appearing before this. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `severity` | string ("critical" | "high" | "medium" | "low" | "warning" | "note" | "error") | No | Filter alerts by severity. |
| `direction` | string ("asc" | "desc") | No | Sort direction. |
| `tool_guid` | string | No | GUID of the code scanning tool. Some tools may not report a GUID. Cannot be used with `tool_name`. |
| `tool_name` | string | No | Name of the code scanning tool (e.g., 'CodeQL'). Cannot be used with `tool_guid`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List code scanning alerts for a repository

**Slug:** `GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_A_REPOSITORY`

Lists code scanning alerts for a repository, optionally filtering by tool (which must have produced scan results for the repository), Git reference, state, or severity.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | Git reference (branch, tag, or pull request merge reference, e.g., `refs/pull/42/merge`) for retrieving alerts; defaults to the repository's default branch if unspecified. |
| `page` | integer | No | Page number for paginated results, starting at 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension; not case-sensitive. |
| `sort` | string ("created" | "updated") | No | Sort property: `created` (alert creation time) or `updated` (last update time). |
| `owner` | string | Yes | The account owner of the repository (username or organization name); not case-sensitive. |
| `state` | string ("open" | "closed" | "dismissed" | "fixed") | No | Filters alerts by state. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `severity` | string ("critical" | "high" | "medium" | "low" | "warning" | "note" | "error") | No | Filters alerts by severity. |
| `direction` | string ("asc" | "desc") | No | Sort direction: `asc` (ascending) or `desc` (descending). |
| `tool_guid` | string | No | The GUID of a code scanning tool to filter alerts by; use either `tool_guid` or `tool_name`, not both. Some tools may not provide a GUID. |
| `tool_name` | string | No | The name of a code scanning tool to filter alerts by; use either `tool_name` or `tool_guid`, not both. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List code scanning analyses for a repository

**Slug:** `GITHUB_LIST_CODE_SCANNING_ANALYSES_FOR_A_REPOSITORY`

Lists code scanning analyses for an existing repository, optionally filtering by tool (name or GUID), Git reference, or SARIF ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The Git reference for which to list analyses. This can be a branch name (e.g., 'main' or 'refs/heads/main') or a pull request merge reference (e.g., 'refs/pull/123/merge'). |
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `sort` | string ("created") | No | Property by which to sort the results. Currently, only 'created' is a supported sort field. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |
| `sarif_id` | string | No | Filter analyses to those associated with a specific SARIF upload ID. |
| `direction` | string ("asc" | "desc") | No | Direction to sort results. 'asc' for ascending, 'desc' for descending. |
| `tool_guid` | string | No | The GUID of a code scanning tool used to filter analyses. Only results from this tool will be listed. Some tools may not provide a GUID. Mutually exclusive with `tool_name`. |
| `tool_name` | string | No | The name of a code scanning tool used to filter analyses. Only results from this tool will be listed. Mutually exclusive with `tool_guid`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all codes of conduct

**Slug:** `GITHUB_LIST_CODES_OF_CONDUCT`

Retrieves all available codes of conduct from GitHub, often used to select one for a repository.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Codes of Conduct (GraphQL)

**Slug:** `GITHUB_LIST_CODES_OF_CONDUCT_GRAPHQL`

Tool to fetch all available codes of conduct using GitHub's GraphQL API. Use when you need to retrieve the complete list of codes of conduct that can be applied to repositories.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List codespaces for a user in organization

**Slug:** `GITHUB_LIST_CODESPACES_FOR_A_USER_IN_ORGANIZATION`

Lists all GitHub Codespaces owned by a specified member of a given organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `page` | integer | No | Page number of the results to retrieve (starts from 1). |
| `per_page` | integer | No | Number of codespaces to return per page (maximum 100). |
| `username` | string | Yes | GitHub username of the organization member. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List codespaces for the authenticated user

**Slug:** `GITHUB_LIST_CODESPACES_FOR_THE_AUTHENTICATED_USER`

Lists GitHub Codespaces for the authenticated user, optionally filtering by repository ID and supporting pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for results (starts at 1). For pagination details, see: https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api. |
| `per_page` | integer | No | Number of codespaces per page (max 100). For pagination details, see: https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api. |
| `repository_id` | integer | No | If provided, filters codespaces to this repository ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List codespaces for the organization

**Slug:** `GITHUB_LIST_CODESPACES_FOR_THE_ORGANIZATION`

Lists active/pending GitHub Codespaces for an existing organization; admins list all, members list their own.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Non-case-sensitive unique identifier of the GitHub organization. |
| `page` | integer | No | Page number of results. Details: '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)'. |
| `per_page` | integer | No | Number of results per page (max 100). Details: '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List comment changes across organization

**Slug:** `GITHUB_LIST_COMMENT_CHANGES`

Tool to list issue and PR comment changes across an organization's repositories efficiently. Use when monitoring comment activity without per-PR/per-issue polling. Filters organization events to return only comment-related events (IssueCommentEvent, PullRequestReviewCommentEvent, CommitCommentEvent). Note: Events are limited to the past 30 days and up to 300 events per timeline. Use ETag header for efficient polling to avoid rate limits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name to list comment events for. Not case-sensitive. |
| `page` | integer | No | Page number of results to fetch. |
| `per_page` | integer | No | Number of events to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List comments for a pull request review

**Slug:** `GITHUB_LIST_COMMENTS_FOR_A_PULL_REQUEST_REVIEW`

Lists all comments for a specific review on a GitHub pull request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. See GitHub's [pagination guide](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | Number of comments to retrieve per page (max 100). See GitHub's [pagination guide](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |
| `review_id` | integer | Yes | The unique identifier of the pull request review. |
| `pull_number` | integer | Yes | The unique number that identifies the pull request within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List commit comments

**Slug:** `GITHUB_LIST_COMMIT_COMMENTS`

Retrieves all comments for a specific commit in a GitHub repository, supporting pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | The number of comments to return per page. Maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `commit_sha` | string | Yes | The SHA hash of the commit for which comments are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List commit comments for a repository

**Slug:** `GITHUB_LIST_COMMIT_COMMENTS_FOR_A_REPOSITORY`

Lists all commit comments for a specified repository, which must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch (starts at 1). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `per_page` | integer | No | Number of results to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List commits

**Slug:** `GITHUB_LIST_COMMITS`

Lists commits for a GitHub repository. Requires 'owner' (username/org) and 'repo' (repository name) parameters. Optionally filter by SHA/branch, path, author, committer, or date range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | No | SHA hash or branch name to start listing commits from. If not provided, the GitHub API uses the repository's default branch (usually `main` or `master`). |
| `page` | integer | No | Page number of the results to fetch when using pagination. |
| `path` | string | No | Only commits modifying this specific file path will be returned. |
| `repo` | string | Yes | The name of the repository without the `.git` extension (repository name only, not the full 'owner/repo' path). Must contain only alphanumeric characters, hyphens (-), underscores (_), and periods (.). Wildcards like '*' are not supported. |
| `owner` | string | Yes | The account owner of the repository (username or organization name only, not the full 'owner/repo' path). Must contain only alphanumeric characters and hyphens, cannot start/end with a hyphen, max 39 characters. Wildcards are not supported. |
| `since` | string | No | Only commits created on or after this timestamp will be returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. |
| `until` | string | No | Only commits created before this timestamp will be returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. |
| `author` | string | No | Filter commits by the commit author's GitHub login or email address. |
| `per_page` | integer | No | Number of results to return per page (max 100). |
| `committer` | string | No | Filter commits by the commit committer's GitHub login or email address. The committer is the user who applied the patch and may differ from the original author. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List commits on a pull request

**Slug:** `GITHUB_LIST_COMMITS_ON_A_PULL_REQUEST`

Lists commits for a pull request; requires the repository and pull request to exist and be accessible, and supports pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. |
| `repo` | string | Yes | Repository name, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | The number of results per page (maximum 100). |
| `pull_number` | integer | Yes | The number that identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all commonly used licenses

**Slug:** `GITHUB_LIST_COMMONLY_USED_LICENSES`

Retrieves a list of commonly used software licenses from GitHub, optionally filtering for 'featured' licenses whose specific selection criteria by GitHub may vary.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number for the set of results to retrieve (must be an integer starting from 1). Used for paginating through the list of licenses. |
| `featured` | boolean | No | If true, filters for licenses that GitHub considers 'featured', such as popular or recommended licenses. If false or not provided, returns all commonly used licenses. |
| `per_page` | integer | No | The number of license results to return per page (must be an integer between 1 and 100, inclusive). Used for paginating through the list of licenses. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all custom properties for an organization

**Slug:** `GITHUB_LIST_CUSTOM_PROPERTIES_FOR_AN_ORGANIZATION`

Gets the schema definitions for all custom properties configured for an organization, not the specific values assigned to repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique identifier (login name) of the GitHub organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all custom property values for a repository

**Slug:** `GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_A_REPOSITORY`

Gets all custom property values for a repository. Custom properties are defined at the organization level, so this endpoint works with organization-owned repositories. Returns an empty array if no custom properties are set.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The organization name that owns the repository. Custom properties are an organization-level feature, so this endpoint primarily works with organization-owned repositories. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List custom property values for organization repositories

**Slug:** `GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_ORG_REPOS`

Lists repositories in an organization with their custom property values. Requires 'Custom properties' organization permission (read).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (login). Not case-sensitive. Example: 'github', 'microsoft'. |
| `page` | integer | No | Page number of results to fetch (default 1). |
| `per_page` | integer | No | Number of results per page (max 100, default 30). |
| `repository_query` | string | No | Optional query string to filter repositories. Uses GitHub's search syntax with keywords and qualifiers like 'is:public', 'topic:security', 'language:python', 'archived:false'. Leave empty to list all repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deliveries for an organization webhook

**Slug:** `GITHUB_LIST_DELIVERIES_FOR_AN_ORGANIZATION_WEBHOOK`

Retrieves a list of webhook deliveries for a specific webhook in an organization, allowing inspection of delivery history and details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (case-insensitive). |
| `cursor` | string | No | Pagination cursor specifying the starting delivery for the page. |
| `hook_id` | integer | Yes | Unique identifier of the webhook. |
| `per_page` | integer | No | Number of results to return per page (max 100). |
| `redelivery` | boolean | No | Filter for redeliveries: `true` for only redeliveries, `false` to exclude them. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deliveries for a repository webhook

**Slug:** `GITHUB_LIST_DELIVERIES_FOR_A_REPOSITORY_WEBHOOK`

Retrieves delivery attempts for a specific repository webhook to inspect its history; ensure the webhook ID exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is case-insensitive. |
| `cursor` | string | No | Specifies the starting delivery for pagination. The `Link` header in the response provides cursors for the next and previous pages. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery. |
| `per_page` | integer | No | Maximum 100 results per page. For more details, refer to "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)". |
| `redelivery` | boolean | No | If set to `true`, the response will include the latest redelivery attempt for each delivery, rather than the original delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deploy keys

**Slug:** `GITHUB_LIST_DEPLOY_KEYS`

Lists deploy SSH keys for a specified repository; the repository must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch, starting from 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | The number of deploy keys to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deployment branch policies

**Slug:** `GITHUB_LIST_DEPLOYMENT_BRANCH_POLICIES`

Lists all deployment branch policies for a specified environment in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results (starts at 1). |
| `repo` | string | Yes | Repository name, without the `.git` extension; not case sensitive. |
| `owner` | string | Yes | Account owner of the repository; not case sensitive. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `environment_name` | string | Yes | Name of the environment; URL encode if it contains special characters (e.g., slashes to `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deployments

**Slug:** `GITHUB_LIST_DEPLOYMENTS`

Lists deployments for a specified repository; repository must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | Filter by the ref name (branch, tag, or commit SHA). |
| `sha` | string | No | Filter by the commit SHA recorded when the deployment was created. |
| `page` | integer | No | The page number of the results to retrieve. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `task` | string | No | Filter by the task name specified for the deployment. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `per_page` | integer | No | The number of results to display per page (maximum 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `environment` | string | No | Filter by the environment name to which deployed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deployment statuses

**Slug:** `GITHUB_LIST_DEPLOYMENT_STATUSES`

Lists all statuses for a given deployment in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `deployment_id` | integer | Yes | The unique identifier of the deployment for which statuses are being requested. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List discussion comments

**Slug:** `GITHUB_LIST_DISCUSSION_COMMENTS`

Lists all comments for a specific team discussion within an organization. Note: Team discussions are deprecated as of 2023-11-28. Consider using GitHub Discussions instead. This endpoint requires the authenticated user to be a member of the organization and have access to the team's discussions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |
| `page` | integer | No | Page number of the results. |
| `per_page` | integer | No | Number of comments per page (max 100). |
| `direction` | string ("asc" | "desc") | No | Sort direction for comments: 'asc' (oldest first) or 'desc' (newest first). |
| `team_slug` | string | Yes | The team's slug (URL-friendly identifier). |
| `discussion_number` | integer | Yes | The unique number identifying the team discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List discussions

**Slug:** `GITHUB_LIST_DISCUSSIONS`

Lists discussions for a specific team within an organization, with options for sorting, pagination, and filtering by pinned status. Note: Team discussions are deprecated as of 2023-11-28. Consider using GitHub Discussions instead. This endpoint requires the authenticated user to be a member of the organization and have access to the team's discussions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `page` | integer | No | Page number for pagination. Defaults to 1. |
| `pinned` | string | No | Filter for pinned discussions. Use 'true' to show only pinned discussions. Omit to show all discussions. |
| `per_page` | integer | No | Number of results per page (max 100). Defaults to 30. |
| `direction` | string ("asc" | "desc") | No | Sort direction for results: 'asc' (oldest first) or 'desc' (newest first). Defaults to 'desc'. |
| `team_slug` | string | Yes | The team's slug (URL-friendly name). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List email addresses for the authenticated user

**Slug:** `GITHUB_LIST_EMAIL_ADDRESSES_FOR_THE_AUTHENTICATED_USER`

Lists all email addresses for the authenticated user, including their primary status, verification status, and visibility. This action retrieves the complete list of email addresses associated with the authenticated user, providing important details such as which email is primary and whether the emails are verified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List environment custom deployment rules

**Slug:** `GITHUB_LIST_ENVIRONMENT_CUSTOM_DEPLOYMENT_RULES`

Lists all custom deployment protection rule integrations for a repository environment; the `environment_name` must be URL-encoded.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch, starting from 1. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner of the repository (user or organization); not case-sensitive. |
| `per_page` | integer | No | Number of results per page, with a maximum of 100. |
| `environment_name` | string | Yes | Name of the environment, which must be URL-encoded (e.g., slashes `/` replaced with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List environments

**Slug:** `GITHUB_LIST_ENVIRONMENTS`

Retrieves all deployment environments for a specified repository, which are used to configure protection rules and secrets for different software lifecycle stages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve. Starts from 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | The number of results to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List environment secrets

**Slug:** `GITHUB_LIST_ENVIRONMENT_SECRETS`

Lists the names and metadata (not values) of secrets for a specified, existing environment within an existing GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for results (1-indexed). |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | The account owner's username (case-insensitive). |
| `per_page` | integer | No | Number of secrets per page (maximum 100). |
| `environment_name` | string | Yes | Name of the environment; URL-encode if it contains special characters (e.g., '/' becomes '%2F'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List environment variables

**Slug:** `GITHUB_LIST_ENVIRONMENT_VARIABLES`

Lists all environment variables, which are plaintext key-value pairs for GitHub Actions workflows, for a specified environment within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive.  |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case-sensitive. |
| `per_page` | integer | No | Number of results per page (maximum 30). |
| `environment_name` | string | Yes | The name of the environment. The name must be URL-encoded. For example, any slashes `/` in the name must be replaced with `%2F`.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List events for the authenticated user

**Slug:** `GITHUB_LIST_EVENTS_FOR_THE_AUTHENTICATED_USER`

Lists public events for the specified GitHub user, or private events if authenticated as that user, in reverse chronological order.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of events to return per page (maximum 100). |
| `username` | string | Yes | The GitHub username for whom to list events. For example, 'octocat' or 'torvalds'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List events received by the authenticated user

**Slug:** `GITHUB_LIST_EVENTS_RECEIVED_BY_THE_AUTHENTICATED_USER`

Lists events a specific GitHub user received from followed users and watched repositories; returns private events if authenticated for `username`, otherwise public.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Indicates the page number of the results to fetch. For more information, see GitHub's REST API pagination guide. |
| `per_page` | integer | No | Specifies the number of events to return per page (maximum 100). For more information, see GitHub's REST API pagination guide. |
| `username` | string | Yes | The GitHub username for whom to fetch received events. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List followers of a user

**Slug:** `GITHUB_LIST_FOLLOWERS_OF_A_USER`

Lists followers for a specified, existing GitHub user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination of results (starts at 1). |
| `per_page` | integer | No | Number of results per page (maximum 100). Used for pagination. |
| `username` | string | Yes | The GitHub username (e.g., 'octocat', 'torvalds'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List followers of the authenticated user

**Slug:** `GITHUB_LIST_FOLLOWERS_OF_THE_AUTHENTICATED_USER`

Lists users following the authenticated GitHub user, returning an empty list if the user has no followers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List forks

**Slug:** `GITHUB_LIST_FORKS`

Lists forks for a specified repository, which must exist, with options for sorting and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve, used for pagination. Defaults to 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `sort` | string ("newest" | "oldest" | "stargazers" | "watchers") | No | The sort order for the returned forks. `stargazers` sorts by the number of stars. Defaults to `newest`. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | The number of fork results to return per page. Maximum value is 100. Defaults to 30. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gist comments

**Slug:** `GITHUB_LIST_GIST_COMMENTS`

Lists comments for a specified GitHub Gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `gist_id` | string | Yes | The unique identifier of the Gist for which comments are to be listed. |
| `per_page` | integer | No | Number of comments to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gist commits

**Slug:** `GITHUB_LIST_GIST_COMMITS`

Lists all commits for a specified gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `gist_id` | string | Yes | The unique identifier of the gist. |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gist forks

**Slug:** `GITHUB_LIST_GIST_FORKS`

Lists all forks for a given GitHub gist ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve, starting from 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `gist_id` | string | Yes | The unique identifier (ID) of the gist for which to list forks. |
| `per_page` | integer | No | The number of fork results to display per page. Maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gists for a user

**Slug:** `GITHUB_LIST_GISTS_FOR_A_USER`

_lists public gists for a specified GitHub user._

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Indicates the page number of the results to retrieve. |
| `since` | string | No | Filters gists to those updated on or after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Specifies the number of gists to return per page. Maximum value is 100. |
| `username` | string | Yes | The GitHub username of the user whose gists are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gists for the authenticated user

**Slug:** `GITHUB_LIST_GISTS_FOR_THE_AUTHENTICATED_USER`

Lists gists for the authenticated user, with optional filtering by update time and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to retrieve. |
| `since` | string | No | Filters gists to include only those updated at or after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of gists to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List github actions caches for a repository

**Slug:** `GITHUB_LIST_GITHUB_ACTIONS_CACHES_FOR_A_REPOSITORY`

Lists GitHub Actions caches for a repository, with options to filter by Git reference or cache key, and to sort and paginate results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | An explicit key or a prefix to filter caches that match the key or start with the prefix. |
| `ref` | string | No | Full Git reference for filtering caches (e.g., `refs/heads/<branch_name>` or `refs/pull/<pull_request_number>/merge`). |
| `page` | integer | No | Page number of results to retrieve (starts from 1). |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `sort` | string ("created_at" | "last_accessed_at" | "size_in_bytes") | No | Property for sorting results: `created_at` (creation time), `last_accessed_at` (last access time), or `size_in_bytes` (cache size). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `per_page` | integer | No | Number of cache entries per page (max 100). |
| `direction` | string ("asc" | "desc") | No | Direction for sorting results: `asc` (ascending) or `desc` (descending). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List GitHub Pages builds

**Slug:** `GITHUB_LIST_GITHUB_PAGES_BUILDS`

Lists GitHub Pages builds for a repository; GitHub Pages must be enabled on the repository for builds to be listed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., username or organization). This name is not case-sensitive. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all gitignore templates

**Slug:** `GITHUB_LIST_GITIGNORE_TEMPLATES`

Retrieves all available .gitignore template names from GitHub (e.g., 'Python', 'Node', 'Java'), used for generating .gitignore files.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List global security advisories

**Slug:** `GITHUB_LIST_GLOBAL_SECURITY_ADVISORIES`

Lists GitHub's global security advisories, filterable by various attributes including ID, type, ecosystem, severity, and dates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cwes` | array | No | Filter by Common Weakness Enumeration (CWE) identifiers. Accepts comma-separated string or multiple parameters. Example: `cwes=79,284`. |
| `sort` | string ("updated" | "published" | "epss_percentage" | "epss_percentile") | No | Property to sort results by (updated, published, epss_percentage, epss_percentile). |
| `type` | string ("reviewed" | "malware" | "unreviewed") | No | Filter by advisory type (e.g., reviewed, malware). Defaults to 'reviewed'; if this default is active and no other search parameters are used, malware advisories are also excluded. |
| `after` | string | No | Pagination cursor to retrieve results after this value. |
| `before` | string | No | Pagination cursor to retrieve results before this value. |
| `cve_id` | string | No | Filter by Common Vulnerabilities and Exposures (CVE) identifier. |
| `affects` | array | No | Filter by affected 'package' or 'package@version'. Max 100 items. Example: `affects=pkg1,pkg2@1.0.0`. |
| `ghsa_id` | string | No | Filter by GitHub Security Advisory (GHSA) identifier. |
| `updated` | string | No | Filter by update date or date range. For syntax, see GitHub's 'understanding the search syntax' documentation. |
| `modified` | string | No | Filter by last modification (update or publication) date or date range. For syntax, see GitHub's 'understanding the search syntax' documentation. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `severity` | string ("unknown" | "low" | "medium" | "high" | "critical") | No | Filter by advisory severity (e.g., high, critical). |
| `direction` | string ("asc" | "desc") | No | Sort direction for results (asc, desc). |
| `ecosystem` | string ("rubygems" | "npm" | "pip" | "maven" | "nuget" | "composer" | "go" | "rust" | "erlang" | "actions" | "pub" | "other" | "swift") | No | Filter by package ecosystem (e.g., npm, pip). |
| `published` | string | No | Filter by publication date or date range. For syntax, see GitHub's 'understanding the search syntax' documentation. |
| `is_withdrawn` | boolean | No | Filter for withdrawn advisories. |
| `epss_percentage` | string | No | Filter by EPSS (Exploit Prediction Scoring System) percentage score. Use comparison operators (e.g., '>0.5', '<=0.1'). |
| `epss_percentile` | string | No | Filter by EPSS (Exploit Prediction Scoring System) percentile score. Use comparison operators (e.g., '>0.9', '>=0.5'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List GPG keys for a user

**Slug:** `GITHUB_LIST_GPG_KEYS_FOR_A_USER`

Tool to list GPG keys for a GitHub user. Use when you need to fetch the public GPG keys associated with a specific GitHub user account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "Using pagination in the REST API". |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "Using pagination in the REST API". |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List installation requests for the authenticated app

**Slug:** `GITHUB_LIST_INSTALLATION_REQUESTS_FOR_THE_AUTHENTICATED_APP`

Lists pending installation requests made by users or organizations for the authenticated GitHub App.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List instances of a code scanning alert

**Slug:** `GITHUB_LIST_INSTANCES_OF_A_CODE_SCANNING_ALERT`

Lists all instances of a specific code scanning alert, optionally filtered by Git ref; requires code scanning to be enabled on the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The Git reference for the results you want to list. The `ref` for a branch can be formatted either as `refs/heads/<branch name>` or simply `<branch name>`. To reference a pull request use `refs/pull/<number>/merge`.  |
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `alert_number` | integer | Yes | The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue comments

**Slug:** `GITHUB_LIST_ISSUE_COMMENTS`

Lists comments for a specified issue in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |
| `since` | string | No | Filters comments to include only those updated at or after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of comments to return per page (max 100). |
| `issue_number` | integer | Yes | Number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue comments for a repository

**Slug:** `GITHUB_LIST_ISSUE_COMMENTS_FOR_A_REPOSITORY`

Lists issue comments, including those on pull requests, for an accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch, used for pagination. Default is 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `repo` | string | Yes | REQUIRED. The name of the repository, without the `.git` extension. This is a path parameter needed to construct the API URL. This field is not case-sensitive. |
| `sort` | string ("created" | "updated") | No | Specifies the field by which to sort the issue comments. Valid values are `created` (for creation date, default) or `updated` (for last update date). |
| `owner` | string | Yes | REQUIRED. The username of the account or the organization name that owns the repository. This is a path parameter needed to construct the API URL. This field is not case-sensitive. |
| `since` | string | No | Filters comments to include only those last updated at or after the specified time. This should be a timestamp in ISO 8601 format (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | The number of issue comments to retrieve per page. Default is 30, maximum is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `direction` | string ("asc" | "desc") | No | The direction for sorting results. Valid values are `asc` (ascending) or `desc` (descending). This parameter is effective only when `sort` is also specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue dependencies blocked by

**Slug:** `GITHUB_LIST_ISSUE_DEPENDENCIES_BLOCKED_BY`

Tool to list dependencies an issue is blocked by. Use when you need to retrieve all issues that are blocking a specific issue from being closed or completed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `issue_number` | integer | Yes | The number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue dependencies blocking

**Slug:** `GITHUB_LIST_ISSUE_DEPENDENCIES_BLOCKING`

Tool to list dependencies an issue is blocking. Use when you need to see which issues are blocked by a specific issue.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `issue_number` | integer | Yes | The number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue events

**Slug:** `GITHUB_LIST_ISSUE_EVENTS`

Retrieves a list of all events for a specific issue within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This name is not case-sensitive. |
| `per_page` | integer | No | The number of results to return per page. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `issue_number` | integer | Yes | The unique number that identifies the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue events for a repository

**Slug:** `GITHUB_LIST_ISSUE_EVENTS_FOR_A_REPOSITORY`

Lists all issue events (e.g., closed, reopened, assigned) for a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `repo` | string | Yes | Repository name, without the `.git` extension; case-insensitive. |
| `owner` | string | Yes | Account owner of the repository (username or organization name); case-insensitive. Must match an existing GitHub user or organization exactly. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issues for user

**Slug:** `GITHUB_LIST_ISSUES_ASSIGNED_TO_THE_AUTHENTICATED_USER`

Lists GitHub issues for the authenticated user across visible repositories, with filtering by user relationship, state, labels, an ISO 8601 `since` timestamp (YYYY-MM-DDTHH:MM:SSZ), and sorting options; pull requests are typically included.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for results. |
| `sort` | string | No | Field to sort issues by. |
| `since` | string | No | Return issues updated at or after this ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). |
| `state` | string | No | Filter issues by state (e.g., 'open', 'closed'). |
| `filter` | string | No | Specifies the relationship for filtering issues (e.g., 'assigned', 'created'). |
| `labels` | string | No | Comma-separated list of label names for filtering. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `direction` | string | No | Sort direction. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List issue types

**Slug:** `GITHUB_LIST_ISSUE_TYPES`

List all issue types configured for a GitHub organization. Requires read:org scope for OAuth tokens.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List jobs for a workflow run

**Slug:** `GITHUB_LIST_JOBS_FOR_A_WORKFLOW_RUN`

Lists jobs for a specific workflow run in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more details, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the .git extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `filter` | string ("latest" | "all") | No | Filters jobs by their `completed_at` timestamp. `latest` returns jobs from the most recent execution attempt of the workflow run. `all` returns all jobs for a workflow run, including from previous execution attempts. |
| `run_id` | integer | Yes | The unique identifier of the workflow run for which jobs are to be listed. |
| `per_page` | integer | No | The number of results to return per page, with a maximum of 100. For more details, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List jobs for a workflow run attempt

**Slug:** `GITHUB_LIST_JOBS_FOR_A_WORKFLOW_RUN_ATTEMPT`

Lists jobs, including details like ID, status, and steps, for a specific attempt of a GitHub Actions workflow run.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `attempt_number` | integer | Yes | Attempt number of the workflow run, corresponding to a specific retry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List labels for an issue

**Slug:** `GITHUB_LIST_LABELS_FOR_AN_ISSUE`

Lists all labels for a specified issue in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. Defaults to 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This is not case-sensitive. |
| `per_page` | integer | No | The number of results to return per page. Maximum value is 100. Defaults to 30. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `issue_number` | integer | Yes | The unique number identifying the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List labels for a repository

**Slug:** `GITHUB_LIST_LABELS_FOR_A_REPOSITORY`

Retrieves all labels for a specified, existing GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch (starts from 1). |
| `repo` | string | Yes | Name of the repository, without the .git extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List labels for a self-hosted runner for a repository

**Slug:** `GITHUB_LIST_LABELS_FOR_A_SELF_HOSTED_RUNNER_FOR_A_REPOSITORY`

Lists all labels assigned to a specific self-hosted runner registered with the given repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `runner_id` | integer | Yes | The unique identifier (ID) of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List labels for issues in a milestone

**Slug:** `GITHUB_LIST_LABELS_FOR_ISSUES_IN_A_MILESTONE`

Lists all labels for issues within a specific milestone in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is case-insensitive. |
| `per_page` | integer | No | The number of results to return per page. The maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `milestone_number` | integer | Yes | The unique number that identifies the milestone. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List labels for a self-hosted runner for an organization

**Slug:** `GITHUB_LIST_LABELS_FOR_SELF_HOSTED_RUNNER_ORG`

Lists all labels assigned to a specific self-hosted runner within a GitHub organization, which are used to route workflows.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `runner_id` | integer | Yes | The unique identifier (ID) of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Licenses (GraphQL)

**Slug:** `GITHUB_LIST_LICENSES_GRAPH_QL`

Tool to fetch all known open source licenses using GitHub's GraphQL API. Use when you need to retrieve the complete list of licenses that can be applied to repositories.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List machine types for a codespace

**Slug:** `GITHUB_LIST_MACHINE_TYPES_FOR_A_CODESPACE`

Lists available machine types for a specific, accessible codespace, enabling it to be transitioned to a new hardware configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | The unique name of the codespace for which to list available machine types. This is often a combination of a username, repository name, and a unique identifier. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List matching references

**Slug:** `GITHUB_LIST_MATCHING_REFERENCES`

Lists all Git references (branches or tags) in a repository that start with the provided partial reference path (e.g., `heads/my-feature` or `tags/v1.2`).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Partial Git reference path (e.g., 'heads/main', 'tags/v1.0') to match from the beginning of the reference name; do not include the `refs/` prefix. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List milestones

**Slug:** `GITHUB_LIST_MILESTONES`

Lists milestones, which track progress for groups of issues and pull requests, for an existing repository, allowing filtering by state and sorting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `sort` | string ("due_on" | "completeness") | No | Sort by `due_on` (due date) or `completeness` (percentage of issues completed). |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `state` | string ("open" | "closed" | "all") | No | Filters milestones by their state. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `direction` | string ("asc" | "desc") | No | Sort direction: `asc` (ascending) or `desc` (descending). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List notifications for authenticated user

**Slug:** `GITHUB_LIST_NOTIFICATIONS`

Tool to list notification threads for the authenticated user with efficient polling support. Use when you need to fetch the user's GitHub notification inbox with filters like unread/participating/since. Returns notification threads plus polling headers (Last-Modified, ETag, X-Poll-Interval) for efficient polling. IMPORTANT: This endpoint requires a Personal Access Token (classic) with 'notifications' or 'repo' scope. It does NOT work with GitHub App tokens or fine-grained personal access tokens. If the token type is incompatible, a clear error message will be returned.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `all` | boolean | No | If true, show notifications marked as read. Default shows only unread notifications. |
| `page` | integer | No | Page number of results to fetch. |
| `since` | string | No | Only show notifications updated after the given ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). |
| `before` | string | No | Only show notifications updated before the given ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). |
| `per_page` | integer | No | Number of results per page (maximum 50). |
| `participating` | boolean | No | If true, only shows notifications in which the user is directly participating or mentioned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List notifications for the authenticated user (Deprecated)

**Slug:** `GITHUB_LIST_NOTIFICATIONS_FOR_THE_AUTHENTICATED_USER`

DEPRECATED: Use GITHUB_LIST_NOTIFICATIONS instead. Lists notifications for the authenticated user, sorted by most recent update, with filtering and pagination options.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `all` | boolean | No | If `true`, shows all notifications including those marked as read. |
| `page` | integer | No | Page number of results to fetch. |
| `since` | string | No | Only show notifications updated after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `before` | string | No | Only show notifications updated before this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of results per page (max 50). |
| `participating` | boolean | No | If `true`, shows only notifications in which the authenticated user is directly participating or has been mentioned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List org level codespaces secrets

**Slug:** `GITHUB_LIST_ORGANIZATION_CODESPACES_SECRETS`

Lists all Codespaces secrets available for a specified organization, which must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `page` | integer | No | Page number for pagination. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization events for the authenticated user

**Slug:** `GITHUB_LIST_ORGANIZATION_EVENTS_FOR_THE_AUTHENTICATED_USER`

Lists public events in a specified GitHub organization for the authenticated user's organization dashboard. Returns activities like repository pushes, pull requests, issues, forks, and other public events within the organization. The authenticated user must be a member of the organization to see events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `page` | integer | No | The page number of results to retrieve. Page numbering starts at 1. Default is 1. |
| `per_page` | integer | No | Number of events to return per page. Must be between 1 and 100. Default is 30. |
| `username` | string | Yes | The GitHub username of the authenticated user. Must match the username of the account associated with the authentication token. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization members

**Slug:** `GITHUB_LIST_ORGANIZATION_MEMBERS`

Lists public and concealed members of a GitHub organization; viewing concealed members requires authenticated user to be an organization member.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization's name (case-insensitive). |
| `page` | integer | No | The page number of the results to fetch (1-indexed). |
| `role` | string ("all" | "admin" | "member") | No | Filter members by their role in the organization. |
| `filter` | string ("2fa_disabled" | "all") | No | Filter for members: '2fa_disabled' returns only members without two-factor authentication (available only to organization owners). |
| `per_page` | integer | No | The number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization memberships for authenticated user

**Slug:** `GITHUB_LIST_ORGANIZATION_MEMBERSHIPS_FOR_THE_AUTHENTICATED_U`

List organization memberships for authenticated user

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. |
| `state` | string ("active" | "pending") | No | Membership state filter options. |
| `per_page` | integer | No | The number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization projects

**Slug:** `GITHUB_LIST_ORGANIZATION_PROJECTS`

Lists projects (V2) for a specified GitHub organization, with optional search query and cursor-based pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | No | Limit results to projects of the specified type or matching a search query. |
| `org` | string | Yes | The name of the GitHub organization (e.g., 'octocat', 'microsoft'). This name is not case-sensitive. |
| `after` | string | No | A cursor for pagination. Returns results after this cursor. |
| `before` | string | No | A cursor for pagination. Returns results before this cursor. |
| `per_page` | integer | No | Number of projects to return per page (maximum 100). GitHub Projects V2 uses the GraphQL API and cursor-based pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization repositories

**Slug:** `GITHUB_LIST_ORGANIZATION_REPOSITORIES`

Retrieves a list of repositories for a specified GitHub organization, allowing filtering by type and sorting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (not case-sensitive). |
| `page` | integer | No | Page number for pagination (starts from 1). |
| `sort` | string ("created" | "updated" | "pushed" | "full_name") | No | Property to sort repositories by: `created`, `updated`, `pushed`, or `full_name`. |
| `type` | string ("all" | "public" | "private" | "forks" | "sources" | "member") | No | Specifies the type of repositories to return: `all`, `public`, `private` (requires permissions), `forks`, `sources` (not forks), or `member` (repositories with explicit user access). |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `direction` | string ("asc" | "desc") | No | Sort order: `asc` (ascending) or `desc` (descending). Defaults to `asc` if `sort` is `full_name`, else `desc`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all organization roles for an organization

**Slug:** `GITHUB_LIST_ORGANIZATION_ROLES_FOR_AN_ORGANIZATION`

Lists all custom organization roles for an existing GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique name of the GitHub organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organizations

**Slug:** `GITHUB_LIST_ORGANIZATIONS`

Lists GitHub organizations for the authenticated user, sorted by ID in ascending order.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `since` | integer | No | An organization ID. If provided, only organizations with an ID greater than this will be returned, for pagination. |
| `per_page` | integer | No | Number of results to return per page, max 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization secrets

**Slug:** `GITHUB_LIST_ORGANIZATION_SECRETS`

Lists GitHub Actions secrets available for a specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `page` | integer | No | Page number for results. |
| `per_page` | integer | No | Number of secrets to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organizations for a user

**Slug:** `GITHUB_LIST_ORGANIZATIONS_FOR_A_USER`

Lists public organizations for a specified GitHub user; the `username` must be a valid GitHub handle.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `username` | string | Yes | GitHub username (handle) of the user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organizations for the authenticated user

**Slug:** `GITHUB_LIST_ORGANIZATIONS_FOR_THE_AUTHENTICATED_USER`

Lists organizations the authenticated GitHub user is a member of, returning details for each organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve, used for pagination. Default is 1. |
| `per_page` | integer | No | The number of organization results to return per page. Default is 30, maximum is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization variables

**Slug:** `GITHUB_LIST_ORGANIZATION_VARIABLES`

Lists all GitHub Actions variables for a specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `page` | integer | No | Page number of results to fetch (starts at 1). |
| `per_page` | integer | No | Number of results per page (max 30). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization webhooks

**Slug:** `GITHUB_LIST_ORGANIZATION_WEBHOOKS`

Lists all webhooks for a specified GitHub organization; the organization must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (not case-sensitive). |
| `page` | integer | No | Page number of results to fetch. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization fine-grained permissions

**Slug:** `GITHUB_LIST_ORG_FINE_GRAINED_PERMISSIONS`

Lists all fine-grained permissions available in a GitHub organization for use in custom organization roles. These permissions define granular access controls that can be combined when creating custom roles. Note: This endpoint requires GitHub Enterprise Cloud with the custom organization roles feature enabled. The authenticated user must be an administrator or have the 'read_organization_custom_org_role' permission.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). Note: This endpoint requires GitHub Enterprise Cloud with custom organization roles enabled. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization issues assigned to the authenticated user

**Slug:** `GITHUB_LIST_ORG_ISSUES_FOR_THE_AUTHENTICATED_USER`

Lists issues for the authenticated user within a specified GitHub organization, with options to filter by involvement type, state, labels, and to sort results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `page` | integer | No | Page number of the results to retrieve. |
| `sort` | string ("created" | "updated" | "comments") | No | Field to sort results by. |
| `since` | string | No | Only issues updated at or after this time are returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. |
| `state` | string ("open" | "closed" | "all") | No | Filters issues by their state. |
| `filter` | string ("assigned" | "created" | "mentioned" | "subscribed" | "repos" | "all") | No | Filter indicating the type of issues to return based on user involvement (e.g., `assigned`, `created`, `mentioned`, `subscribed`, or `all`/`repos` for all accessible issues). |
| `labels` | string | No | A comma-separated list of label names to filter issues by. For example: `bug,ui,@high`. Issues returned must match all specified labels. |
| `per_page` | integer | No | Number of issues to return per page (maximum 100). |
| `direction` | string ("asc" | "desc") | No | Direction for sorting results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List package versions for an organization package

**Slug:** `GITHUB_LIST_ORG_PACKAGE_VERSIONS`

Lists all versions for a specified package, if it exists and is owned by the given GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization owning the package (case-insensitive). |
| `page` | integer | No | Page number for results (starts at 1). |
| `state` | string ("active" | "deleted") | No | Filters package versions by state. |
| `per_page` | integer | No | Results per page (max 100). |
| `package_name` | string | Yes | Unique package name within its ecosystem. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Package's ecosystem. Important notes: GitHub Gradle packages use `maven`; images in ghcr.io use `container`; `docker` type can find images from docker.pkg.github.com, including those migrated to ghcr.io. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization project view items

**Slug:** `GITHUB_LIST_ORG_PROJECT_VIEW_ITEMS`

Tool to list items for an organization project view. Use when you need to retrieve all items from a specific view within a GitHub organization's Projects V2 project. Returns a list of project items with their content, metadata, and field values.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see 'Using pagination in the REST API'. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see 'Using pagination in the REST API'. |
| `fields` | string | No | Limit results to specific fields, by their IDs. If not specified, the title field will be returned. Example: 'fields[]=123&fields[]=456&fields[]=789' or 'fields=123,456,789' |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see 'Using pagination in the REST API'. |
| `view_number` | integer | Yes | The number that identifies the project view. |
| `project_number` | integer | Yes | The project's number (unique identifier within the organization). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization repositories with Github Actions enabled

**Slug:** `GITHUB_LIST_ORG_REPOS_WITH_GITHUB_ACTIONS_ENABLED`

Lists the selected repositories that are enabled for GitHub Actions in an organization. This endpoint only returns results when the organization's 'enabled_repositories' permission policy is configured to 'selected'. Requires admin:org scope and organization admin permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `page` | integer | No | The page number of the results to fetch. |
| `per_page` | integer | No | The number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List org resource access tokens

**Slug:** `GITHUB_LIST_ORG_RESOURCE_ACCESS_TOKENS`

Lists approved fine-grained personal access tokens (PATs) with access to resources in a GitHub organization, optionally filtering by owner, repository, permissions, or last usage time. AUTHENTICATION REQUIREMENT: This endpoint requires GitHub App authentication with 'Personal access tokens' organization permissions (read). Standard personal access tokens CANNOT use this endpoint. The GitHub App must also have access to the organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (not case-sensitive). |
| `page` | integer | No | Page number of results to fetch (starts from 1). |
| `sort` | string ("created_at") | No | Property to sort results by. Currently only 'created_at' is supported. |
| `owner` | array | No | Filter by a list of owner usernames (max 10 items). |
| `per_page` | integer | No | Number of results per page (max 100). |
| `token_id` | array | No | Filter by a list of token IDs (max 50 items). Use this to look up specific tokens. |
| `direction` | string ("asc" | "desc") | No | Sort direction: 'asc' for ascending or 'desc' for descending (default). |
| `permission` | string | No | Filter by permission string in format 'scope:level' where scope is the permission area (e.g., 'issues', 'actions', 'contents') and level is 'read' or 'write'. Common examples: 'issues:read', 'issues:write', 'actions:read', 'actions:write', 'contents:read', 'contents:write', 'metadata:read', 'pull_requests:write'. |
| `repository` | string | No | Filter by repository name. |
| `last_used_after` | string | No | Filter for tokens last used after this ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). |
| `last_used_before` | string | No | Filter for tokens last used before this ISO 8601 timestamp (YYYY-MM-DDTHH:MM:SSZ). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List org resources with personal tokens

**Slug:** `GITHUB_LIST_ORG_RESOURCES_WITH_PERSONAL_TOKENS`

Lists requests from organization members to access organization resources with fine-grained personal access tokens (pending, approved, or denied). Note: This endpoint requires GitHub App authentication with 'organization_personal_access_token_requests:read' permissions; it cannot be used with personal access tokens.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `page` | integer | No | Page number for results (1-based). |
| `sort` | string ("created_at") | No | Sorts results by 'created_at' (currently the only supported property). |
| `owner` | array | No | Filter by a list of token owner GitHub usernames. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `token_id` | array | No | Filter by a list of token IDs (max 50 items). Use this to look up specific token requests. |
| `direction` | string ("asc" | "desc") | No | Sort direction: 'asc' for ascending or 'desc' for descending. |
| `permission` | string | No | Filters requests by the specific permission granted to the token. |
| `repository` | string | No | Filter by repository name for tokens that access this repository. |
| `last_used_after` | string | No | Filters for tokens last used after this ISO 8601 timestamp. |
| `last_used_before` | string | No | Filters for tokens last used before this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List organization Dependabot secrets without values

**Slug:** `GITHUB_LIST_ORG_SECRETS_WITHOUT_VALUES`

Lists all Dependabot secrets (metadata like names, creation/update timestamps, but not their encrypted values) for a specified organization, which must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The unique identifier of the GitHub organization. This name is not case-sensitive. |
| `page` | integer | No | The page number of the results to fetch. Starts from 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `per_page` | integer | No | The number of results to return per page. The maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List outside collaborators for an organization

**Slug:** `GITHUB_LIST_OUTSIDE_COLLABORATORS_FOR_AN_ORGANIZATION`

Lists outside collaborators for a GitHub organization, with options to filter (e.g., by 2FA status) and paginate results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (not case-sensitive). |
| `page` | integer | No | Page number for pagination. |
| `filter` | string ("2fa_disabled" | "2fa_insecure" | "all") | No | Filter for the list: 'all' for every collaborator, '2fa_disabled' for those without two-factor authentication, '2fa_insecure' for those with insecure 2FA. |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List owned package versions

**Slug:** `GITHUB_LIST_OWNED_PACKAGE_VERSIONS`

Lists all versions for an existing package owned by the authenticated user, identified by its type and name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch, starting from 1. |
| `state` | string ("active" | "deleted") | No | Filters package versions by state. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `package_name` | string | Yes | Unique name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Packages in GitHub's Gradle registry have the type `maven`. Docker images pushed to GitHub's Container registry (`ghcr.io`) have the type `container`. Use `docker` to find images from GitHub's Docker registry (`docker.pkg.github.com`), even if migrated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List packages for an organization

**Slug:** `GITHUB_LIST_PACKAGES_FOR_AN_ORGANIZATION`

Lists GitHub Packages for an organization, noting specific interpretations for package_type and visibility parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `page` | integer | No | Page number for paginated results. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `visibility` | string ("public" | "private" | "internal") | No | Filter packages by visibility. 'internal' is for registries with granular permissions; otherwise, it's treated as 'private'. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Package type to filter by. Note: Gradle packages use 'maven'; ghcr.io Docker images use 'container'; 'docker' type finds images from docker.pkg.github.com. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List packages for a user

**Slug:** `GITHUB_LIST_PACKAGES_FOR_A_USER`

Lists packages for a specified GitHub user, filterable by package type and visibility.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |
| `username` | string | Yes | The GitHub username of the account whose packages are to be listed. |
| `visibility` | string ("public" | "private" | "internal") | No | Filters packages by visibility. The `internal` visibility is supported only for GitHub Packages registries allowing granular permissions; for others, `internal` is synonymous with `private`. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Filters by package type. Note: GitHub's Gradle packages are type `maven`. Images in `ghcr.io` (Container registry) are `container`. Use `docker` for images from `docker.pkg.github.com`, including those migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List packages for the authenticated user's namespace

**Slug:** `GITHUB_LIST_PACKAGES_FOR_THE_AUTHENTICATED_USER`

Lists packages of a specific type and visibility within the authenticated user's namespace on GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of results to return per page, maximum 100. |
| `visibility` | string ("public" | "private" | "internal") | No | Filters packages by visibility. 'internal' is specific to GitHub Packages registries with granular permissions; for others, it's treated as 'private'. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | The type of package to list. For GitHub's Gradle registry, use 'maven'; for Docker images from GitHub's Container registry (ghcr.io), use 'container'. 'docker' finds images from the original Docker registry (docker.pkg.github.com), even if migrated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List package versions for a package owned by a user

**Slug:** `GITHUB_LIST_PACKAGE_VERSIONS_FOR_A_PACKAGE_OWNED_BY_A_USER`

Lists all versions of a public package owned by a specific GitHub user, identified by package type, package name, and username.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the account that owns the package (e.g., 'octocat'). |
| `package_name` | string | Yes | The name of the package as it is registered in GitHub Packages. |
| `package_type` | string | Yes | Type of the package. Valid values: npm, maven, rubygems, docker, nuget, container. Note: GitHub Gradle registry packages use 'maven'. GitHub Container registry (ghcr.io) images use 'container'. The 'docker' type can find images from the older GitHub Docker registry (docker.pkg.github.com), even if migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pending team invitations

**Slug:** `GITHUB_LIST_PENDING_TEAM_INVITATIONS`

Lists all pending membership invitations for a specified team within an organization. The authenticated user must be an organization member with the read:org scope. The response includes invitation details such as the invitee's login/email, the role they're being invited to, and who sent the invitation. The 'role' field indicates the type of invitation: - 'direct_member': Regular organization member - 'admin': Organization administrator - 'billing_manager': Billing manager role - 'hiring_manager': Hiring manager role - 'reinstate': Reinstating a previous member Note: If the invitee is not a GitHub member, the 'login' field will be null and only the 'email' field will be populated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). The authenticated user must be an organization member with read:org scope. |
| `page` | integer | No | Page number of results to fetch (1-indexed). Default is 1. |
| `per_page` | integer | No | Number of results per page (max 100). Default is 30. |
| `team_slug` | string | Yes | The slug (URL-friendly identifier) of the team name. Typically lowercase and hyphenated (e.g., 'my-team' for 'My Team'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List project cards (Classic - Deprecated)

**Slug:** `GITHUB_LIST_PROJECT_CARDS`

Lists all project cards for a given column_id in GitHub Projects (classic). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ Returns a list of project cards including: id, node_id, url, note (or null for linked cards), creator info, content_url (for issue/PR cards), column_url, project_url, timestamps, and archived status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to retrieve (1-indexed). Default is 1. |
| `per_page` | integer | No | Number of project cards to return per page (1-100). Default is 30. |
| `column_id` | integer | Yes | The unique identifier of the project column for which to list cards. This ID can be obtained from the 'list_project_columns' action or from the column's API URL (e.g., /projects/columns/12345). |
| `archived_state` | string ("all" | "archived" | "not_archived") | No | Filters the project cards based on their archived state. Options: "all" returns all cards, "archived" returns only archived cards, and "not_archived" returns only unarchived/active cards. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List project collaborators (classic)

**Slug:** `GITHUB_LIST_PROJECT_COLLABORATORS`

Lists collaborators for a GitHub Project (classic) by project ID. IMPORTANT: This action uses the Projects (classic) REST API which was sunset on April 1, 2025 for GitHub.com. The API may still be available on GitHub Enterprise Server versions before 3.17. For GitHub.com users: GitHub Projects (classic) has been replaced by the new Projects experience. The new Projects does not have a REST API for listing collaborators - use the GitHub web interface to manage project collaborators instead. You must be an organization owner or a project admin to list collaborators.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. Starts at 1. |
| `per_page` | integer | No | Number of collaborators to return per page. Maximum is 100. |
| `project_id` | integer | Yes | The unique numeric identifier of the Project (classic). This is a database ID, not the project number shown in URLs. |
| `affiliation` | string ("outside" | "direct" | "all") | No | Filter collaborators by affiliation type: 'outside' returns only outside collaborators (users who are not organization members), 'direct' returns only collaborators with explicit project permissions, 'all' returns all collaborators including organization members with default permissions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List project columns

**Slug:** `GITHUB_LIST_PROJECT_COLUMNS`

Lists all of a GitHub project's columns (e.g., 'To Do', 'In Progress'); project_id must identify a valid, accessible project. Note: This action uses GitHub's Projects (classic) REST API. The Projects (classic) API was sunset on April 1, 2025. This action will return an empty columns list with an informative message for projects that no longer exist or when the API returns 404.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. Starts from 1. For more information on pagination, see GitHub's REST API documentation: https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api. |
| `per_page` | integer | No | The number of results to return per page. The maximum value is 100. For more information on pagination, see GitHub's REST API documentation: https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api. |
| `project_id` | integer | Yes | The unique identifier of the project for which columns are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List project fields for user

**Slug:** `GITHUB_LIST_PROJECT_FIELDS_FOR_USER`

Tool to list all fields in a GitHub Projects V2 project for a specific user. Use when you need to see available fields in a project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `after` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results after this cursor. For more information, see '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)'. |
| `before` | string | No | A cursor, as given in the Link header. If specified, the query only searches for results before this cursor. For more information, see '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)'. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)'. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number (visible in the project URL). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List project items for user

**Slug:** `GITHUB_LIST_PROJECT_ITEMS_FOR_USER`

Tool to list items for a user-owned GitHub project. Use when you need to retrieve all items (issues, pull requests, draft issues) from a specific project belonging to a user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | No | Search query to filter items. See GitHub's filtering projects documentation for syntax. |
| `after` | string | No | A cursor for pagination. If specified, the query only searches for results after this cursor. |
| `before` | string | No | A cursor for pagination. If specified, the query only searches for results before this cursor. |
| `fields` | string | No | Limit results to specific fields by their IDs. Format: 'fields[]=123&fields[]=456' or 'fields=123,456,789'. If not specified, the title field will be returned. |
| `per_page` | integer | No | The number of results per page (max 100). Defaults to 30. |
| `username` | string | Yes | The handle for the GitHub user account. |
| `project_number` | integer | Yes | The project's number (displayed in the project URL). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List items for user project view

**Slug:** `GITHUB_LIST_PROJECT_VIEW_ITEMS_FOR_USER`

Tool to list items for a user's GitHub Projects (v2) view. Use when you need to retrieve items from a specific view of a user's project. Supports pagination and field filtering.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `after` | string | No | A cursor for pagination. If specified, the query only searches for results after this cursor. |
| `before` | string | No | A cursor for pagination. If specified, the query only searches for results before this cursor. |
| `fields` | string | No | Limit results to specific fields by their IDs. If not specified, the title field will be returned. Example: '123,456,789' |
| `per_page` | integer | No | The number of results per page (max 100). |
| `username` | string | Yes | The GitHub username that owns the project. |
| `view_number` | integer | Yes | The number that identifies the project view. |
| `project_number` | integer | Yes | The project's number (unique identifier within the user's projects). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public email addresses for the authenticated user

**Slug:** `GITHUB_LIST_PUBLIC_EMAILS_FOR_AUTH_USER`

Lists the public email addresses for the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of results to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public events

**Slug:** `GITHUB_LIST_PUBLIC_EVENTS`

Lists public GitHub events, which may be delayed by up to 5 minutes, with support for pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Specifies the page number of the results to retrieve. Starts from 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `per_page` | integer | No | Specifies the number of events to return per page. Maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public events for a network of repositories

**Slug:** `GITHUB_LIST_PUBLIC_EVENTS_FOR_A_NETWORK_OF_REPOSITORIES`

Retrieves public events (up to 90 days old, newest first) for a GitHub repository network, including the repository and its forks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Specifies the page number for the results to be fetched. For further details, consult "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | Sets the number of results to return per page, with a maximum of 100. For further details, consult "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public events for a user

**Slug:** `GITHUB_LIST_PUBLIC_EVENTS_FOR_A_USER`

Retrieves a list of public events for a specified GitHub user, in reverse chronological order.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. |
| `per_page` | integer | No | Number of events to return per page (max 100). |
| `username` | string | Yes | The GitHub username (e.g., 'octocat'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public events received by a user

**Slug:** `GITHUB_LIST_PUBLIC_EVENTS_RECEIVED_BY_A_USER`

Lists public events for a specified GitHub user (e.g., activities in repositories they watch or are involved in); the target user's profile must be public, and if blocked by the authenticated user, a 404 error is returned.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number for the set of results to be fetched. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `per_page` | integer | No | The number of public events to retrieve per page. The maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `username` | string | Yes | The GitHub username for the user whose received public events are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public gists

**Slug:** `GITHUB_LIST_PUBLIC_GISTS`

Lists public gists from GitHub, optionally filtering by a 'since' timestamp and supporting pagination; results are generally newest first.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch for pagination. |
| `since` | string | No | Filters results to gists last updated at or after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of gists to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public keys for a user

**Slug:** `GITHUB_LIST_PUBLIC_KEYS_FOR_A_USER`

Lists the verified public SSH keys for a specified GitHub user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `per_page` | integer | No | The number of results to return per page (maximum 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `username` | string | Yes | The GitHub username (handle) of the user whose public SSH keys are to be listed. For example, 'octocat'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public organization events

**Slug:** `GITHUB_LIST_PUBLIC_ORGANIZATION_EVENTS`

Lists public events for a specified GitHub organization, which must exist. This action retrieves the events that are publicly accessible for the organization specified. It returns a paginated list of events with details about each event.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `page` | integer | No | Page number of results to retrieve (starts from 1). |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public organization members

**Slug:** `GITHUB_LIST_PUBLIC_ORGANIZATION_MEMBERS`

Lists users who have publicly declared their membership in a specified, existing GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). Defaults to 30. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List public repositories

**Slug:** `GITHUB_LIST_PUBLIC_REPOSITORIES`

Lists all public repositories on GitHub; use the `since` parameter with a repository ID from a previous result for pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `since` | integer | No | A repository ID. Returns only repositories with an ID greater than this value, for pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pull requests

**Slug:** `GITHUB_LIST_PULL_REQUESTS`

Lists pull requests for a GitHub repository. REQUIRES 'owner' AND 'repo' parameters - both are MANDATORY and must be provided in every call. Does NOT support filtering by assignee or date range - use GITHUB_FIND_PULL_REQUESTS instead for searching PRs by assignee, author, or across multiple repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `base` | string | No | Filter by base branch name. |
| `head` | string | No | Filter by head user/org and branch name, e.g., `user:ref-name`. |
| `page` | integer | No | Page number for results. |
| `repo` | string | Yes | [REQUIRED - MUST BE PROVIDED] The name of the repository (without the `.git` extension). This parameter is mandatory and cannot be omitted. Example: 'Spoon-Knife' or 'vscode'. To search PRs across multiple repos, use GITHUB_FIND_PULL_REQUESTS instead. |
| `sort` | string | No | Sorts results. Valid values: 'created', 'updated', 'popularity', 'long-running'. 'popularity' is by comment count; 'long-running' by age and recent activity. |
| `owner` | string | Yes | [REQUIRED - MUST BE PROVIDED] The GitHub username or organization name that owns the repository. This parameter is mandatory and cannot be omitted. Example: 'octocat' or 'microsoft'. To search PRs across all repos without specifying owner, use GITHUB_FIND_PULL_REQUESTS instead. |
| `state` | string | No | Filter by pull request state. Valid values: 'open', 'closed', 'all'. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `direction` | string | No | Sort direction. Valid values: 'asc', 'desc'. Defaults to 'desc' if sort is 'created' or unspecified, else 'asc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pull requests associated with a commit

**Slug:** `GITHUB_LIST_PULL_REQUESTS_ASSOCIATED_WITH_A_COMMIT`

Lists pull requests for a commit; returns merged PRs that introduced the commit if on the default branch, or open PRs including the commit if on other branches.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to retrieve. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (GitHub username or organization name, case-insensitive). |
| `per_page` | integer | No | Number of results per page (max 100). |
| `commit_sha` | string | Yes | SHA of the commit to list associated pull requests for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pull requests files

**Slug:** `GITHUB_LIST_PULL_REQUESTS_FILES`

Lists all files (including additions, modifications, and removals) associated with a specific pull request in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve for pagination. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case sensitive. |
| `per_page` | integer | No | Number of file results to return per page (max 100). |
| `pull_number` | integer | Yes | The numeric identifier of the pull request whose files are to be listed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for a commit comment

**Slug:** `GITHUB_LIST_REACTIONS_FOR_A_COMMIT_COMMENT`

Lists reactions for a specific commit comment; this is a read-only operation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for the results (1-indexed). |
| `repo` | string | Yes | Repository name, excluding the '.git' extension (case-insensitive). |
| `owner` | string | Yes | Owner of the repository (username or organization, case-insensitive). |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Filter by reaction type. If unspecified, all reaction types for the comment are returned. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `comment_id` | integer | Yes | Identifier of the commit comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for an issue

**Slug:** `GITHUB_LIST_REACTIONS_FOR_AN_ISSUE`

Lists reactions for a specific, existing issue within an accessible GitHub repository, optionally filtering by content type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch for pagination. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Filters reactions by a specific type. If omitted, all reactions to the issue are listed. |
| `per_page` | integer | No | The number of results to return per page, up to a maximum of 100. |
| `issue_number` | integer | Yes | The unique number identifying the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for an issue comment

**Slug:** `GITHUB_LIST_REACTIONS_FOR_AN_ISSUE_COMMENT`

Lists reactions for a specific issue comment in a GitHub repository, optionally filtering by content type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a user or organization). This name is not case sensitive. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Filters reactions by their content type (e.g., '+1', 'laugh'). Omit to list all types of reactions. |
| `per_page` | integer | No | Number of results to return per page (max 100). |
| `comment_id` | integer | Yes | The unique identifier of the issue comment for which to list reactions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for a pull request review comment

**Slug:** `GITHUB_LIST_REACTIONS_FOR_A_PULL_REQUEST_REVIEW_COMMENT`

Lists reactions for a pull request review comment in a repository, optionally filtering by reaction type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Filters reactions by a specific type; if omitted, all reactions are listed. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `comment_id` | integer | Yes | Unique identifier of the pull request review comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for a release

**Slug:** `GITHUB_LIST_REACTIONS_FOR_A_RELEASE`

Lists all reactions, or optionally filters reactions by a specific content type, for a given GitHub release.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. Starts from 1. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The GitHub account owner of the repository (not case-sensitive). |
| `content` | string ("+1" | "laugh" | "heart" | "hooray" | "rocket" | "eyes") | No | Supported reaction types for releases (note: -1 and confused are NOT supported for releases). |
| `per_page` | integer | No | Number of results per page. Range: 1-100, default: 30. |
| `release_id` | integer | Yes | The unique identifier of the release. Obtain this from the List Releases API or from the release URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for a team discussion

**Slug:** `GITHUB_LIST_REACTIONS_FOR_A_TEAM_DISCUSSION`

Lists reactions for an existing team discussion within an organization. This endpoint allows you to retrieve all reactions (emoji responses) made to a specific team discussion. You can optionally filter by reaction type. Note: OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. Account name of the organization (case-insensitive). |
| `page` | integer | No | The page number of results to fetch. Default: 1. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Valid reaction content types for GitHub team discussions. |
| `per_page` | integer | No | The number of results per page (max 100). Default: 30. |
| `team_slug` | string | Yes | The team's slug (URL-friendly identifier). This is the lowercase, hyphenated version of the team name. |
| `discussion_number` | integer | Yes | The unique number that identifies the team discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reactions for a team discussion comment

**Slug:** `GITHUB_LIST_REACTIONS_FOR_A_TEAM_DISCUSSION_COMMENT`

Lists reactions for a specific comment in a team discussion within an organization, optionally filtering by content type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `page` | integer | No | Page number of the results to retrieve. |
| `content` | string ("+1" | "-1" | "laugh" | "confused" | "heart" | "hooray" | "rocket" | "eyes") | No | Filters reactions by a specific content type. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `team_slug` | string | Yes | URL-friendly slug of the team name. |
| `comment_number` | integer | Yes | Unique identifier for the comment within the discussion. |
| `discussion_number` | integer | Yes | Unique identifier for the team discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List release assets

**Slug:** `GITHUB_LIST_RELEASE_ASSETS`

Lists assets (e.g., compiled binaries, source code archives) for a specific GitHub release, identified by `release_id` which must be valid for an existing release in the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch (starts from 1). For pagination details, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | Name of the repository, excluding the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (case-insensitive). |
| `per_page` | integer | No | Number of results per page (max 100). For pagination details, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `release_id` | integer | Yes | Unique numerical identifier for the release. Obtainable by listing a repository's releases. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List releases

**Slug:** `GITHUB_LIST_RELEASES`

Retrieves a list of all releases (published, draft, and prerelease) for a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `per_page` | integer | No | The number of results to return per page. The maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repo access by token

**Slug:** `GITHUB_LIST_REPO_ACCESS_BY_TOKEN`

Lists repositories in an organization that a fine-grained personal access token has requested access to. Only GitHub Apps can use this endpoint. Requires 'Personal access token requests' organization permissions (read).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `page` | integer | No | The page number of the results to fetch. |
| `per_page` | integer | No | The number of results per page (max 100). |
| `pat_request_id` | integer | Yes | Unique identifier of the request for access via fine-grained personal access token. Obtain this from the 'List PAT grant requests' endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repo codespaces for authenticated user

**Slug:** `GITHUB_LIST_REPO_CODESPACES`

Lists Codespaces the authenticated user can access within a specified, existing repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the account that owns the repository (case-insensitive). |
| `per_page` | integer | No | Number of results to return per page. Maximum: 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repo dev container configs for user

**Slug:** `GITHUB_LIST_REPO_DEV_CONTAINER_CONFIGS_FOR_USER`

Lists the `devcontainer.json` configurations available in a specified repository for use with GitHub Codespaces.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the dev container configuration results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The username or organization name that owns the repository (not case-sensitive). |
| `per_page` | integer | No | Number of dev container configuration results to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List authenticated user's repository invitations

**Slug:** `GITHUB_LIST_REPO_INVITATIONS_FOR_AUTH_USER`

Lists all pending repository invitations for the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results to return per page. Maximum allowed value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository notifications for the authenticated user

**Slug:** `GITHUB_LIST_REPO_NOTIFICATIONS_FOR_AUTH_USER`

Retrieves notifications for the authenticated user from a specified repository, to which the user must have access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `all` | boolean | No | If `true`, shows notifications marked as read; otherwise, only unread notifications are returned. |
| `page` | integer | No | The page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `since` | string | No | Only includes notifications last updated on or after this ISO 8601 UTC timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `before` | string | No | Only includes notifications last updated before this ISO 8601 UTC timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | The number of notifications to return per page. Maximum value is 100. |
| `participating` | boolean | No | If `true`, shows only notifications in which the authenticated user is directly participating or was mentioned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repo secrets without values

**Slug:** `GITHUB_LIST_REPO_SECRETS_WITHOUT_VALUES`

Lists all Codespaces secrets available in a specific repository, without their encrypted values.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. Used for pagination. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This is not case-sensitive. |
| `per_page` | integer | No | Number of secrets to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repos accessible to app installation

**Slug:** `GITHUB_LIST_REPOSITORIES_ACCESSIBLE_TO_THE_APP_INSTALLATION`

Lists repositories a GitHub App installation can access. IMPORTANT: This endpoint requires a GitHub App installation access token (ghs_* prefix) for authentication. OAuth/user access tokens (gho_*) or personal access tokens are not supported and will result in a 403 Forbidden error. Returns 'total_count' and 'repositories' array with pagination support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories for a user

**Slug:** `GITHUB_LIST_REPOSITORIES_FOR_A_USER`

Lists public repositories for a specified GitHub user, who must have an existing account.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for results (starts from 1). See GitHub REST API pagination docs for more info. |
| `sort` | string ("created" | "updated" | "pushed" | "full_name") | No | Sort criterion: `created` (default), `updated`, `pushed`, or `full_name` (repository name). When not specified, GitHub API defaults to `created`. |
| `type` | string ("all" | "owner" | "member" | "public") | No | Filter for repository type: `all` (owned or member), `owner` (directly owned), `member` (user is a public member), or `public` (public repositories only). When omitted, API returns all public repositories. |
| `per_page` | integer | No | Number of results per page (max 100). See GitHub REST API pagination docs for more info. |
| `username` | string | Yes | GitHub username, e.g., 'octocat'. |
| `direction` | string ("asc" | "desc") | No | Sort direction: `asc` (ascending) or `desc` (descending). When not specified, defaults to `asc` for `full_name` sort, and `desc` for all other sort options. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories for the authenticated user

**Slug:** `GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER`

Lists repositories for the authenticated user; using 'type' with 'visibility' or 'affiliation' API parameters (not in this model) can cause a 422 error.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `sort` | string ("created" | "updated" | "pushed" | "full_name") | No | The repository property by which to sort the results. |
| `type` | string ("all" | "owner" | "public" | "private" | "member") | No | Filters the results to repositories of the specified type. |
| `since` | string | No | Filters for repositories updated at or after this specified time. Provide as an ISO 8601 formatted timestamp. |
| `before` | string | No | Filters for repositories updated before this specified time. Provide as an ISO 8601 formatted timestamp. |
| `per_page` | integer | No | The number of results to return per page (maximum 100). |
| `direction` | string ("asc" | "desc") | No | The direction of the sort. Defaults to `asc` when `sort` is 'full_name', and `desc` otherwise. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories starred by a user

**Slug:** `GITHUB_LIST_REPOSITORIES_STARRED_BY_A_USER`

Lists repositories a valid and existing GitHub user has starred.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve (starts from 1). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `sort` | string ("created" | "updated") | No | The criteria for sorting the starred repositories. `created` sorts by the date the repository was starred. `updated` sorts by the date the repository was last pushed to. |
| `per_page` | integer | No | The number of results to display per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `username` | string | Yes | The GitHub username of the user whose starred repositories are to be listed. |
| `direction` | string ("asc" | "desc") | No | The direction for sorting the results. Can be `asc` for ascending or `desc` for descending. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories starred by the authenticated user

**Slug:** `GITHUB_LIST_REPOSITORIES_STARRED_BY_THE_AUTHENTICATED_USER`

Lists repositories the authenticated user has starred, optionally sorted and paginated, including star creation timestamps via 'application/vnd.github.star+json' media type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results (starts from 1). |
| `sort` | string ("created" | "updated") | No | Sorts starred repositories by 'created' (date starred) or 'updated' (date last pushed). |
| `per_page` | integer | No | Number of results per page (max 100). Defaults to 30. |
| `direction` | string ("asc" | "desc") | No | Sort direction: 'asc' (ascending) or 'desc' (descending). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories watched by a user

**Slug:** `GITHUB_LIST_REPOSITORIES_WATCHED_BY_A_USER`

Lists repositories a given GitHub user is watching; the username must be a valid and existing GitHub user handle.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results (starts from 1). |
| `per_page` | integer | No | Number of results per page (max 100). |
| `username` | string | Yes | The GitHub username (case-sensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repositories watched by the authenticated user

**Slug:** `GITHUB_LIST_REPOSITORIES_WATCHED_BY_THE_AUTHENTICATED_USER`

Lists repositories the authenticated user is watching (subscribed to for notifications). This action retrieves a list of repositories that the authenticated user is currently watching. It allows the user to manage their watched repositories effectively.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repos with ghactions cache usage

**Slug:** `GITHUB_LIST_REPOSITORIES_WITH_GITHUB_ACTIONS_CACHE_USAGE`

Retrieves a paginated list of GitHub Actions cache usage statistics for repositories within an existing GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization for which to retrieve repository cache usage. This name is not case-sensitive. |
| `page` | integer | No | The page number for the set of results to fetch. |
| `per_page` | integer | No | The number of repository cache usage results to return per page (maximum is 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository activities

**Slug:** `GITHUB_LIST_REPOSITORY_ACTIVITIES`

Lists activities for a GitHub repository, ensuring the repository exists and is accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The Git reference for which to list activities (e.g., a branch name like `main` or a full ref like `refs/heads/main`). If unspecified, activities from all branches are listed. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `actor` | string | No | The GitHub username of the person who performed the activity. Filters activities to only those performed by this user. |
| `after` | string | No | A pagination cursor. Returns activity items that occurred after this cursor. This cursor is typically obtained from the `Link` header in a previous API response. For more details, see GitHub's REST API documentation on "Using pagination in the REST API" and "Using Link headers". |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case-sensitive. |
| `before` | string | No | A pagination cursor. Returns activity items that occurred before this cursor. This cursor is typically obtained from the `Link` header in a previous API response. For more details, see GitHub's REST API documentation on "Using pagination in the REST API" and "Using Link headers". |
| `per_page` | integer | No | The number of activity results to return per page. Defaults to 30, maximum is 100. For more information, see the GitHub REST API guide on "Using pagination in the REST API". |
| `direction` | string ("asc" | "desc") | No | The direction to sort the activity results. Use 'asc' for ascending (oldest first) or 'desc' for descending (newest first). |
| `time_period` | string ("day" | "week" | "month" | "quarter" | "year") | No | Filters activities based on a predefined time period. For example, 'day' retrieves activities from the last 24 hours, and 'week' from the last 7 days (168 hours). |
| `activity_type` | string ("push" | "force_push" | "branch_creation" | "branch_deletion" | "pr_merge" | "merge_queue_merge") | No | Filters activities by a specific type, such as 'push' or 'pr_merge'. If unspecified, all relevant activity types are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all autolinks of a repository

**Slug:** `GITHUB_LIST_REPOSITORY_AUTOLINKS`

Retrieves all autolinks (e.g., for JIRA issues) configured for a repository; requires admin permissions on the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The repository name, excluding `.git`. Case-insensitive. |
| `owner` | string | Yes | The account owner's username. Case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository collaborators

**Slug:** `GITHUB_LIST_REPOSITORY_COLLABORATORS`

Lists collaborators for a specified repository, provided it exists and is accessible to the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This value is not case sensitive. |
| `per_page` | integer | No | The number of results to return per page. Maximum value is 100. |
| `permission` | string ("pull" | "triage" | "push" | "maintain" | "admin") | No | Filter collaborators by their repository permission level. If not specified, all collaborators are returned regardless of permission. |
| `affiliation` | string ("outside" | "direct" | "all") | No | Filter collaborators by affiliation: 'outside' (collaborators of an organization-owned repository not part of the org), 'direct' (collaborators with direct permissions to an organization-owned repository), or 'all' (all collaborators visible to the authenticated user). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository contributors

**Slug:** `GITHUB_LIST_REPOSITORY_CONTRIBUTORS`

Lists contributors to a specified repository, sorted by number of contributions in descending order; the repository must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `anon` | string | No | Set to '1' or 'true' to include anonymous contributors. If omitted, anonymous contributors are not included. |
| `page` | integer | No | Page number of results to retrieve (1-based indexing). |
| `repo` | string | Yes | Name of the repository (without `.git` extension). Not case-sensitive. |
| `owner` | string | Yes | Username of the account owning the repository. Not case-sensitive. |
| `per_page` | integer | No | Number of contributor results per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository events

**Slug:** `GITHUB_LIST_REPOSITORY_EVENTS`

Lists chronological events (e.g., code pushes, issue activities, PR actions, forks) for a specified, existing GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginating results. |
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Owner's username or organization name (not case-sensitive). |
| `per_page` | integer | No | Number of events to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository invitations

**Slug:** `GITHUB_LIST_REPOSITORY_INVITATIONS`

Retrieves all pending (unaccepted or undeclined) collaboration invitations for a specified GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | Number of results to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository issues

**Slug:** `GITHUB_LIST_REPOSITORY_ISSUES`

Lists issues (including pull requests) from a GitHub repository. Requires BOTH 'owner' AND 'repo' parameters (e.g., owner='octocat', repo='Hello-World' for github.com/octocat/Hello-World).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for the set of results. Refer to GitHub's REST API documentation for pagination details. |
| `repo` | string | Yes | REQUIRED. The name of the repository (without .git extension). For 'octocat/Hello-World', repo is 'Hello-World'. Not case-sensitive. Must be provided together with 'owner'. |
| `sort` | string ("created" | "updated" | "comments") | No | The field to sort the results by. |
| `type` | string | No | Filter issues by type name. Use '*' for issues with any type, 'none' for issues without a type, or specify a type name. |
| `owner` | string | Yes | REQUIRED. The GitHub account owner (user or organization) of the repository. For 'octocat/Hello-World', owner is 'octocat'. Not case-sensitive. Must be provided together with 'repo'. |
| `since` | string | No | Filters issues to include only those updated at or after the specified time. This should be a timestamp in ISO 8601 format (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `state` | string ("open" | "closed" | "all") | No | Filters issues based on their state. |
| `labels` | string | No | A comma-separated list of label names to filter issues by. Example: 'bug,ui,@high'. |
| `creator` | string | No | Filter issues by the username of the user who created the issue. |
| `assignee` | string | No | Filter issues by assignee's username. Use 'none' for issues with no assignee, or '*' for issues assigned to any user. |
| `per_page` | integer | No | Number of results per page (max 100). Default is 30, which matches GitHub's API default. Refer to GitHub's REST API documentation for pagination details. |
| `direction` | string ("asc" | "desc") | No | The direction of the sort. |
| `mentioned` | string | No | Filter issues by a user mentioned in the issue's description or comments. Provide the username. |
| `milestone` | string | No | Filter issues by milestone. Provide the milestone `number` as a string, '*' for issues with any milestone, or 'none' for issues without a milestone. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository languages

**Slug:** `GITHUB_LIST_REPOSITORY_LANGUAGES`

Lists the programming languages used in a GitHub repository, returning a byte count for each language.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository organization secrets

**Slug:** `GITHUB_LIST_REPOSITORY_ORGANIZATION_SECRETS`

Lists names of organization-level secrets shared with the specified repository; actual secret values are not returned and visibility depends on token access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | The username or organization name that owns the repository (case-insensitive). |
| `per_page` | integer | No | Number of secrets per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository organization variables

**Slug:** `GITHUB_LIST_REPOSITORY_ORGANIZATION_VARIABLES`

Lists organization-level variables that are shared with a specific repository. The repository must belong to an organization (not a personal account).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results. For pagination details, see GitHub REST API docs. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | The organization name that owns the repository (case-insensitive). This endpoint only works for organization repositories, not personal account repositories. |
| `per_page` | integer | No | Number of results per page (max 30). For pagination details, see GitHub REST API docs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository projects

**Slug:** `GITHUB_LIST_REPOSITORY_PROJECTS`

Lists Projects (classic) associated with a specific repository. Note: This action lists GitHub Projects (classic), which is GitHub's legacy project management feature. If the repository has Projects (classic) disabled or uses the newer Projects V2, this will return an empty list. Most modern repositories use Projects V2 (GraphQL API) instead of Projects (classic).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `state` | string ("open" | "closed" | "all") | No | Filters projects by their state. |
| `per_page` | integer | No | Number of projects to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all repository rulesets

**Slug:** `GITHUB_LIST_REPOSITORY_RULESETS`

Retrieves all rulesets for a GitHub repository, which define conditions and actions for repository interactions (e.g., branch protections).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `repo` | string | Yes | Name of the repository, without `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (case-insensitive). |
| `per_page` | integer | No | Number of rulesets per page (max 100). |
| `includes_parents` | boolean | No | If `True`, also fetches rulesets from parent levels (e.g., organization) applicable to this repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository rule suites

**Slug:** `GITHUB_LIST_REPOSITORY_RULE_SUITES`

Lists rule suite evaluations for a repository, allowing filtering by ref (non-wildcard), time period, actor, and result.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | No | The ref (e.g., branch or tag name) to filter by; cannot contain wildcard characters. If provided, only evaluations for this ref are returned. |
| `page` | integer | No | Page number of results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `actor_name` | string | No | GitHub username of the actor to filter by. If specified, only evaluations triggered by this user are returned. |
| `time_period` | string ("hour" | "day" | "week" | "month") | No | Time period to filter rule suites: 'hour' (last hour), 'day' (last 24 hours), 'week' (last 7 days), or 'month' (last 30 days). |
| `rule_suite_result` | string ("pass" | "fail" | "bypass" | "all") | No | Filter rule suites by evaluation outcome (e.g., 'pass', 'fail', 'bypass'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository secrets

**Slug:** `GITHUB_LIST_REPOSITORY_SECRETS`

Lists metadata for all secrets in a GitHub repository, excluding their encrypted values.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The GitHub account owner of the repository. This is typically a username or organization name. The name is not case-sensitive. |
| `per_page` | integer | No | Number of secrets per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository secrets without decrypting

**Slug:** `GITHUB_LIST_REPOSITORY_SECRETS_WITHOUT_DECRYPTING`

Lists metadata (e.g., name, creation/update dates) for all Dependabot secrets in a repository; secret values are not included.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve (starts from 1). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This field is not case sensitive. |
| `per_page` | integer | No | Number of secrets to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository security advisories

**Slug:** `GITHUB_LIST_REPOSITORY_SECURITY_ADVISORIES`

Tool to list security advisories for a repository. Use when you need to retrieve security advisories published for a specific repository, optionally filtered by state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the .git extension. The name is not case sensitive. |
| `sort` | string ("created" | "updated" | "published") | No | The property to sort the results by. |
| `after` | string | No | A cursor for pagination. If specified, the query only searches for results after this cursor. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string ("triage" | "draft" | "published" | "closed") | No | Filter by state of the repository advisories. Only advisories of this state will be returned. |
| `before` | string | No | A cursor for pagination. If specified, the query only searches for results before this cursor. |
| `per_page` | integer | No | The number of advisories to return per page. |
| `direction` | string ("asc" | "desc") | No | The direction to sort the results by. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository tags

**Slug:** `GITHUB_LIST_REPOSITORY_TAGS`

Lists tags for a specified GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve for pagination. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | The number of tag results to return per page; maximum 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository teams

**Slug:** `GITHUB_LIST_REPOSITORY_TEAMS`

Lists all teams with explicit permission to access the specified repository; the repository must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This value is not case-sensitive. |
| `per_page` | integer | No | The number of team results to return per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all repository topics

**Slug:** `GITHUB_LIST_REPOSITORY_TOPICS`

Retrieves all topics for a specified, existing, and accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository variables

**Slug:** `GITHUB_LIST_REPOSITORY_VARIABLES`

Lists plain text key-value variables for GitHub Actions workflows within a specific, accessible repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This can be a username or an organization name. The name is not case sensitive. |
| `per_page` | integer | No | Number of repository variables to return per page (maximum 30). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository webhooks

**Slug:** `GITHUB_LIST_REPOSITORY_WEBHOOKS`

Retrieves a list of webhooks for a repository, which must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case-sensitive. |
| `per_page` | integer | No | Number of webhook results per page. Maximum is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List repository workflows

**Slug:** `GITHUB_LIST_REPOSITORY_WORKFLOWS`

Lists all GitHub Actions workflows for a specified repository, which must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | The number of workflow results to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all requested reviewers for a pull request

**Slug:** `GITHUB_LIST_REQUESTED_REVIEWERS_FOR_A_PULL_REQUEST`

Gets all users and teams requested to review a specific pull request in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `pull_number` | integer | Yes | The number that identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List review comments in a repository

**Slug:** `GITHUB_LIST_REVIEW_COMMENTS_IN_A_REPOSITORY`

Lists all review comments on all pull requests within a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `sort` | string ("created" | "updated" | "created_at") | No | Sort field for review comments: `created` (creation time), `updated` (last update time), or `created_at` (creation timestamp). Defaults to API's standard sort order (typically by ID, ascending) if unspecified. |
| `owner` | string | Yes | The username of the account that owns the repository. This name is not case-sensitive. |
| `since` | string | No | Filters for comments updated at or after this ISO 8601 timestamp (e.g., `YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of review comments per page (max 100). |
| `direction` | string ("asc" | "desc") | No | Sort direction (`asc` or `desc`). Effective only if `sort` is specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List review comments on a pull request

**Slug:** `GITHUB_LIST_REVIEW_COMMENTS_ON_A_PULL_REQUEST`

Lists all review comments on a specific pull request within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to retrieve. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension. Not case sensitive. |
| `sort` | string ("created" | "updated") | No | Sort review comments by `created` or `updated`. |
| `owner` | string | Yes | Username of the account owning the repository. Not case sensitive. |
| `since` | string | No | Only include comments updated at or after this ISO 8601 timestamp (`YYYY-MM-DDTHH:MM:SSZ`). |
| `per_page` | integer | No | Number of comments per page (max 100). |
| `direction` | string ("asc" | "desc") | No | Sort direction (`asc` or `desc`); ignored if `sort` is not provided. |
| `pull_number` | integer | Yes | Unique number identifying the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List reviews for a pull request

**Slug:** `GITHUB_LIST_REVIEWS_FOR_A_PULL_REQUEST`

Lists submitted reviews chronologically for a specific pull request within a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number for the set of results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case sensitive. |
| `per_page` | integer | No | The number of review results to display per page. Maximum 100. |
| `pull_number` | integer | Yes | The unique number identifying the pull request within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List runner applications for an organization

**Slug:** `GITHUB_LIST_RUNNER_APPLICATIONS_FOR_AN_ORGANIZATION`

Lists downloadable GitHub Actions runner application binaries for setting up self-hosted runners in a GitHub organization. Returns download URLs and checksums for various OS/architecture combinations (linux/win/osx on x64/arm/arm64). Requires admin:org scope or fine-grained 'Self-hosted runners' read permission.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List runner applications for a repository

**Slug:** `GITHUB_LIST_RUNNER_APPLICATIONS_FOR_A_REPOSITORY`

Lists available self-hosted runner application binaries for a specific repository, including their OS, architecture, and download URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account or the name of the organization that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List secret scanning alerts for a repository

**Slug:** `GITHUB_LIST_SECRET_SCANNING_ALERTS_FOR_A_REPOSITORY`

List secret scanning alerts for a GitHub repository using first-party detections. Use this to retrieve detected secrets with filtering by state, type, resolution, and validity. Supports optional hiding of secret literals for security.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | Yes | The name of the repository without .git extension. The name is not case sensitive. |
| `sort` | string ("created" | "updated") | No | Sort alerts by 'created' or 'updated' timestamp. |
| `after` | string | No | Cursor for pagination to fetch results after this cursor. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string ("open" | "resolved") | No | Filter alerts by state: 'open' for unresolved alerts or 'resolved' for resolved alerts. |
| `before` | string | No | Cursor for pagination to fetch results before this cursor. |
| `assignee` | string | No | Filter by assignee. Use '*' for any assigned alerts, 'none' for unassigned alerts, or a specific GitHub username. |
| `per_page` | integer | No | Number of results per page, maximum 100. |
| `validity` | string ("active" | "inactive" | "unknown") | No | Filter by token validity status: 'active' (token still valid), 'inactive' (token revoked/expired), or 'unknown' (validity cannot be determined). |
| `direction` | string ("asc" | "desc") | No | Sort direction: 'asc' for ascending or 'desc' for descending. |
| `resolution` | string | No | Comma-separated list of resolutions to filter by. Valid values: 'false_positive', 'wont_fix', 'revoked', 'pattern_edited', 'pattern_deleted', 'used_in_tests'. |
| `hide_secret` | boolean | No | Hide the literal secret value from API response for security. When true, the 'secret' field will be omitted from results. |
| `secret_type` | string | No | Comma-separated list of secret types to filter by (e.g., 'github_personal_access_token,aws_access_key_id'). |
| `is_multi_repo` | boolean | No | Filter by multi-repo tag presence. True returns only alerts found in multiple repositories. |
| `is_publicly_leaked` | boolean | No | Filter by publicly-leaked status. True returns only alerts for secrets that were found publicly exposed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List secrets for the authenticated user

**Slug:** `GITHUB_LIST_SECRETS_FOR_THE_AUTHENTICATED_USER`

Lists all Codespaces secrets accessible to the authenticated user for use within GitHub Codespaces.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve (starts from 1). |
| `per_page` | integer | No | The number of secrets to return per page (up to 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List security advisories (GraphQL)

**Slug:** `GITHUB_LIST_SECURITY_ADVISORIES_GRAPHQL`

Tool to list GitHub Security Advisories using the GraphQL API. Use when you need to query security vulnerabilities and malware advisories from the GitHub Advisory Database with advanced filtering and pagination options.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Cannot be used with 'first'. |
| `after` | string | No | Returns the elements in the list that come after the specified cursor. Used for pagination. |
| `first` | integer | No | Returns the first n elements from the list. Cannot be used with 'last'. |
| `before` | string | No | Returns the elements in the list that come before the specified cursor. Used for pagination. |
| `orderBy` | object | No | Ordering options for security advisory connections. |
| `identifier` | object | No | Filter for security advisory identifiers. |
| `updatedSince` | string | No | Filter advisories to those updated since a time in the past. ISO 8601 datetime string. |
| `epssPercentage` | number | No | The EPSS (Exploit Prediction Scoring System) percentage to filter advisories by. Range: 0.0 to 1.0. |
| `epssPercentile` | number | No | The EPSS percentile to filter advisories by. Range: 0.0 to 1.0. |
| `publishedSince` | string | No | Filter advisories to those published since a time in the past. ISO 8601 datetime string. |
| `classifications` | array | No | List of classifications to filter advisories by. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List security vulnerabilities

**Slug:** `GITHUB_LIST_SECURITY_VULNERABILITIES`

Query software vulnerabilities documented by GitHub Security Advisories using GraphQL. Use this to find security issues in packages across ecosystems like npm, pip, maven, etc.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Maximum value is 100. |
| `after` | string | No | Returns the elements in the list that come after the specified cursor. Use the endCursor from pageInfo in the previous response. |
| `first` | integer | No | Returns the first n elements from the list. Maximum value is 100. |
| `before` | string | No | Returns the elements in the list that come before the specified cursor. Use the startCursor from pageInfo in the previous response. |
| `package` | string | No | A package name to filter vulnerabilities by (e.g., 'lodash', 'django'). |
| `ecosystem` | string ("COMPOSER" | "GO" | "MAVEN" | "NPM" | "NUGET" | "PIP" | "RUBYGEMS" | "RUST") | No | The possible ecosystems of a security advisory. |
| `severities` | array | No | A list of severities to filter vulnerabilities by. Can include multiple values. |
| `order_by_field` | string ("UPDATED_AT") | No | Properties by which security vulnerability connections can be ordered. |
| `classifications` | array | No | A list of advisory classifications to filter vulnerabilities by. |
| `order_by_direction` | string ("ASC" | "DESC") | No | Possible directions in which to order a list of items. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List selected repositories for a Codespaces organization secret

**Slug:** `GITHUB_LIST_SELECTED_REPOSITORIES_FOR_AN_ORGANIZATION_SECRET`

Lists repositories that have been granted access to a Codespaces organization secret. Returns all repositories that have been selected when the visibility for repository access to a Codespaces secret is set to 'selected'. Requires admin:org scope and admin access to the organization. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `page` | integer | No | Page number of the results to fetch (starts at 1). |
| `per_page` | integer | No | Number of results per page (max 100). |
| `secret_name` | string | Yes | The name of the Codespaces secret. The secret must have its visibility set to 'selected' to return results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List selected repositories for a user secret

**Slug:** `GITHUB_LIST_SELECTED_REPOSITORIES_FOR_A_USER_SECRET`

Lists repositories that have access to the specified user Codespaces secret. This endpoint retrieves all repositories that the authenticated user has granted access to for a specific user-level Codespaces secret. The secret must already exist for this endpoint to work. Use 'list_secrets_for_the_authenticated_user' to discover available secrets first. Note: The authenticated user must have Codespaces access enabled. OAuth tokens and personal access tokens require the 'codespace' or 'codespace:secrets' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | The name of the user Codespaces secret. Secret names are case-sensitive and must be alphanumeric with underscores (e.g., 'MY_API_TOKEN', 'DATABASE_URL'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List selected repos for secret access

**Slug:** `GITHUB_LIST_SELECTED_REPOSITORIES_FOR_SECRET_ACCESS`

Lists repositories within a specified organization that have been granted access to a particular Dependabot secret. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections. Requires 'admin:org' scope and the user must have admin access to the organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `page` | integer | No | The page number of the results to retrieve, starting at 1. |
| `per_page` | integer | No | The number of results to return per page, with a maximum of 100. |
| `secret_name` | string | Yes | The name of the Dependabot secret (with visibility set to 'selected') for which to list repository access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List selected repositories for an organization variable

**Slug:** `GITHUB_LIST_SELECTED_REPOS_ORG_VARIABLE`

Lists repositories in an organization that can access a specific organization variable; supports pagination and returns an empty list if no repositories have been granted access. Note: This endpoint only works for variables with visibility set to 'selected' - attempting to use it on variables with 'all' or 'private' visibility will result in a 409 Conflict error.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `name` | string | Yes | The name of the variable. |
| `page` | integer | No | Page number for pagination. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List self hosted runners for an organization

**Slug:** `GITHUB_LIST_SELF_HOSTED_RUNNERS_FOR_AN_ORGANIZATION`

Lists self-hosted runners for a GitHub organization, optionally filtering by name and paginating results, providing details for each runner such as OS, status, and labels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `name` | string | No | Name to filter the list of self-hosted runners. |
| `page` | integer | No | Page number for results retrieval (starts at 1). |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List self hosted runners for a repository

**Slug:** `GITHUB_LIST_SELF_HOSTED_RUNNERS_FOR_A_REPOSITORY`

Lists all self-hosted runners configured for a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of a specific self-hosted runner to filter by. If not provided, all runners for the repository are listed. |
| `page` | integer | No | The page number of the results to fetch, starting from 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (maximum 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List social accounts for a user

**Slug:** `GITHUB_LIST_SOCIAL_ACCOUNTS_FOR_A_USER`

Lists social media accounts publicly linked to an existing GitHub user's profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch when paginating. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `per_page` | integer | No | The number of social account results to return per page. Maximum is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `username` | string | Yes | The handle (username) of the GitHub user (e.g., 'octocat') for whom to list social media accounts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List social accounts for the authenticated user

**Slug:** `GITHUB_LIST_SOCIAL_ACCOUNTS_FOR_THE_AUTHENTICATED_USER`

Lists all social media accounts linked to the authenticated user's GitHub profile. This action retrieves the social media accounts associated with the user's GitHub profile, allowing for easy management and visibility of connected accounts. The results include accounts such as Twitter, LinkedIn, and other platforms linked to the GitHub profile.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of social accounts to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Sponsorable Users and Organizations

**Slug:** `GITHUB_LIST_SPONSORABLES`

Tool to list users and organizations who can be sponsored via GitHub Sponsors. Use when you need to discover sponsorable entities with optional filtering by dependency ecosystem.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Use for backward pagination. |
| `after` | string | No | Returns elements following the specified cursor. Use for forward pagination with first parameter. |
| `first` | integer | No | Returns the first n elements from the list. Use for forward pagination. |
| `before` | string | No | Returns elements preceding the specified cursor. Use for backward pagination with last parameter. |
| `ecosystem` | string ("ACTIONS" | "COMPOSER" | "GO" | "MAVEN" | "NPM" | "NUGET" | "PIP" | "PUB" | "RUBYGEMS" | "RUST" | "SWIFT") | No | Ecosystem of a dependency graph package. |
| `order_by_field` | string ("LOGIN") | No | Field to order sponsorables by. |
| `only_dependencies` | boolean | No | If true, restricts results to sponsorables owning the authenticated viewer's dependencies. Requires authentication. |
| `order_by_direction` | string ("ASC" | "DESC") | No | Direction for ordering results. |
| `org_login_for_dependencies` | string | No | Organization username to check dependencies against. Used with only_dependencies to filter sponsorables owning this organization's dependencies. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List SSH signing keys for user

**Slug:** `GITHUB_LIST_SSH_SIGNING_KEYS_FOR_A_USER`

Lists the public SSH signing keys for a specified GitHub user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List stargazers

**Slug:** `GITHUB_LIST_STARGAZERS`

Lists users who have starred the specified GitHub repository, which must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension; case-insensitive. |
| `owner` | string | Yes | Username of the account owner (user or organization) of the repository; case-insensitive. |
| `per_page` | integer | No | Number of results to display per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List starred gists

**Slug:** `GITHUB_LIST_STARRED_GISTS`

Retrieves a list of gists starred by the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `since` | string | No | Timestamp in ISO 8601 format (`YYYY-MM-DDTHH:MM:SSZ`) to filter gists updated after this time. |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all status check contexts

**Slug:** `GITHUB_LIST_STATUS_CHECK_CONTEXTS`

Fetches all required status check contexts for a protected branch; returns an empty list if the branch isn't protected or has no required checks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `branch` | string | Yes | The exact name of the branch (case-sensitive). Wildcard characters (e.g., `*`) are not permitted. For operations involving branches with wildcard patterns, the GitHub GraphQL API should be utilized. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List sub-issues for an issue

**Slug:** `GITHUB_LIST_SUB_ISSUES`

Tool to list sub-issues for a specific GitHub issue. Use when you need to retrieve all sub-issues associated with a parent issue, supporting pagination for large hierarchies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `issue_number` | integer | Yes | The number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List marketplace subscriptions for authenticated user

**Slug:** `GITHUB_LIST_SUBSCRIPTIONS_FOR_THE_AUTHENTICATED_USER`

Tool to list GitHub Marketplace subscriptions for the authenticated user. Use when you need to retrieve active marketplace app subscriptions including billing details, plan information, and trial status. Returns subscription information with account, plan, billing cycle, and pricing details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to fetch. For more information, see "Using pagination in the REST API". |
| `per_page` | integer | No | The number of results per page (max 100). For more information, see "Using pagination in the REST API". |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List stubbed subscriptions for the authenticated user

**Slug:** `GITHUB_LIST_SUBSCRIPTIONS_FOR_THE_AUTHENTICATED_USER_STUBBED`

Lists the authenticated user's stubbed (test/example data, not live) GitHub Marketplace subscriptions, useful for development or testing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of results to fetch (starts from 1). |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List tag protection states for a repository

**Slug:** `GITHUB_LIST_TAG_PROTECTION_STATES_FOR_A_REPOSITORY`

DEPRECATED: Lists tag protection rules for a repository. This API was sunset on August 30, 2024. Use GITHUB_GET_ALL_REPOSITORY_RULESETS instead to view tag protection rules via repository rulesets.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team members

**Slug:** `GITHUB_LIST_TEAM_MEMBERS`

Lists members of a specific team within an organization, including members of child teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `page` | integer | No | Page number for results. |
| `role` | string ("member" | "maintainer" | "all") | No | Filters members by their role in the team. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `team_slug` | string | Yes | Team slug (URL-friendly name). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team projects

**Slug:** `GITHUB_LIST_TEAM_PROJECTS`

Lists GitHub projects accessible to a specific team within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). E.g., 'MyOrg' for github.com/MyOrg. |
| `page` | integer | No | Page number for pagination. |
| `per_page` | integer | No | Number of project results per page (max 100). |
| `team_slug` | string | Yes | The team's URL-friendly slug (e.g., 'web-developers' for 'Web Developers'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team repositories

**Slug:** `GITHUB_LIST_TEAM_REPOSITORIES`

Lists repositories accessible to a specific team within a GitHub organization. Returns a list of repositories that the specified team has access to, including the team's permission level (admin, maintain, push, triage, pull) for each repository. Requires read:org scope and membership in the organization to access team data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization (case-insensitive). Example: 'octo-org'. |
| `page` | integer | No | Page number of results to fetch. Default: 1. |
| `per_page` | integer | No | Number of results per page (1-100). Default: 30. |
| `team_slug` | string | Yes | The URL-friendly slug of the team name (lowercase with dashes). Example: 'justice-league'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List teams

**Slug:** `GITHUB_LIST_TEAMS`

Lists teams for a specified GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `page` | integer | No | The page number of the results to fetch when paginating through the list of teams. |
| `per_page` | integer | No | The number of team results to return per page. Maximum value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List teams for the authenticated user

**Slug:** `GITHUB_LIST_TEAMS_FOR_THE_AUTHENTICATED_USER`

Lists all teams across all organizations to which the authenticated user belongs, supporting pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `per_page` | integer | No | Number of team results to return per page (max 100). For more information, refer to GitHub's documentation on API pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List teams assigned to an organization role

**Slug:** `GITHUB_LIST_TEAMS_THAT_ARE_ASSIGNED_TO_AN_ORGANIZATION_ROLE`

Lists teams assigned to a specific role within a GitHub organization. This endpoint requires organization administrator privileges. Use this to audit which teams have been granted specific organization-level permissions through roles. Note: Organization roles is a feature for enterprise-level GitHub organizations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). You must be an administrator of this organization. |
| `page` | integer | No | Page number of results to fetch (starts at 1). |
| `role_id` | integer | Yes | Unique numerical identifier of the organization role. Use 'Get all organization roles' to find valid role IDs. |
| `per_page` | integer | No | Number of results per page (1-100). Default is 30. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List the people a user follows

**Slug:** `GITHUB_LIST_THE_PEOPLE_A_USER_FOLLOWS`

Lists GitHub users that a valid GitHub `username` is following, supporting pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for the results to retrieve (starts from 1). |
| `per_page` | integer | No | Number of results to return per page (maximum 100). |
| `username` | string | Yes | GitHub username (case-sensitive) of the user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List people the authenticated user follows

**Slug:** `GITHUB_LIST_THE_PEOPLE_THE_AUTHENTICATED_USER_FOLLOWS`

Lists people the authenticated user follows.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for paginated results. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List timeline events for an issue

**Slug:** `GITHUB_LIST_TIMELINE_EVENTS_FOR_AN_ISSUE`

Lists chronological events (e.g., comments, commits, label changes) for a specific issue in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for results. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `per_page` | integer | No | Number of events per page (max 100). |
| `issue_number` | integer | Yes | Number identifying the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List token access repositories

**Slug:** `GITHUB_LIST_TOKEN_ACCESS_REPOSITORIES`

Lists repositories in an organization that a fine-grained personal access token has access to. Requires organization admin permissions or 'Personal access tokens' organization read permission. Only GitHub Apps can use this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). You must be an organization owner or have the 'Personal access tokens' organization permission to use this endpoint. |
| `page` | integer | No | Page number of the results to fetch. Default: 1. |
| `pat_id` | integer | Yes | The unique numeric identifier of the fine-grained personal access token. You can obtain this ID from the 'list_org_resource_access_tokens' action. |
| `per_page` | integer | No | Number of results per page (max 100). Default: 30. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user projects

**Slug:** `GITHUB_LIST_USER_PROJECTS`

Retrieves a list of projects for a specified GitHub user, optionally filtering by state and supporting pagination; the username must be a valid GitHub handle. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. |
| `state` | string ("open" | "closed" | "all") | No | Filter projects by state. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `username` | string | Yes | GitHub username (handle). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users

**Slug:** `GITHUB_LIST_USERS`

Retrieves all GitHub users (individuals and organizations) in chronological order of their sign-up date.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `since` | integer | No | A user ID. If provided, only users with an ID greater than this ID will be returned. This parameter facilitates pagination. If omitted, the list starts from the first user. |
| `per_page` | integer | No | Specifies the number of user results to return per page. The maximum allowed value is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users blocked by an organization

**Slug:** `GITHUB_LIST_USERS_BLOCKED_BY_AN_ORGANIZATION`

Lists users blocked by a specified GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. This name is not case sensitive. |
| `page` | integer | No | Specifies the page number of the results to fetch. Default is 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |
| `per_page` | integer | No | Specifies the number of results to return per page, with a maximum of 100. Default is 30. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)."  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users blocked by the authenticated user

**Slug:** `GITHUB_LIST_USERS_BLOCKED_BY_THE_AUTHENTICATED_USER`

Lists users blocked by the authenticated user, returning an empty list if no users are blocked.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | The page number of the results to retrieve. |
| `per_page` | integer | No | The number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users assigned org role

**Slug:** `GITHUB_LIST_USERS_THAT_ARE_ASSIGNED_TO_AN_ORGANIZATION_ROLE`

Lists users assigned to a specific role within a GitHub organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This is not case-sensitive. |
| `page` | integer | No | Page number of results (1-indexed). |
| `role_id` | integer | Yes | The unique identifier for the organization role. Use the 'Get all organization roles' action first to retrieve valid role IDs. |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List watchers

**Slug:** `GITHUB_LIST_WATCHERS`

Retrieves a list of users watching a specific repository; the repository must be accessible to the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `per_page` | integer | No | Number of results to return per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List workflow run artifacts

**Slug:** `GITHUB_LIST_WORKFLOW_RUN_ARTIFACTS`

Lists artifacts (e.g., build outputs, test results) for a specific workflow run in a GitHub repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | If specified, filters artifacts by this exact name. |
| `page` | integer | No | Page number of results to fetch. |
| `repo` | string | Yes | Repository name, without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |
| `per_page` | integer | No | Number of results per page (max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List workflow runs for a repository

**Slug:** `GITHUB_LIST_WORKFLOW_RUNS_FOR_A_REPOSITORY`

Lists workflow runs for a repository, allowing filtering by actor, branch, event, status, creation date, check suite ID, or head SHA; the repository must exist and be accessible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to fetch. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `actor` | string | No | Filter by the actor's login (e.g., the user who triggered the `push`). |
| `event` | string | No | Filter by the event that triggered the workflow (e.g., `push`, `pull_request`). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `branch` | string | No | Filter by branch name (e.g., `main` or the branch that triggered the `push`). |
| `status` | string ("completed" | "action_required" | "cancelled" | "failure" | "neutral" | "skipped" | "stale" | "success" | "timed_out" | "in_progress" | "queued" | "requested" | "waiting" | "pending") | No | Filter by `status` or `conclusion` (e.g., `success`, `in_progress`). Note: Only GitHub Actions can set `waiting`, `pending`, or `requested`. |
| `created` | string | No | Filter by creation date or date-time range (ISO8601 format: YYYY-MM-DD or YYYY-MM-DDTHH:MM:SSZ). Supports operators like `>`, `<`, `>=`, `<=`, and `..` for ranges. |
| `head_sha` | string | No | Filter to include only runs associated with the specified `head_sha` (commit SHA at the head of the branch). |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `check_suite_id` | integer | No | Filter by a specific `check_suite_id`. |
| `exclude_pull_requests` | boolean | No | Set to `true` to exclude workflow runs triggered by pull request events. Omit or leave as null to include all runs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List workflow runs for a workflow

**Slug:** `GITHUB_LIST_WORKFLOW_RUNS_FOR_A_WORKFLOW`

Lists runs for a specified, existing workflow (identified by ID or filename like `main.yml`) in a GitHub repository, with filtering options.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number of the results to retrieve. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `actor` | string | No | Filter by the GitHub username of the actor who initiated the run. |
| `event` | string | No | Filter by the event that triggered the run (e.g., `push`, `pull_request`). For more event types, see GitHub's documentation on "Events that trigger workflows". |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `branch` | string | No | Filter by branch name, typically for `push` events. |
| `status` | string ("completed" | "action_required" | "cancelled" | "failure" | "neutral" | "skipped" | "stale" | "success" | "timed_out" | "in_progress" | "queued" | "requested" | "waiting" | "pending") | No | Filter by status or conclusion (e.g., `success`, `in_progress`). Note: `waiting`, `pending`, or `requested` statuses are set exclusively by GitHub Actions. |
| `created` | string | No | Filter by creation date/time range. For syntax, refer to GitHub's "Understanding the search syntax" guide for dates. |
| `head_sha` | string | No | Filter by the head commit's SHA. |
| `per_page` | integer | No | Number of results per page (max 100). |
| `workflow_id` | string | Yes | The ID of the workflow (integer) or the workflow file name (string, e.g., `main.yml` or `ci.yaml`). |
| `check_suite_id` | integer | No | Filter by `check_suite_id` (identifier for a collection of check runs). |
| `exclude_pull_requests` | boolean | No | If true, exclude workflow runs triggered by pull requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lock an issue

**Slug:** `GITHUB_LOCK_AN_ISSUE`

Locks an existing GitHub issue's conversation, preventing further comments; an optional reason can be specified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This name is not case-sensitive. |
| `lock_reason` | string ("off-topic" | "too heated" | "resolved" | "spam") | No | Optional reason for locking the conversation. Valid values: 'off-topic', 'too heated', 'resolved', 'spam'. If omitted, no reason is displayed. |
| `issue_number` | integer | Yes | The number that uniquely identifies the issue to be locked within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lookup Enterprise Administrator Invitation

**Slug:** `GITHUB_LOOKUP_ENTERPRISE_ADMINISTRATOR_INVITATION`

Tool to look up a pending enterprise administrator invitation by invitee, enterprise, and role. Use when you need to check if a specific user has a pending invitation to become an enterprise administrator.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `role` | string ("OWNER" | "BILLING_MANAGER" | "UNAFFILIATED") | Yes | The role for the enterprise administrator invitation. Must be one of: OWNER, BILLING_MANAGER, or UNAFFILIATED. |
| `user_login` | string | Yes | The login (username) of the user invited to join the enterprise as an administrator. |
| `enterprise_slug` | string | Yes | The slug of the enterprise the user was invited to join. This is the URL-friendly identifier for the enterprise. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lookup GitHub Resource

**Slug:** `GITHUB_LOOKUP_GITHUB_RESOURCE`

Tool to lookup a GitHub resource by its URL. Use when you need to identify or retrieve information about a GitHub resource from its URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | The GitHub URL of the resource to lookup. Can be a repository, issue, pull request, or other GitHub resource URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lookup nodes by IDs

**Slug:** `GITHUB_LOOKUP_NODES_BY_IDS`

Tool to lookup GitHub nodes by their global node IDs. Use when you need to retrieve multiple objects by their IDs in a single batch query.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ids` | array | Yes | A list of GitHub global node IDs to lookup. Each ID must be a valid base64-encoded global node ID (e.g., 'MDQ6VXNlcjU4MzIzMQ=='). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lookup Organization (GraphQL)

**Slug:** `GITHUB_LOOKUP_ORGANIZATION_GRAPH_QL`

Tool to lookup a GitHub organization by login using GraphQL. Use when you need organization information via GraphQL API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `login` | string | Yes | The organization's login username to look up. Case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Look Up Topic by Name

**Slug:** `GITHUB_LOOKUP_TOPIC_BY_NAME`

Tool to look up a GitHub topic by name using GraphQL. Use when you need to find information about a specific GitHub topic including its popularity (stargazer count) and related topics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The topic's name to look up (e.g., 'python', 'javascript', 'machine-learning'). |
| `related_topics_count` | integer | No | The number of related topics to fetch (between 1 and 10). Only used if include_related_topics is true. |
| `include_related_topics` | boolean | No | Whether to include related topics in the response. If true, up to 3 related topics will be returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Manage access control for organization codespaces

**Slug:** `GITHUB_MANAGE_ACCESS_CONTROL_FOR_ORGANIZATION_CODESPACES`

Sets the Codespaces access control policy for a GitHub organization, determining which members can use them. This endpoint requires admin permissions on the organization. The API returns HTTP 204 No Content on success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization (case-insensitive). The authenticated user must have admin permissions on this organization. |
| `visibility` | string ("disabled" | "selected_members" | "all_members" | "all_members_and_outside_collaborators") | Yes | Defines which users can access Codespaces within the organization. `disabled`: Codespaces are disabled for all users in the organization. `selected_members`: Only users specified in `selected_usernames` can access Codespaces. `all_members`: All members of the organization can access Codespaces. `all_members_and_outside_collaborators`: All members and outside collaborators can access Codespaces. |
| `selected_usernames` | array | No | A list of GitHub usernames who should have access to Codespaces. Required when `visibility` is set to `selected_members`. Providing a list here will replace any existing list of selected usernames. The specified users must be members or outside collaborators of the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Manage custom properties for org repos

**Slug:** `GITHUB_MANAGE_CUSTOM_PROPERTIES_FOR_ORG_REPOS`

Creates or updates values for an organization's predefined custom properties across multiple repositories (up to 30).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `properties` | string | Yes | JSON string containing an array of custom properties to set. Each must have `property_name` (predefined for the organization) and `value`. Example: '[{"property_name": "project-status", "value": "active"}]' |
| `repository_names` | array | Yes | Repository names (max 30) to apply the custom property values to. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List selected repositories for a GitHub Actions organization secret

**Slug:** `GITHUB_MANAGE_SECRETS_IN_SELECTED_REPOSITORIES`

Lists repositories within an organization that have been explicitly granted access to a specific GitHub Actions organization secret. Returns all repositories that have been selected when the visibility for repository access to an Actions secret is set to 'selected'. Requires admin:org scope and admin access to the organization. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `page` | integer | No | Page number of the results to fetch. Default is 1. See '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)' for more details. |
| `per_page` | integer | No | Number of results to return per page (maximum 100). Default is 30. See '[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)' for more details. |
| `secret_name` | string | Yes | The name of the organization secret for which to list accessible repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Map a commit author

**Slug:** `GITHUB_MAP_A_COMMIT_AUTHOR`

Updates Git author information (name and/or email) for an `author_id` obtained during a repository import, to correctly attribute commits. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | New Git author name for the `author_id`. At least one of `email` or `name` must be provided. |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `email` | string | No | New Git author email for the `author_id`. At least one of `email` or `name` must be provided. |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |
| `author_id` | integer | Yes | Numeric ID of the author to map, identified during a repository import; this ID is specific to the import process. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark a thread as done

**Slug:** `GITHUB_MARK_A_THREAD_AS_DONE`

Marks the GitHub notification thread (identified by `thread_id`) as done or read for the authenticated user, effectively archiving it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thread_id` | integer | Yes | ID of the notification thread to mark as done. Typically obtained from the `id` field in notification list operations (e.g., `GET /notifications`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark a thread as read

**Slug:** `GITHUB_MARK_A_THREAD_AS_READ`

Marks an existing GitHub notification thread, identified by its `thread_id`, as read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thread_id` | integer | Yes | The unique identifier of the notification thread. This ID is obtained from a notification's `id` field, for example, via the 'List notifications for the authenticated user' endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark notifications as read

**Slug:** `GITHUB_MARK_NOTIFICATIONS_AS_READ`

Marks notifications as read or unread, optionally for those updated at or before a `last_read_at` timestamp.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `read` | boolean | No | Indicates whether to mark targeted notifications as read (`true`) or unread (`false`). Defaults to `true` (mark as read) if not provided. |
| `last_read_at` | string | No | If provided, only notifications updated at or before this timestamp are affected. If omitted, all current notifications are targeted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark repository notifications as read

**Slug:** `GITHUB_MARK_REPOSITORY_NOTIFICATIONS_AS_READ`

Marks notifications in a repository as read; if 'last_read_at' is specified, notifications updated after this timestamp are not marked as read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the account owning the repository (case-insensitive). |
| `last_read_at` | string | No | Timestamp (ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`). If provided, notifications updated *after* this time will NOT be marked as read. If omitted, all notifications in the repository are marked as read. Defaults to the current time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Merge a branch

**Slug:** `GITHUB_MERGE_A_BRANCH`

Merges a head branch or commit SHA into a base branch in a repository; fails if there are merge conflicts requiring manual resolution.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `base` | string | Yes | The name of the branch to merge the `head` branch into. |
| `head` | string | Yes | Source branch name or full commit SHA to merge into the `base` branch. |
| `repo` | string | Yes | Repository name, without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Username or organization name of the repository owner. Not case-sensitive. |
| `commit_message` | string | No | Commit message for the merge. If omitted, GitHub uses a default message. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Merge a pull request

**Slug:** `GITHUB_MERGE_A_PULL_REQUEST`

Merges an open and mergeable pull request in a repository. A 405 error can occur for multiple reasons: (1) The PR is still in draft mode - convert it to ready-for-review first using GITHUB_UPDATE_A_PULL_REQUEST. (2) Branch protection rules are not satisfied - check for required approving reviews, status checks, or other repository rules that must be met before merging. (3) The base branch has been modified since the PR was last synced - update the PR branch first using GITHUB_UPDATE_A_PULL_REQUEST_BRANCH.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sha` | string | No | SHA of the pull request's head commit. Must match for merge to succeed, ensuring PR hasn't changed since review. |
| `repo` | string | Yes | Repository name, without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Repository owner's username. Not case-sensitive. |
| `pull_number` | integer | Yes | The unique number identifying the pull request. The PR must be mergeable: not a draft, and all branch protection rules (required reviews, status checks, etc.) must be satisfied. |
| `commit_title` | string | No | Title for the merge commit message. |
| `merge_method` | string ("merge" | "squash" | "rebase") | No | Merge strategy: 'merge', 'squash', or 'rebase'. Defaults to repository's setting if unspecified. |
| `commit_message` | string | No | Additional details for the merge commit message. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Move a project card (Classic - Deprecated)

**Slug:** `GITHUB_MOVE_A_PROJECT_CARD`

Moves a project card to a specified position within a column (GitHub Classic Projects). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. It may still work on GitHub Enterprise Server instances where classic projects remain enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ On success, the API returns HTTP 201 with an empty body, indicating the card was moved.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `card_id` | integer | Yes | The unique identifier of the project card to be moved. Obtain this ID from the list_project_cards or get_a_project_card actions. |
| `position` | string | Yes | The target position of the card within the column. Must be one of: 'top' (place card at top of column), 'bottom' (place card at bottom of column), or 'after:<card_id>' (place card immediately after the specified card). When using 'after:<card_id>', the referenced card must exist in the target column. |
| `column_id` | integer | No | The unique identifier of the column to move the card to. If omitted, the card stays in its current column but moves to the specified position. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Move a project column (Classic - Deprecated)

**Slug:** `GITHUB_MOVE_A_PROJECT_COLUMN`

Moves a column within a GitHub project (classic) to a new position. DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. The `position` parameter can be: - 'first': Move the column to the beginning of the project - 'last': Move the column to the end of the project - 'after:<column_id>': Place the column after the specified column (e.g., 'after:67890') See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `position` | string | Yes | The new position for the column within the project. Valid values are: 'first' (move to the beginning), 'last' (move to the end), or 'after:<column_id>' (place after the specified column, e.g., 'after:67890'). |
| `column_id` | integer | Yes | The unique identifier of the project column to be moved. Must be a valid column ID from a GitHub project (classic). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Ping an organization webhook

**Slug:** `GITHUB_PING_AN_ORGANIZATION_WEBHOOK`

Sends a 'ping' event to a specified, existing organization webhook to test its configuration and ensure it correctly receives events.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This field is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Ping a repository webhook

**Slug:** `GITHUB_PING_A_REPOSITORY_WEBHOOK`

Pings an existing webhook on a repository to test its configuration and reachability by GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the hook. You can find this value in the `X-GitHub-Hook-ID` header of a webhook delivery. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Privately report a security vulnerability

**Slug:** `GITHUB_PRIVATELY_REPORT_A_SECURITY_VULNERABILITY`

Privately reports a security vulnerability to a repository's maintainers. IMPORTANT: You cannot report vulnerabilities to repositories you own - this API is for third-party security researchers to report to other repositories. The target repository must have private vulnerability reporting enabled. Specify EITHER `severity` OR `cvss_vector_string`, but not both.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `cwe_ids` | array | No | A list of Common Weakness Enumeration (CWE) identifiers relevant to the vulnerability. |
| `summary` | string | Yes | A short, descriptive summary of the security vulnerability. |
| `severity` | string ("critical" | "high" | "medium" | "low") | No | The advisory's severity level. Mutually exclusive with `cvss_vector_string`. |
| `description` | string | Yes | A detailed explanation of the security vulnerability, its impact, and potential mitigations. |
| `vulnerabilities` | string | No | JSON string representing a list of vulnerability objects detailing the affected packages or products. Each object should specify the package's ecosystem and name, the vulnerable version range, and optionally, patched versions and vulnerable functions. |
| `cvss_vector_string` | string | No | The CVSS vector string for advisory severity. Mutually exclusive with `severity`. |
| `start_private_fork` | boolean | No | Whether to create a temporary private fork to collaborate on a fix for the reported vulnerability. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Publish Sponsors Tier (GraphQL)

**Slug:** `GITHUB_PUBLISH_SPONSORS_TIER_GRAPH_QL`

Tool to publish a draft GitHub Sponsors tier using GraphQL. Use when you need to make a draft sponsors tier visible to potential sponsors. The tier must already exist in draft status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tierId` | string | Yes | The global Relay ID of the draft sponsors tier to publish. Must be a tier that is currently in draft status. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used to track requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Redeliver a delivery for an organization webhook

**Slug:** `GITHUB_REDELIVER_A_DELIVERY_FOR_AN_ORGANIZATION_WEBHOOK`

Redelivers a specific webhook delivery for a webhook within an organization, to resend an event that previously failed or was not processed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery or by listing webhooks for an organization. |
| `delivery_id` | integer | Yes | The unique identifier of the specific webhook delivery to be redelivered. This ID is typically obtained from the `X-GitHub-Delivery` header of the original delivery attempt or by listing deliveries for a webhook. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Redeliver a delivery for a repository webhook

**Slug:** `GITHUB_REDELIVER_A_DELIVERY_FOR_A_REPOSITORY_WEBHOOK`

Redelivers a specific, previously made webhook delivery (`delivery_id`) for a repository's webhook (`hook_id`).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account username that owns the repository (not case-sensitive). |
| `hook_id` | integer | Yes | Unique identifier of the webhook (e.g., from `X-GitHub-Hook-ID` header or by listing repository webhooks). |
| `delivery_id` | integer | Yes | Unique identifier of a specific past delivery for the webhook (obtainable by listing deliveries for that webhook). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a custom property for an organization

**Slug:** `GITHUB_REMOVE_A_CUSTOM_PROPERTY_FOR_AN_ORGANIZATION`

Deletes a custom property, specified by `custom_property_name`, from an existing organization (`org`) for which the property is currently defined, preventing its future assignment to repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case sensitive. |
| `custom_property_name` | string | Yes | The name of the custom property to remove. This name is case sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a label from an issue

**Slug:** `GITHUB_REMOVE_A_LABEL_FROM_AN_ISSUE`

Removes a label currently applied to a specific issue in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the label to remove from the issue. Emoji reactions will not be removed and names with spaces or special characters must be URL-encoded. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `issue_number` | integer | Yes | The number that identifies the issue. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove all labels from an issue

**Slug:** `GITHUB_REMOVE_ALL_LABELS_FROM_AN_ISSUE`

Removes all labels from a specified issue in a GitHub repository; this operation is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `issue_number` | integer | Yes | The unique number that identifies the issue from which all labels will be removed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove all organization roles for a team

**Slug:** `GITHUB_REMOVE_ALL_ORGANIZATION_ROLES_FOR_A_TEAM`

Revokes all organization roles for a team in an organization; this is destructive and succeeds even if the team initially has no roles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This field is not case-sensitive. |
| `team_slug` | string | Yes | The slug of the team name. Team slugs are typically all lowercase and replace spaces with hyphens. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove all organization roles for a user

**Slug:** `GITHUB_REMOVE_ALL_ORGANIZATION_ROLES_FOR_A_USER`

Revokes all assigned organization-level roles from a specified user (who must be a member of the organization) within a GitHub organization, without removing the user from the organization or affecting repository-specific roles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. This name is not case sensitive. |
| `username` | string | Yes | The handle for the GitHub user account. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove an organization member

**Slug:** `GITHUB_REMOVE_AN_ORGANIZATION_MEMBER`

Removes a member from a GitHub organization. This action permanently removes a user's membership from the specified organization, revoking their access to all organization resources, repositories, and teams. Requirements: - The authenticated user must be an organization owner - The target user must currently be a member of the organization Note: This action cannot be used to remove the last owner of an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). Must be an organization where the authenticated user has owner permissions. |
| `username` | string | Yes | The GitHub username of the member to remove. The user must currently be a member of the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove an organization role from a team

**Slug:** `GITHUB_REMOVE_AN_ORGANIZATION_ROLE_FROM_A_TEAM`

Revokes an organization role that a team currently possesses within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This value is not case sensitive. |
| `role_id` | integer | Yes | The unique identifier of the organization role to be removed from the team. |
| `team_slug` | string | Yes | The slug (short name) of the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove an organization role from a user

**Slug:** `GITHUB_REMOVE_AN_ORGANIZATION_ROLE_FROM_A_USER`

Removes a custom organization role from a user within a GitHub organization, provided the organization exists, the user is a member, and the role_id corresponds to a valid custom role in that organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization's name (not case-sensitive). |
| `role_id` | integer | Yes | Unique ID of the organization role to be removed. Use the 'Get all organization roles' action to retrieve valid role IDs. |
| `username` | string | Yes | GitHub username of the user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove app access restrictions

**Slug:** `GITHUB_REMOVE_APP_ACCESS_RESTRICTIONS`

Removes all GitHub App access restrictions from a protected branch in a repository; the branch must have protection rules configured, and this action does not alter user or team restrictions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `branch` | string | Yes | The name of the branch from which all app access restrictions will be removed. Wildcard characters are not supported; for branches with wildcards, please use the GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a project from a team

**Slug:** `GITHUB_REMOVE_A_PROJECT_FROM_A_TEAM`

Removes a project from a team within an organization; this action requires the project to be currently associated with the team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `team_slug` | string | Yes | The slug of the team name (URL-friendly version, e.g., 'justice-league'). |
| `project_id` | integer | Yes | The unique identifier of the project to be removed from the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a repository collaborator

**Slug:** `GITHUB_REMOVE_A_REPOSITORY_COLLABORATOR`

Removes a collaborator from a specified GitHub repository, provided the repository exists and the user is an existing collaborator.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `username` | string | Yes | The GitHub username of the collaborator to remove. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a repository from an app installation

**Slug:** `GITHUB_REMOVE_A_REPOSITORY_FROM_AN_APP_INSTALLATION`

Removes a repository from a GitHub App installation for the authenticated user, given a valid `installation_id` and the `repository_id` of a repository currently linked to that installation; this operation is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repository_id` | integer | Yes | The unique identifier of the repository to be removed from the installation. |
| `installation_id` | integer | Yes | The unique identifier of the GitHub App installation from which to remove the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a repository from a team

**Slug:** `GITHUB_REMOVE_A_REPOSITORY_FROM_A_TEAM`

Disassociates a repository from a team; team members may lose access permissions, but the repository and team are not deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization where the team and repository exist. This field is case-insensitive. |
| `repo` | string | Yes | The name of the repository, without the '.git' extension. This field is case-insensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is case-insensitive. |
| `team_slug` | string | Yes | The URL-friendly identifier (slug) for the team. Team slugs are typically all lowercase with hyphens instead of spaces (e.g., 'justice-league' for 'Justice League'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove a selected repository from a user secret

**Slug:** `GITHUB_REMOVE_A_SELECTED_REPOSITORY_FROM_A_USER_SECRET`

Removes a selected repository's access to a user's Codespaces secret; the secret must exist and the repository must have previously been granted access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | Name of the user's Codespaces secret from which repository access will be revoked. |
| `repository_id` | integer | Yes | The unique integer identifier of the repository that will lose access to the specified Codespaces secret. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove assignees from an issue

**Slug:** `GITHUB_REMOVE_ASSIGNEES_FROM_AN_ISSUE`

Removes specified assignees from a GitHub issue; requires push access, and invalid removal attempts are silently ignored.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, excluding the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This name is not case-sensitive. |
| `assignees` | array | No | Usernames to unassign from the issue. Note: Requires push access to the repository; attempts to remove users without permission or those not currently assigned are silently ignored. |
| `issue_number` | integer | Yes | The unique number that identifies the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove custom label from repo runner

**Slug:** `GITHUB_REMOVE_CUSTOM_LABEL_FROM_REPO_RUNNER`

Removes a custom label from a repository's self-hosted runner; this operation is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the custom label to remove from the self-hosted runner. Note: only custom labels can be removed; read-only system labels (like 'self-hosted', 'linux', 'x64') cannot be removed. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. Get this from listing runners for the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove custom label from self hosted runner

**Slug:** `GITHUB_REMOVE_CUSTOM_LABEL_FROM_SELF_HOSTED_RUNNER`

Removes a currently assigned custom label (`name`) from a self-hosted runner (`runner_id`) in an organization (`org`). This action allows the organization to manage the labels associated with their runners effectively.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `name` | string | Yes | The name of the custom label to remove from the self-hosted runner. |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove custom labels from self hosted repo runner

**Slug:** `GITHUB_REMOVE_CUSTOM_LABELS_FROM_SELF_HOSTED_REPO_RUNNER`

Removes all custom labels from a self-hosted runner registered at the repository level, leaving only its default labels and any labels inherited from its runner group or organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `runner_id` | integer | Yes | Unique identifier (ID) of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove interaction restrictions for an organization

**Slug:** `GITHUB_REMOVE_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION`

Removes all interaction restrictions from public repositories in the specified GitHub organization, allowing all users to resume interactions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove interaction restrictions for a repository

**Slug:** `GITHUB_REMOVE_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY`

Removes all interaction restrictions for a repository, enabling all users to comment, open issues, and create pull requests by lifting any existing temporary interaction limits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension; case-insensitive. |
| `owner` | string | Yes | Username or organization name of the repository owner; case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove org dev env secret by name

**Slug:** `GITHUB_REMOVE_ORG_DEV_ENV_SECRET_BY_NAME`

Deletes a GitHub Codespaces secret from an organization by its name; this operation is idempotent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). |
| `secret_name` | string | Yes | Name of the Codespaces secret to remove. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove org secret by name

**Slug:** `GITHUB_REMOVE_ORG_SECRET_BY_NAME`

Permanently removes a specific Dependabot secret, by its `secret_name`, from the GitHub `org`, making it unavailable to Dependabot for that organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | GitHub organization name (case-insensitive). |
| `secret_name` | string | Yes | Dependabot secret name to remove from the organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove outside collaborator from an organization

**Slug:** `GITHUB_REMOVE_OUTSIDE_COLLABORATOR_FROM_AN_ORGANIZATION`

Removes a user, who must be an outside collaborator, from the specified GitHub organization, revoking their access to all its repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `username` | string | Yes | The GitHub username of the outside collaborator to remove. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove public org membership

**Slug:** `GITHUB_REMOVE_PUBLIC_ORG_MEMBERSHIP`

Removes the authenticated user's public organization membership, making it private. The user remains a member of the organization but their membership is no longer publicly visible. This operation is idempotent - calling it when the membership is already private will succeed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization (case-insensitive). The authenticated user must be a member of this organization. |
| `username` | string | Yes | GitHub username of the authenticated user. Must match the currently authenticated user - you can only modify your own public membership status. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove user public repo interaction restrictions

**Slug:** `GITHUB_REMOVE_PUBLIC_REPO_INTERACTION_RESTRICTIONS`

Removes all interaction restrictions (limitations on comments, issues, or pull requests) from all public repositories owned by the authenticated user.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove repository from organization dev environment secret

**Slug:** `GITHUB_REMOVE_REPO_FROM_ORG_DEV_ENV_SECRET`

Removes a repository's access to an organization-level Codespaces secret, if it was previously granted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (not case-sensitive). |
| `secret_name` | string | Yes | The Codespaces secret name. |
| `repository_id` | integer | Yes | The unique identifier of the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove selected repo from org secret

**Slug:** `GITHUB_REMOVE_REPO_FROM_ORG_SECRET_WITH_SELECTED_VISIBILITY`

Revokes a specific repository's access to an organization-level Dependabot secret, applicable only when the secret has 'selected' visibility and the specified repository currently has access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (not case-sensitive). |
| `secret_name` | string | Yes | Name of the Dependabot secret. |
| `repository_id` | integer | Yes | Unique numeric ID of the repository (not the repository name). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove requested reviewers from a pull request

**Slug:** `GITHUB_REMOVE_REQUESTED_REVIEWERS_FROM_A_PULL_REQUEST`

Removes currently assigned user logins and/or team slugs from a GitHub pull request's list of requested reviewers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the repository owner (not case-sensitive). |
| `reviewers` | array | Yes | GitHub user `login`s for removal. At least one of `reviewers` or `team_reviewers` must be specified. |
| `pull_number` | integer | Yes | Number of the pull request. |
| `team_reviewers` | array | No | GitHub team `slug`s (URL-friendly names) for removal. At least one of `reviewers` or `team_reviewers` must be specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove selected repository from an organization secret

**Slug:** `GITHUB_REMOVE_SELECTED_REPO_FROM_ORG_SECRET`

Removes a specific repository's access to an organization-level secret; the repository must have been previously granted access to this secret.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `secret_name` | string | Yes | Name of the organization secret. |
| `repository_id` | integer | Yes | Repository ID to remove from the secret's access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove selected repository from an organization variable

**Slug:** `GITHUB_REMOVE_SELECTED_REPO_FROM_ORG_VARIABLE`

Removes a repository's access to an organization variable that has 'selected' visibility. This endpoint removes a specific repository from an organization variable's access list. The variable must have its visibility set to 'selected' for this operation to work. Returns a 409 Conflict error if the variable visibility is not 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). |
| `name` | string | Yes | Name of the organization variable. |
| `repository_id` | integer | Yes | Unique identifier of the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove status check contexts

**Slug:** `GITHUB_REMOVE_STATUS_CHECK_CONTEXTS`

Removes specified status check contexts from a protected branch's required status checks. This action removes the specified status check contexts from the existing list of required status checks for a protected branch. The branch must already have branch protection enabled with status checks configured. Note: The 'contexts' parameter is deprecated by GitHub in favor of 'checks' array. For new implementations, consider using update_status_check_protection with the 'checks' parameter instead.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `branch` | string | Yes | The name of the branch. Wildcard characters are not allowed. To use wildcard characters in branch names, refer to the GraphQL API documentation. |
| `contexts` | array | Yes | The status check contexts to remove from the protected branch. These are the names of CI/CD jobs or other checks that should no longer be required before merging. Can be provided as a single string or a list of strings. Examples: 'ci/test', 'linter', 'continuous-integration/travis-ci'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove status check protection

**Slug:** `GITHUB_REMOVE_STATUS_CHECK_PROTECTION`

Removes status check protection from a branch, disabling required status checks for merging pull requests; will only have an effect if status check protection is currently configured on the branch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | Account owner (username or organization) of the repository; not case-sensitive. |
| `branch` | string | Yes | Name of the branch; wildcard characters are not allowed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove team access restrictions

**Slug:** `GITHUB_REMOVE_TEAM_ACCESS_RESTRICTIONS`

Removes specified teams from push access to a protected branch. This action removes teams from the list of teams with push access to a protected branch. Removing a team will also remove push access for any child teams. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must currently have push access to the branch

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The organization name that owns the repository. Team access restrictions only work for organization-owned repositories, not personal repositories. This value is not case-sensitive. |
| `teams` | array | Yes | The list of team slugs to remove from push access to the protected branch. A team slug is the URL-friendly version of the team name (lowercase, hyphens instead of spaces). Removing a team will also remove push access for any child teams. This removes teams from the existing list (does not replace the entire list). |
| `branch` | string | Yes | The name of the protected branch to remove team restrictions from. The branch must already have branch protection enabled with restrictions configured. Wildcard characters are not supported. For wildcard branch protection, use the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove team membership for a user

**Slug:** `GITHUB_REMOVE_TEAM_MEMBERSHIP_FOR_A_USER`

Removes a user from a specific team within an organization. This action requires admin:org scope permissions. It will fail if: - Team synchronization with an Identity Provider (IdP) is enabled (403 Forbidden) - The organization, team, or user membership doesn't exist (404 Not Found) - You don't have sufficient permissions to manage team memberships (403 Forbidden) Note: If the removed user was the last member and the team is not nested, the team may be deleted automatically.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization that owns the team. Not case-sensitive. |
| `username` | string | Yes | The GitHub username of the user to remove from the team. Must be an exact match of the user's login handle. |
| `team_slug` | string | Yes | The URL-friendly identifier (slug) of the team. This is the hyphenated, lowercase version of the team name as it appears in the team's URL (e.g., 'justice-league' for a team named 'Justice League'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove user access restrictions

**Slug:** `GITHUB_REMOVE_USER_ACCESS_RESTRICTIONS`

Removes specified users from the list of people allowed to push to a protected branch. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must have protection rules with push restrictions enabled - Users being removed must currently have push access to the branch - The combined total of users, apps, and teams is limited to 100 items

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. Must be an organization name (user access restrictions only work on organization repositories). Not case-sensitive. |
| `users` | array | Yes | The list of user logins to remove from push access to the protected branch. These users will no longer be able to push directly to this branch. The combined total of users, apps, and teams with restrictions is limited to 100 items. |
| `branch` | string | Yes | The name of the branch from which to remove user access restrictions. Wildcard characters (e.g., '*') are not allowed. Use the GitHub GraphQL API for wildcard branch patterns. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove user as a collaborator (classic project)

**Slug:** `GITHUB_REMOVE_USER_AS_A_COLLABORATOR`

Removes a user as a collaborator from an organization project (classic). IMPORTANT: This action uses the Projects (classic) REST API which is being deprecated. The Projects (classic) feature was sunset on GitHub.com. This API may still work on GitHub Enterprise Server versions before 3.17. Requirements: - You must be an organization owner or a project admin to remove a collaborator - The user must already be a collaborator on the specified project - The project must be an organization project (classic), not a Projects V2 project For GitHub.com users: Consider using GitHub Projects V2 instead, which can be managed through the GraphQL API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the user to remove as a collaborator from the organization project (classic). |
| `project_id` | integer | Yes | The unique database identifier of the organization project (classic). This is a numeric ID returned when listing or creating classic projects, not the project number visible in URLs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove users from codespaces access for an organization

**Slug:** `GITHUB_REMOVE_USERS_CODESPACES_ACCESS_ORG`

Removes selected users from GitHub Codespaces billing access for an existing organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `selected_usernames` | array | Yes | A list of GitHub usernames, typically organization members. After removal, the organization will no longer be billed for Codespaces created by these users. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rename a branch

**Slug:** `GITHUB_RENAME_A_BRANCH`

Renames an existing branch in a GitHub repository; the new name must be unique and adhere to GitHub's naming conventions, and the current branch name cannot contain wildcard characters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `branch` | string | Yes | The current name of the branch. Wildcard characters (e.g., `*`) are not allowed. |
| `new_name` | string | Yes | The new name for the branch. Must be unique and adhere to GitHub's branch naming conventions (e.g., no spaces, '..', or leading/trailing slashes). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Render a markdown document

**Slug:** `GITHUB_RENDER_A_MARKDOWN_DOCUMENT`

Renders Markdown to HTML; for 'gfm' mode, provide 'context' (owner/repo) to correctly link issues, pull requests, and user mentions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `mode` | string ("markdown" | "gfm") | No | Rendering mode: 'markdown' for standard Markdown or 'gfm' for GitHub Flavored Markdown. |
| `text` | string | Yes | The Markdown string to convert to HTML. |
| `context` | string | No | The repository context (e.g., 'owner/repo') used when `mode` is 'gfm'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Render Markdown (Raw Mode)

**Slug:** `GITHUB_RENDER_MARKDOWN_RAW`

Tool to render raw Markdown text to HTML using GitHub's markdown API. Use when you need to convert plain Markdown content to HTML without GitHub-specific features like issue references or @mentions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `markdown_content` | string | Yes | The raw Markdown text to render as HTML. This can include any valid Markdown syntax like headers, lists, links, bold/italic text, code blocks, etc. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Replace all repository topics

**Slug:** `GITHUB_REPLACE_ALL_REPOSITORY_TOPICS`

Replaces all topics of a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `names` | array | Yes | A list of topic names to replace the current set of topics for the repository. Provide one or more topics to set them. To remove all topics, pass an empty list (`[]`). Note: Topic names cannot contain uppercase letters and are limited to 25 characters. |
| `owner` | string | Yes | The username of the account that owns the repository. This is case-insensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Replace org secret visibility to selected

**Slug:** `GITHUB_REPLACE_ORG_SECRET_VISIBILITY_TO_SELECTED`

Replaces the list of repositories that can access a Dependabot organization secret when the secret's visibility is already set to 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This parameter is not case-sensitive. |
| `secret_name` | string | Yes | Name of the Dependabot secret (alphanumeric characters and underscores only, no spaces allowed). |
| `selected_repository_ids` | array | Yes | Array of repository IDs that can access this organization Dependabot secret. This list completely replaces any current repository associations. For incremental changes (add/remove individual repos), use dedicated add/remove repository secret actions instead. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Replace repository access for an org Codespaces secret

**Slug:** `GITHUB_REPLACE_REPO_ACCESS_ON_ORG_DEV_ENV_SECRET_SET`

Replaces the list of repositories that can access an organization-level Codespaces secret. This operation completely replaces the existing list of repositories with the provided list. The secret must already have its visibility set to 'selected' for this operation to succeed. Use this when you want to set an exact list of repositories that should have access. Prerequisites: - The organization must exist and you must have admin:org scope - The Codespaces secret must already exist in the organization - The secret's visibility must be set to 'selected' (not 'all' or 'private') Returns HTTP 204 No Content on success, 404 if secret/org not found, 409 if visibility is not 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The GitHub organization name (case-insensitive). |
| `secret_name` | string | Yes | Name of the development environment secret for which repository access is being configured. |
| `selected_repository_ids` | array | Yes | Array of repository IDs that can access the organization Codespaces secret. This completely replaces any existing list of repositories. Note: The secret's visibility must already be set to 'selected' (not 'all' or 'private') for this operation to succeed; otherwise, a 409 Conflict error is returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Request a github pages build

**Slug:** `GITHUB_REQUEST_A_GITHUB_PAGES_BUILD`

Manually triggers a GitHub Pages build for a repository if GitHub Pages is enabled, useful for deployments not automatically built or for retrying failed builds.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add reviewers to a specific pull request

**Slug:** `GITHUB_REQUEST_REVIEWERS_FOR_A_PULL_REQUEST`

Adds reviewers to a specific pull request identified by owner, repo, and pull_number. This is NOT a search action - it operates on an already-known PR number. Requires `owner`, `repo`, `pull_number`, and at least one of `reviewers` or `team_reviewers`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension; not case sensitive. |
| `owner` | string | Yes | Account owner of the repository (username or organization name); not case sensitive. |
| `reviewers` | array | No | GitHub user `login` strings (usernames) to request reviews from. At least one of `reviewers` or `team_reviewers` must be provided. |
| `pull_number` | integer | Yes | Number identifying the pull request. |
| `team_reviewers` | array | No | GitHub team `slug` strings (e.g., 'justice-league') to request reviews from. Slugs are typically lowercase and use hyphens for spaces. At least one of `reviewers` or `team_reviewers` must be provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rerequest a check run

**Slug:** `GITHUB_REREQUEST_A_CHECK_RUN`

Triggers a re-run of a specific check run in a GitHub repository, resetting its status to 'queued', clearing its conclusion, and triggering the `check_run` webhook with `rerequested` action. IMPORTANT: This endpoint requires GitHub App authentication with 'checks:write' permission. The check run can ONLY be re-requested by the same GitHub App that originally created it. OAuth tokens and personal access tokens (PAT) cannot use this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is case-insensitive. |
| `check_run_id` | integer | Yes | The unique numerical identifier of the check run to be re-requested. Must be a check run created by the same GitHub App making the request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rerequest a check suite

**Slug:** `GITHUB_REREQUEST_A_CHECK_SUITE`

Triggers a new run of an existing check suite within a repository, resetting its status to 'queued', clearing its conclusion, and triggering the `check_suite` webhook with `rerequested` action. IMPORTANT: This endpoint requires GitHub App authentication with 'checks:write' permission. OAuth tokens and classic personal access tokens (PAT) cannot use this endpoint. Only GitHub App user access tokens, GitHub App installation access tokens, or fine-grained personal access tokens with checks:write permission are supported.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. This field is case-insensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This field is case-insensitive. |
| `check_suite_id` | integer | Yes | The unique numerical identifier of the check suite to be re-requested. You can obtain this from the list_check_suites_for_a_git_reference endpoint or from a workflow run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Re-run a job from a workflow run

**Slug:** `GITHUB_RE_RUN_A_JOB_FROM_A_WORKFLOW_RUN`

Re-runs a specific job and any dependent jobs from a GitHub Actions workflow run in the specified repository, optionally enabling debug logging.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a GitHub username or organization name). This name is not case sensitive. |
| `job_id` | integer | Yes | The unique numerical identifier of the job to be re-run. This ID can be obtained by listing jobs for a workflow run. |
| `enable_debug_logging` | boolean | No | If `true`, enables additional debug logging for the re-run of the job. Defaults to `false` if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rerun a workflow

**Slug:** `GITHUB_RE_RUN_A_WORKFLOW`

Re-runs a specific GitHub Actions workflow run identified by its owner, repository, and run ID, optionally enabling debug logging.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository (without the `.git` extension) where the workflow run exists (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository where the workflow run exists (not case-sensitive). |
| `run_id` | integer | Yes | Unique ID of the workflow run to re-execute. |
| `enable_debug_logging` | boolean | No | Set to `true` to enable diagnostic logging for the re-run, helpful for troubleshooting. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rerun failed jobs from a workflow run

**Slug:** `GITHUB_RE_RUN_FAILED_JOBS_FROM_A_WORKFLOW_RUN`

Re-runs all failed jobs and their dependent jobs from a specified workflow run if the run contains previously failed jobs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension; not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (username or organization name); not case-sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. |
| `enable_debug_logging` | boolean | No | Set to `true` to enable extensive debug logging for the re-run, providing additional logs to aid in diagnosing issues. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Reset a token

**Slug:** `GITHUB_RESET_A_TOKEN`

Invalidates the provided OAuth `access_token` and generates a new one for the GitHub OAuth App identified by `client_id`. Used for token rotation when a token may be compromised or for regular security maintenance. Note: This endpoint requires the OAuth App owner's credentials (client_id/client_secret for Basic Auth).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `client_id` | string | Yes | The client ID of the GitHub OAuth App. |
| `access_token` | string | Yes | The existing OAuth access token that needs to be reset. This token will be invalidated and replaced by a new one. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore a package for an organization

**Slug:** `GITHUB_RESTORE_A_PACKAGE_FOR_AN_ORGANIZATION`

Restores a package in an organization, provided it was deleted within the last 30 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the GitHub organization that owns the package (case-insensitive). |
| `token` | string | No | Optional token for restoring private packages or specific versions requiring special permissions. |
| `package_name` | string | Yes | Unique name of the package to be restored. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Type of the package. Gradle packages use `maven`. Docker images in `ghcr.io` use `container`; `docker` finds images from `docker.pkg.github.com`, even if migrated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore a package for a user

**Slug:** `GITHUB_RESTORE_A_PACKAGE_FOR_A_USER`

Restores a user-owned package previously deleted from GitHub Packages, if restorable under GitHub's data retention policy (typically within 30 days of deletion).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `token` | string | No | Optional package version token. Only required when restoring packages with versions that have more than 50,000 downloads. |
| `username` | string | Yes | The GitHub username of the account that owns the deleted package. |
| `package_name` | string | Yes | The unique name of the deleted package to restore. |
| `package_type` | string | Yes | The type of GitHub package registry. Supported values: npm, maven, rubygems, docker, nuget, container. Use `maven` for Gradle packages. `docker` can be used for images migrated from `docker.pkg.github.com` to the Container registry (`ghcr.io`), while `container` is for images originally pushed to `ghcr.io`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore a package for the authenticated user

**Slug:** `GITHUB_RESTORE_A_PACKAGE_FOR_THE_AUTHENTICATED_USER`

Restores a package deleted by the authenticated user within the last 30 days, if its namespace and version are still available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `token` | string | No | Optional token to identify a specific package version to restore, useful if multiple versions were deleted. If omitted, the most recently deleted version is typically restored. |
| `package_name` | string | Yes | The unique name of the package to be restored within its namespace and type. |
| `package_type` | string | Yes | The type of the package to be restored, specifying its ecosystem. For example, `npm` for Node.js packages, `maven` for Java packages. Special cases: packages in GitHub's Gradle registry use the type `maven`. Docker images pushed to GitHub's Container registry (`ghcr.io`) use the type `container`. The `docker` type can be used to find images originally pushed to GitHub's Docker registry (`docker.pkg.github.com`), even if they have been migrated to the Container registry. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore a package version for the authenticated user

**Slug:** `GITHUB_RESTORE_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER`

Restores a package version that was deleted by the authenticated user within the last 30 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `package_name` | string | Yes | Name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | Specifies the package type. Use `maven` for GitHub's Gradle registry. Use `container` for images in GitHub's Container registry (ghcr.io). `docker` can be used for images previously in GitHub's Docker registry (docker.pkg.github.com), even if migrated. |
| `package_version_id` | integer | Yes | Unique ID of the package version to restore. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore package version for an organization

**Slug:** `GITHUB_RESTORE_PACKAGE_VERSION_FOR_AN_ORGANIZATION`

Restores a package version for an organization, provided it was deleted within the last 30 days.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `package_name` | string | Yes | Unique name of the package. |
| `package_type` | string ("npm" | "maven" | "rubygems" | "docker" | "nuget" | "container") | Yes | The type of package. Supported types include "npm", "maven", "rubygems", "docker", "nuget", and "container". Packages in GitHub's Gradle registry use the `maven` type. Docker images in GitHub's Container registry (`ghcr.io`) use the `container` type. The `docker` type can be used for images previously in GitHub's Docker registry (`docker.pkg.github.com`), even if migrated to the Container registry. |
| `package_version_id` | integer | Yes | Unique identifier of the package version. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore package version for a user

**Slug:** `GITHUB_RESTORE_PACKAGE_VERSION_FOR_A_USER`

Restores a specific, user-owned package version if it was deleted within the last 30 days and its original namespace and version name are still available.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username of the package owner. |
| `package_name` | string | Yes | The name of the package. |
| `package_type` | string | Yes | Specifies the package type. Packages in GitHub's Gradle registry have the type `maven`. Docker images pushed to GitHub's Container registry (`ghcr.io`) have the type `container`. Use `docker` for images from GitHub's Docker registry (`docker.pkg.github.com`), even if migrated to the Container registry. |
| `package_version_id` | integer | Yes | The unique numeric identifier of the package version to be restored. Obtain this by first listing package versions using 'list_package_versions_for_a_package_owned_by_a_user'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retire Sponsors Tier

**Slug:** `GITHUB_RETIRE_SPONSORS_TIER`

Tool to retire a published payment tier from your GitHub Sponsors profile using GraphQL. Use when you need to prevent a tier from being used for new sponsorships. Existing sponsors at this tier remain unaffected.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tier_id` | string | Yes | The global node ID of the sponsors tier to retire (e.g., 'ST_kwDOCNqc1s4ACOVb'). Once retired, this tier cannot be used to start new sponsorships, but existing sponsors at this tier are unaffected. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used to ensure idempotency of mutations and track request origin. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Review access with personal token

**Slug:** `GITHUB_REVIEW_ACCESS_WITH_PERSONAL_TOKEN`

Approves or denies a pending fine-grained personal access token request for organization resources; must be performed by a GitHub App.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This field is not case-sensitive. |
| `action` | string ("approve" | "deny") | Yes | The action to take on the personal access token request. Must be 'approve' to approve the request or 'deny' to deny it. |
| `reason` | string | No | An optional comment explaining the reason for approving or denying the request. Maximum length is 1024 characters. |
| `pat_request_id` | integer | Yes | The unique identifier of the pending fine-grained personal access token request that needs to be reviewed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Review Custom Deployment Rules For Workflow Run

**Slug:** `GITHUB_REVIEW_DEPLOYMENT_PROTECTION_RULES`

Approves or rejects pending custom deployment protection rules for a workflow run. This endpoint allows GitHub Apps to review their own pending custom deployment protection rules for a specific workflow run. The review can either approve (allowing the deployment to proceed) or reject (blocking the deployment). **Important notes:** - GitHub Apps can only review their own custom deployment protection rules - This endpoint requires GitHub App installation access tokens with Deployments permission (write) - Custom deployment protection rules are available in public repos for all plans; for private/internal repos, GitHub Enterprise is required - Returns 204 No Content on success

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without `.git` extension (case-insensitive). |
| `owner` | string | Yes | Repository owner's username or organization name (case-insensitive). |
| `state` | string ("approved" | "rejected") | Yes | The review decision: 'approved' to allow the deployment or 'rejected' to block it. |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |
| `comment` | string | No | Optional comment to include with the review decision. |
| `environment_name` | string | Yes | The name of the deployment environment to review (e.g., 'production', 'staging'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Review pending deployments for a workflow run

**Slug:** `GITHUB_REVIEW_PENDING_DEPLOYMENTS_FOR_A_WORKFLOW_RUN`

Approves or rejects pending deployments for a specific workflow run that are in a 'waiting' state within specified, configured environments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string ("approved" | "rejected") | Yes | State to apply to the pending deployments. |
| `run_id` | integer | Yes | The unique identifier of the workflow run. |
| `comment` | string | Yes | Comment to include with the review decision. |
| `environment_ids` | array | Yes | Environments targeted by the review; they must be configured for the repository and be part of the pending deployments for this run. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Review PAT Requests in Bulk

**Slug:** `GITHUB_REVIEW_RESOURCE_REQUESTS_WITH_FINE_GRAINED_TOKENS`

Approves or denies multiple fine-grained personal access token requests for an organization in bulk. This endpoint processes multiple PAT request approvals or denials in a single API call. All specified pat_request_ids must refer to currently pending requests. Important: This endpoint can ONLY be called by GitHub Apps with the 'organization_personal_access_token_requests:write' permission. It cannot be called with personal access tokens or OAuth apps. On success, returns HTTP 202 Accepted with an empty body.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name where the token requests are pending. Case-insensitive. |
| `action` | string ("approve" | "deny") | Yes | The action to perform on the specified token requests. Use 'approve' to grant access or 'deny' to reject the requests. |
| `reason` | string | No | Optional reason for the decision. Maximum 1024 characters. This reason is stored and may be visible to the requester. |
| `pat_request_ids` | array | Yes | List of unique identifiers for the fine-grained personal access token requests to review. Must contain between 1 and 100 request IDs. Get these IDs from the 'List requests to access organization resources' endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Revoke an installation access token

**Slug:** `GITHUB_REVOKE_AN_INSTALLATION_ACCESS_TOKEN`

Revokes the GitHub App's current installation access token, immediately invalidating it for API authentication. IMPORTANT: This endpoint requires a GitHub App installation access token (ghs_* prefix) for authentication. OAuth tokens (gho_*) or personal access tokens are not supported and will result in a 403 Forbidden error. After successful revocation, the token becomes permanently invalid and cannot be used for any subsequent API calls. To continue API operations, a new installation access token must be generated.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run GraphQL Query

**Slug:** `GITHUB_RUN_GRAPH_QL_QUERY`

Tool to run an arbitrary GitHub GraphQL v4 query or mutation. Use when fetching multiple datasets in one batch. Cost-based rate limit: ~5,000 points/hour; keep field selections narrow, avoid deep nesting, and include rateLimit in responses to monitor quota. Responses are nested under data.data (e.g., data.data.repository.vulnerabilityAlerts); always inspect the errors array even on HTTP 200, as partial failures embed there. Paginate by looping on pageInfo.hasNextPage and advancing with pageInfo.endCursor. Search results cap at ~1,000 items per query; split by label, date range, or repository for full coverage. Use ProjectV2 nodes, not Classic Projects (deprecated). Parallel mutations (e.g., addProjectV2ItemById) can trigger transient conflicts; use sequential execution.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | GraphQL query or mutation string. Must comply with GitHub's GraphQL v4 schema. |
| `variables` | object | No | JSON object mapping variable names to values for use in the query. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Run GraphQL Relay Query

**Slug:** `GITHUB_RUN_GRAPH_QL_RELAY_QUERY`

Tool to run a GitHub GraphQL relay query. The relay field is a workaround for re-exposing the root query object. Use when you need to access root query fields through the relay context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `query` | string | Yes | GraphQL query string to execute within the relay context. Must comply with GitHub's GraphQL v4 schema. The relay field re-exposes the root Query object, allowing you to nest any valid root query fields. |
| `variables` | object | No | JSON object mapping variable names to values for use in the query. Optional - omit if the query has no variables. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search code

**Slug:** `GITHUB_SEARCH_CODE`

Searches code file contents and paths on the default branch of GitHub repositories using a query string; searches only files under 384KB, returns max 1000 results by best match, and is optimized for precision.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Code search query, including keywords and qualifiers (e.g., `language:python`, `user:octocat`, `repo:owner/repo`). For full syntax and qualifiers, see GitHub docs: [Constructing a search query](https://docs.github.com/rest/search/search#constructing-a-search-query) and [code search qualifiers](https://docs.github.com/search-github/searching-on-github/searching-code). |
| `page` | integer | No | Page number for results. For pagination details, see GitHub docs: [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |
| `sort` | string ("indexed" | "updated") | No | DEPRECATED. Valid: 'indexed' (sorts by last indexed time) or 'updated' (sorts by last updated time). If unspecified, results sorted by best match. Docs: [ranking search results](https://docs.github.com/rest/search/search#ranking-search-results). |
| `order` | string ("desc" | "asc") | No | DEPRECATED. Order ('asc' or 'desc') for results; effective only if `sort` is specified. Docs: [ranking search results](https://docs.github.com/rest/search/search#ranking-search-results). |
| `per_page` | integer | No | Results per page (max 100). For pagination details, see GitHub docs: [Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search code (all pages)

**Slug:** `GITHUB_SEARCH_CODE_ALL_PAGES`

Tool to search code across multiple pages using GitHub's code search API. Use when single-page searches may miss matches and you need a full or capped result set. GitHub caps results at ~1,000 total items regardless of pagination; results for broad queries may be silently truncated. Only the default branch is indexed, and very large files may be excluded — treat results as potentially partial. Rate limit: ~30 requests/minute; honor `Retry-After` on 403/429 responses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | The search query string for code search. **IMPORTANT**: While GitHub's documentation mentions boolean operators (AND, OR, NOT) support, the REST API still uses older syntax that frequently rejects queries with operators or parentheses (ERROR_TYPE_QUERY_PARSING_FATAL). For reliable searches, avoid boolean operators and parentheses. Supports qualifiers: `language:`, `repo:`, `path:`, `extension:`, `user:`, `org:`, `in:file`. Multiple terms use implicit AND: `hello world` finds both. Quote exact phrases: `"exact phrase"`. For complex boolean logic, use multiple separate API calls or the GitHub web interface. |
| `page` | integer | No | Page number to start retrieval (min 1). |
| `sort` | string | No | Sort field: only 'indexed' is valid (sort by last indexed time). |
| `limit` | integer | No | Optional cap on total number of items to retrieve across pages (min 1). |
| `order` | string ("desc" | "asc") | No | Sort order for results: 'asc' or 'desc'. Only effective when `sort` is provided. |
| `accept` | string | No | Custom Accept header for media type (e.g., `application/vnd.github.text-match+json` to include text match metadata). |
| `per_page` | integer | No | Number of results per page (min 1, max 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search commits

**Slug:** `GITHUB_SEARCH_COMMITS`

Finds commits on GitHub using a query string (q) supporting keywords and qualifiers, with options for sorting and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Search query with at least one text keyword plus optional qualifiers. GitHub requires actual search text (commit message keywords) - qualifiers alone are not allowed. Common qualifiers: 'repo:owner/name', 'author:username', 'committer:username', 'author-date:YYYY-MM-DD' or 'author-date:>YYYY-MM-DD..YYYY-MM-DD', 'committer-date:YYYY-MM-DD', 'merge:true/false', 'hash:HASH', 'parent:HASH', 'tree:HASH'. IMPORTANT: The 'hash:' qualifier requires a full 40-character hexadecimal commit hash (e.g., 'hash:e5bd3914e2e596debea16f433f57875b5b90bcd6'). Do NOT use branch names, tag names, or short refs with 'hash:' - use 'repo:owner/name' with other filters to search commits on a specific branch. |
| `page` | integer | No | Page number of results to retrieve. |
| `sort` | string ("author-date" | "committer-date") | No | Sorts results by 'author-date' or 'committer-date'. Use separately with the 'order' parameter (e.g., sort='committer-date' with order='desc'). Do not combine them into a single value. If unspecified, GitHub defaults to 'best match' ranking. |
| `order` | string ("desc" | "asc") | No | Sort order: 'desc' (newest first) or 'asc' (oldest first). Use with the 'sort' parameter to control direction (e.g., sort='committer-date' with order='desc'). |
| `per_page` | integer | No | Number of results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search commits by author across repos

**Slug:** `GITHUB_SEARCH_COMMITS_BY_AUTHOR`

Searches commits across GitHub using the Search API (e.g., by author/email/org/date range) without per-repo scanning. Use when you need to find commits by author, committer email, organization, or date ranges across multiple repositories. This avoids the need to list commits per repository and prevents 409 errors on empty repos.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | GitHub search query for commits. IMPORTANT: Must include search text (keywords) in addition to qualifiers. Qualifier-only queries are not allowed by the GitHub API. Supports qualifiers like author:, committer-email:, org:, repo:, author-date:, committer-date:, merge:, hash:, parent:, tree:, is:public/private. Examples: 'fix author:octocat', 'bug repo:owner/repo', 'update author:octocat author-date:>=2025-01-01'. If only qualifiers are provided, a wildcard search term will be automatically added. |
| `page` | integer | No | Page number of results to fetch. |
| `sort` | string ("author-date" | "committer-date") | No | Sort options for commit search. |
| `order` | string ("asc" | "desc") | No | Order options for search results. |
| `per_page` | integer | No | Number of results per page (maximum 100). |
| `composio_execution_message` | string | No | Message about any automatic modifications made to the input |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### GitHub GraphQL Search

**Slug:** `GITHUB_SEARCH_GITHUB_GRAPHQL`

Tool to perform GitHub GraphQL searches across issues, pull requests, repositories, users, and discussions. Returns up to 1,000 results with cursor-based pagination. Use when you need structured search results with specific fields.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("ISSUE" | "REPOSITORY" | "USER" | "DISCUSSION") | Yes | The type of resource to search. Determines the structure of returned results. |
| `after` | string | No | Cursor string obtained from pageInfo.endCursor in a previous response. Returns results after this cursor for pagination. |
| `first` | integer | No | Number of results to return (1-100). Returns the first N elements from the result set. Use with 'after' parameter for pagination. |
| `query` | string | Yes | The search query string using GitHub search syntax. Supports qualifiers like 'repo:', 'org:', 'user:', 'is:open', 'is:closed', 'label:', etc. For issues/PRs, use 'is:issue' or 'is:pr'. For repositories, search by name, description, or topics. Maximum 1,000 results can be retrieved across all pages. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search issues and pull requests

**Slug:** `GITHUB_SEARCH_ISSUES_AND_PULL_REQUESTS`

Searches GitHub for issues and pull requests. Supports keywords, qualifiers (repo:, org:, user:, state:, label:, author:, assignee:, mentions:, etc.), and type filters (is:issue, is:pr). Type filters cannot be used alone - they must be combined with at least one keyword or other qualifier. All other qualifiers work independently. The @me shorthand (e.g., assignee:@me, mentions:@me) is automatically resolved to your username. Logical operators (AND, OR, NOT) are supported but limited to a maximum of 5 operators total per query.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Search query using GitHub's search syntax. Supports keywords, qualifiers (repo:, org:, user:, state:, label:, author:, assignee:, mentions:, etc.), and type filters (is:issue, is:pr). IMPORTANT: Type filters (is:issue, is:pr) cannot be used alone - they must be combined with at least one keyword or other qualifier. All other qualifiers work independently (e.g., 'state:open', 'label:bug', 'assignee:octocat'). The @me shorthand (e.g., assignee:@me, mentions:@me) is automatically resolved to your actual username. Logical operators (AND, OR, NOT) can be used to combine terms (maximum 5 operators total). |
| `page` | integer | No | Page number for results. |
| `sort` | string ("comments" | "reactions" | "reactions-+1" | "reactions--1" | "reactions-smile" | "reactions-thinking_face" | "reactions-heart" | "reactions-tada" | "interactions" | "created" | "updated") | No | Field for sorting results. GitHub defaults to 'best match' if unspecified. |
| `order` | string ("desc" | "asc") | No | Order for sorted results (ascending/descending). Effective only if `sort` is also provided. |
| `per_page` | integer | No | Number of results per page. |
| `raw_response` | boolean | No | Return full API response if true, optimized response for AI agents if false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search labels

**Slug:** `GITHUB_SEARCH_LABELS`

Searches for labels within a GitHub repository by keywords in their names or descriptions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | The search keywords or query to find labels. This endpoint does not accept qualifiers in the query. For more details on query construction, refer to GitHub's documentation on [Constructing a search query](https://docs.github.com/rest/search/search#constructing-a-search-query). |
| `page` | integer | No | The page number of the results to retrieve, starting from 1. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `sort` | string ("created" | "updated") | No | Specifies the field to sort the search results by. Valid options are 'created' or 'updated'. If not provided, results are sorted by best match according to GitHub's default ranking: [best match](https://docs.github.com/rest/search/search#ranking-search-results). |
| `order` | string ("desc" | "asc") | No | Determines the sorting order of results, either 'asc' (ascending) or 'desc' (descending). This parameter is only effective when `sort` is also specified. Defaults to 'desc'. |
| `per_page` | integer | No | The number of search results to return per page. The maximum value is 100. For more information, see "[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api)." |
| `repository_id` | integer | Yes | The unique identifier of the repository where labels will be searched. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search repositories

**Slug:** `GITHUB_SEARCH_REPOSITORIES`

Searches GitHub repositories using a flexible query (keywords, qualifiers) with sorting, ordering, and pagination. IMPORTANT: The 'q' parameter (search query) is REQUIRED and must always be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | REQUIRED. The search query string for finding GitHub repositories. This parameter must always be provided. IMPORTANT: Maximum of 5 AND/OR/NOT operators allowed per query - exceeding this limit returns a 422 error. Combine keywords with qualifiers to filter results. Valid qualifiers include: `language:LANG` (e.g., `language:python`), `stars:N` or `stars:>N` (e.g., `stars:>1000`), `forks:N`, `size:N` (in KB), `topic:TOPIC`, `license:LICENSE`, `created:DATE`, `pushed:DATE`, `is:public` or `is:private`, `archived:true/false`, `in:name/description/readme`, `user:USERNAME` (must be an existing GitHub username, e.g., `user:octocat`), `org:ORGNAME` (for organization repositories). Note: The `user:` and `org:` qualifiers require actual valid GitHub usernames or organization names - placeholders like 'current_user' are not supported and will cause validation errors. To search your own repositories, use `user:YOUR_USERNAME` with your actual GitHub username, or use the List Repositories for Authenticated User endpoint instead. Qualifiers like `is:owner` are NOT valid for repository search. IMPORTANT: When using logical operators (OR, AND, NOT), the query must include at least one plain keyword (non-qualifier) search term. Queries composed entirely of qualifiers joined by logical operators will fail with a 422 error. For example, `topic:solana OR topic:ethereum` is invalid; instead use `solana OR ethereum stars:>100` or similar with a plain keyword. |
| `page` | integer | No | The page number for pagination of search results. Defaults to 1. Used in conjunction with `per_page` to fetch subsequent sets of results. See GitHub API documentation for more on pagination. |
| `sort` | string ("stars" | "forks" | "help-wanted-issues" | "updated" | "created") | No | Specifies the field to sort the search results by. Options include `stars`, `forks`, `help-wanted-issues`, `updated` (recency of update), or `created` (creation date). If not provided, results are sorted by GitHub's default 'best match' ranking. |
| `order` | string ("desc" | "asc") | No | Determines the order of search results: `desc` for descending or `asc` for ascending. This parameter is only effective when `sort` is also specified. Defaults to `desc`. |
| `per_page` | integer | No | The number of repository results to return per page. The maximum value is 100. Defaults to 30. See GitHub API documentation for more on pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search topics

**Slug:** `GITHUB_SEARCH_TOPICS`

Finds topics on GitHub using keywords and qualifiers with GitHub's search syntax, supporting pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Search query string. Supports keywords, qualifiers, and GitHub's search syntax; see [Constructing a search query](https://docs.github.com/rest/search/search#constructing-a-search-query). |
| `page` | integer | No | Page number of the results to retrieve for pagination. |
| `per_page` | integer | No | Number of topic results per page (maximum 100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search users

**Slug:** `GITHUB_SEARCH_USERS`

Searches for users on GitHub by criteria like username, email, location, followers, or repository associations, using a flexible query string `q`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Search query string supporting keywords and qualifiers for user attributes (e.g., `username`, `location`, `followers`). See examples for syntax. |
| `page` | integer | No | Page number for results (1-indexed). |
| `sort` | string ("followers" | "repositories" | "joined") | No | Field to sort results by. If not specified, GitHub's 'best match' algorithm is used. |
| `order` | string ("desc" | "asc") | No | Sort order for results when `sort` is specified; ignored otherwise. |
| `per_page` | integer | No | Number of search results per page. Maximum 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set admin branch protection

**Slug:** `GITHUB_SET_ADMIN_BRANCH_PROTECTION`

Enables administrator enforcement on a branch, making existing protection rules also apply to administrators; branch protection rules must already be configured.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension. Not case sensitive. |
| `owner` | string | Yes | Account owner of the repository (user or organization name). Not case sensitive. |
| `branch` | string | Yes | Branch name. Wildcards not permitted (use GitHub GraphQL API for wildcard patterns). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set app access restrictions

**Slug:** `GITHUB_SET_APP_ACCESS_RESTRICTIONS`

Replaces the list of GitHub Apps permitted to push to a protected branch. This action completely replaces the existing list of apps with push access - it does not add to or merge with the current list. Requirements: - The branch must already have protection rules enabled with push restrictions configured - Apps must be installed on the repository and have 'contents' write permission - Push restrictions are only available for organization-owned repositories with GitHub Team or Enterprise Cloud plans

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `apps` | array | Yes | The list of GitHub App slugs to grant push access. This replaces the entire list of apps with push access. Apps must be installed on the repository and have 'contents' write permission. The app slug is the URL-friendly name of the GitHub App (e.g., 'github-actions', 'dependabot'). |
| `repo` | string | Yes | The name of the repository without the `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | The organization or username that owns the repository. Push restrictions are only available for organization-owned repositories. |
| `branch` | string | Yes | The name of the protected branch. Wildcards are not permitted. The branch must already have protection rules enabled with push restrictions configured. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set a repository subscription

**Slug:** `GITHUB_SET_A_REPOSITORY_SUBSCRIPTION`

Sets the authenticated user's notification subscription for a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case-sensitive. |
| `ignored` | boolean | No | Determines if all notifications should be blocked from this repository. If `true`, this repository will be ignored, and the `subscribed` parameter will be disregarded (effectively setting subscribed to `false`). |
| `subscribed` | boolean | No | Determines if notifications should be received from this repository. Set to `true` to watch the repository, `false` to unwatch. This parameter is overridden if `ignored` is set to `true`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set a thread subscription

**Slug:** `GITHUB_SET_A_THREAD_SUBSCRIPTION`

Sets whether a GitHub notification thread is ignored (muted) or unignored (unmuted), for a `thread_id` that must identify an existing notification thread.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ignored` | boolean | No | Whether to ignore (mute) the thread. `True` blocks notifications; `False` allows them if otherwise subscribed. |
| `thread_id` | integer | Yes | Unique identifier of the notification thread (e.g., from `GET /notifications`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set default workflow permissions for an organization

**Slug:** `GITHUB_SET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_AN_ORGANIZATION`

Updates an organization's default GITHUB_TOKEN permissions for workflows and whether GitHub Actions can approve pull requests; note that allowing Actions to approve pull requests (`can_approve_pull_request_reviews: true`) is a security risk.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `default_workflow_permissions` | string ("read" | "write") | No | Specifies the default permissions for the GITHUB_TOKEN in GitHub Actions workflows. |
| `can_approve_pull_request_reviews` | boolean | No | Whether GitHub Actions can approve pull requests; enabling this (`true`) can be a security risk. If omitted, the current setting is preserved. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set default workflow permissions for a repository

**Slug:** `GITHUB_SET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_A_REPOSITORY`

Sets the default permissions for the GITHUB_TOKEN within a repository and configures whether GitHub Actions can approve pull requests.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `default_workflow_permissions` | string ("read" | "write") | No | The default permissions granted to the GITHUB_TOKEN when running workflows in the repository. 'read' allows read-only access, while 'write' allows write access. |
| `can_approve_pull_request_reviews` | boolean | No | Specifies whether GitHub Actions workflows, using the GITHUB_TOKEN, can approve pull requests. Enabling this can pose a security risk by allowing automated processes to approve code changes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set primary email visibility

**Slug:** `GITHUB_SET_EMAIL_VISIBILITY`

Sets the visibility ('public' or 'private') of the authenticated user's primary email address on GitHub, if one is configured.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `visibility` | string ("public" | "private") | Yes | Desired visibility for the authenticated user's primary email. Use 'public' to make the email visible on the user's profile, or 'private' to hide it. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set GitHub Actions permissions for an organization

**Slug:** `GITHUB_SET_GITHUB_ACTIONS_PERMISSIONS_FOR_AN_ORGANIZATION`

Sets the GitHub Actions permissions policy for an organization, specifying which repositories can run Actions and which actions/workflows are allowed; if 'selected' is chosen for either, manage the specific lists via other endpoints.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `allowed_actions` | string ("all" | "local_only" | "selected") | No | Policy for which actions and reusable workflows are allowed. If 'selected', manage the list of specific actions/workflows via other GitHub API endpoints. Required when enabled_repositories is set to 'all' or 'selected'. |
| `enabled_repositories` | string ("all" | "none" | "selected") | Yes | Policy for which repositories can run GitHub Actions. If 'selected', manage the list of specific repositories via other GitHub API endpoints. |
| `sha_pinning_required` | boolean | No | Whether actions and reusable workflows must be pinned to full-length commit SHAs. This enforces an additional security requirement for GitHub Actions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set github actions permissions for a repository

**Slug:** `GITHUB_SET_GITHUB_ACTIONS_PERMISSIONS_FOR_A_REPOSITORY`

Sets GitHub Actions permissions for a repository, enabling/disabling Actions and defining the policy for allowed actions and reusable workflows.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `enabled` | boolean | Yes | Specifies whether GitHub Actions is enabled for the repository. Set to `True` to enable, `False` to disable. |
| `allowed_actions` | string ("all" | "local_only" | "selected") | No | Permissions policy: `all` (all actions/workflows allowed), `local_only` (only from this repository), or `selected` (configured in settings). Optional; inherits from organization/enterprise or GitHub defaults if omitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set interaction restrictions for an organization

**Slug:** `GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION`

Limits interactions (comments, new issues, PRs) in an organization's public repositories by user type and duration, typically to mitigate high traffic or unwanted activity.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Name of the organization (case-insensitive). |
| `limit` | string ("existing_users" | "contributors_only" | "collaborators_only") | Yes | Type of GitHub user to be restricted from commenting, opening issues, or creating pull requests in the organization's public repositories. |
| `expiry` | string ("one_day" | "three_days" | "one_week" | "one_month" | "six_months") | No | Duration of the restriction; if omitted, the API defaults to `one_day`. A new limit overwrites any existing one. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set interaction restrictions for a repository

**Slug:** `GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY`

Temporarily limits which GitHub users (e.g., existing_users, contributors_only) can interact (comment, open issues, create pull requests) in a repository for a specified duration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository (without .git extension, case-insensitive). |
| `limit` | string ("existing_users" | "contributors_only" | "collaborators_only") | Yes | Specifies which group of GitHub users (e.g., existing_users, contributors_only) can interact with the repository. |
| `owner` | string | Yes | The account owner of the repository (username or organization name, case-insensitive). |
| `expiry` | string ("one_day" | "three_days" | "one_week" | "one_month" | "six_months") | No | Duration for the interaction restriction (e.g., one_day, six_months); API defaults to 'one_day' if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set interaction restrictions for your public repositories

**Slug:** `GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_YOUR_PUBLIC_REPOS`

Sets or updates temporary interaction restrictions for all public repositories owned by the authenticated user, overriding any repository-specific limits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | string ("existing_users" | "contributors_only" | "collaborators_only") | Yes | Specifies the type of GitHub user that can comment, open issues, or create pull requests in your public repositories while the interaction limit is in effect. |
| `expiry` | string ("one_day" | "three_days" | "one_week" | "one_month" | "six_months") | No | Specifies the duration of the interaction restriction; API defaults to `one_day` if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set labels for an issue

**Slug:** `GITHUB_SET_LABELS_FOR_AN_ISSUE`

Replaces all existing labels on a GitHub issue with a new set of labels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `labels` | array | Yes | A list of label names to apply to the issue. This replaces all existing labels on the issue. Providing an empty list will remove all labels from the issue. |
| `issue_number` | integer | Yes | The number that identifies the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set custom OIDC subject claim template

**Slug:** `GITHUB_SET_OIDC_SUBJECT_CLAIM_TEMPLATE`

Sets the OpenID Connect (OIDC) subject claim template for a GitHub repository, allowing use of the default template or a custom one defined by `include_claim_keys` if `use_default` is `false`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Owner of the repository (username or organization name, case-insensitive). |
| `use_default` | boolean | Yes | If true, applies the default GitHub-provided OIDC subject claim template (ignoring `include_claim_keys`); if false, a custom template defined by `include_claim_keys` is used. |
| `include_claim_keys` | array | No | Array of unique OIDC claim strings (alphanumeric and underscores) for the token. Used only if `use_default` is `false`. Consult GitHub's OIDC documentation for supported claim keys. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set allowed actions and workflows for an organization

**Slug:** `GITHUB_SET_ORG_ALLOWED_ACTIONS`

Sets the GitHub Actions permissions for an existing organization, specifying allowed GitHub-owned actions, verified creator actions, and action/workflow patterns from public repositories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `patterns_allowed` | array | No | String-matching patterns for allowed actions/workflows from public repositories (e.g., `monalisa/octocat@*`, `monalisa/*`); supports wildcards, tags, SHAs. |
| `verified_allowed` | boolean | No | Whether actions from GitHub Marketplace verified creators are allowed. |
| `github_owned_allowed` | boolean | No | Whether GitHub-owned actions (e.g., from the `actions` organization) are allowed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set custom labels for a self-hosted runner for an organization

**Slug:** `GITHUB_SET_ORG_RUNNER_LABELS`

Sets the custom labels for a self-hosted runner in an organization; this operation does not affect default system-assigned labels (e.g., 'self-hosted', 'linux', 'x64').

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This name is not case-sensitive. |
| `labels` | array | Yes | A list of custom label names to set for the runner. This replaces all existing custom labels. Provide an empty list to remove all custom labels from the runner. |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set repo allowed actions

**Slug:** `GITHUB_SET_REPO_ALLOWED_ACTIONS`

Sets allowed GitHub Actions and reusable workflows for a repository, managing permissions for GitHub-owned, verified creator, or specific pattern-matched actions/workflows (note: `patterns_allowed` applies only to public repositories).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case-sensitive. |
| `patterns_allowed` | array | No | String-matching patterns (wildcards, tags, SHAs allowed) for specific actions/workflows; **Note**: Only applies to public repositories. |
| `verified_allowed` | boolean | No | Determines if actions from GitHub Marketplace verified creators are allowed. |
| `github_owned_allowed` | boolean | No | Determines if GitHub-owned actions (e.g., from the `actions` organization) are allowed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set custom labels for repo runner

**Slug:** `GITHUB_SET_REPO_RUNNER_LABELS`

Replaces all custom labels for a specific self-hosted runner in a repository; an empty list for `labels` removes all existing custom labels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `labels` | array | Yes | Custom labels to set for the runner; an empty list removes all custom labels and replaces existing ones. |
| `runner_id` | integer | Yes | Unique identifier of the self-hosted runner. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set selected repositories for an organization variable

**Slug:** `GITHUB_SET_SELECTED_REPOS_FOR_ORG_VARIABLE`

Replaces the list of repositories that can access an organization-level variable; the variable's visibility must be 'selected'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The slug or name of the GitHub organization. This value is not case-sensitive. |
| `name` | string | Yes | The name of the organization variable for which to set repository access. |
| `selected_repository_ids` | array | Yes | A list of unique integer identifiers for the repositories that can access the organization variable. This list will replace any current selection of repositories. An empty list will remove access for all repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set selected repositories for an organization secret

**Slug:** `GITHUB_SET_SELECTED_REPOSITORIES_FOR_AN_ORGANIZATION_SECRET`

Replaces the list of repositories that can access an organization secret; only effective if the secret's visibility is 'selected'. Prerequisites: - The organization secret must already exist - The secret's visibility must be set to 'selected' (not 'all' or 'private') - Requires admin:org scope or actions secrets fine-grained permission This action completely replaces the repository access list. To add or remove individual repositories without affecting others, use the dedicated add/remove repository actions instead.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization. This name is not case-sensitive. |
| `secret_name` | string | Yes | The name of the organization secret whose repository access list is being updated. |
| `selected_repository_ids` | array | Yes | An array of unique integer IDs for repositories that will be granted access to the organization secret. This completely replaces the existing list. Use dedicated actions to add or remove individual repositories without replacing the entire list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set selected repositories for a user secret

**Slug:** `GITHUB_SET_SELECTED_REPOSITORIES_FOR_A_USER_SECRET`

Defines the list of repositories permitted to access a specific Codespaces secret for the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `secret_name` | string | Yes | The name of the Codespaces secret for which to set repository access. This secret must already exist for the authenticated user. |
| `selected_repository_ids` | array | Yes | A list of repository IDs to which the secret will be granted access. This list completely replaces any existing set of repositories for the secret. Each repository ID must correspond to a repository accessible by the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set status check contexts

**Slug:** `GITHUB_SET_STATUS_CHECK_CONTEXTS`

Replaces required status check contexts for a protected branch, requiring admin permissions; an empty `contexts` array removes all checks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension; not case sensitive. |
| `owner` | string | Yes | The account owner (username or organization) of the repository; not case sensitive. |
| `branch` | string | Yes | The name of the branch for which to set status check contexts; cannot contain wildcard characters. |
| `contexts` | array | Yes | Names of the status checks to require; an empty array removes all required status checks. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set team access restrictions

**Slug:** `GITHUB_SET_TEAM_ACCESS_RESTRICTIONS`

Replaces the list of teams with push access to a protected branch. This action sets (replaces) the teams that have push access to a protected branch. Unlike 'Add team access restrictions' (POST), this action replaces the entire list rather than adding to it. Use an empty list to remove all team restrictions. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must exist in the organization and have repository access

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The organization name that owns the repository. Team access restrictions only work for organization-owned repositories, not personal repositories. This value is not case-sensitive. |
| `teams` | array | Yes | The list of team slugs to grant push access to the protected branch. A team slug is the URL-friendly version of the team name (lowercase, hyphens instead of spaces). The teams must already have access to the repository. This REPLACES the entire existing list of teams with push access (use empty list to remove all teams). |
| `branch` | string | Yes | The name of the protected branch to set team restrictions on. The branch must already have branch protection enabled with restrictions configured. Wildcard characters are not supported. For wildcard branch protection, use the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set user access restrictions

**Slug:** `GITHUB_SET_USER_ACCESS_RESTRICTIONS`

Replaces the list of users with push access to a protected branch in an organization repository. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must already have protection rules with restrictions enabled - This REPLACES (not adds to) the existing list of users with push access - Users must have write access to the repository to be added - The combined total of users, apps, and teams is limited to 100 items - To add users without replacing, use the 'add_user_access_restrictions' action instead

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository (must be an organization for user restrictions). This name is not case-sensitive. |
| `users` | array | Yes | The list of user logins (usernames) to grant push access to the protected branch. This REPLACES the existing list of users. Users must have write access to the repository. Pass an empty list [] to remove all user restrictions. The combined total of users, apps, and teams is limited to 100 items. |
| `branch` | string | Yes | The name of the branch. Cannot contain wildcard characters. To use wildcards in branch names, use the GitHub GraphQL API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set User Interaction Limit (GraphQL)

**Slug:** `GITHUB_SET_USER_INTERACTION_LIMIT_GRAPH_QL`

Tool to set interaction limits on a user's public repositories using GraphQL. Use when you need to temporarily restrict who can comment, open issues, or create pull requests. Limits apply to the authenticated user or a specified user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | string ("EXISTING_USERS" | "CONTRIBUTORS_ONLY" | "COLLABORATORS_ONLY") | Yes | The level of interaction to limit. EXISTING_USERS limits to users with accounts older than 24 hours, CONTRIBUTORS_ONLY limits to prior contributors, COLLABORATORS_ONLY limits to collaborators only. |
| `expiry` | string ("ONE_DAY" | "THREE_DAYS" | "ONE_WEEK" | "ONE_MONTH" | "SIX_MONTHS") | No | When the interaction limit expires. |
| `userId` | string | Yes | The global ID of the user to set interaction limits for. This is required and must be a valid GitHub user node ID. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used to track requests. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set workflow access level outside repository

**Slug:** `GITHUB_SET_WORKFLOW_EXTERNAL_ACCESS`

Sets the access level for workflows outside a repository to use actions and reusable workflows within that repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without `.git` extension. Not case-sensitive. |
| `owner` | string | Yes | Owner's username or organization name. Not case-sensitive. |
| `access_level` | string ("none" | "user" | "organization") | Yes | Specifies the level of access workflows outside this repository have to its actions and reusable workflows. - `none`: Actions and reusable workflows are accessible only from workflows within this repository. - `user`: Actions and reusable workflows can be shared with other private repositories owned by the same user. - `organization`: Actions and reusable workflows can be shared with other repositories within the same organization. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Star a gist

**Slug:** `GITHUB_STAR_A_GIST`

Stars a GitHub gist identified by `gist_id`; this action is idempotent and returns a 204 No Content status upon success, even if the gist is already starred.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier of the gist. This ID is the string of characters found at the end of a gist's URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Star a specified repository (requires owner and repo)

**Slug:** `GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER`

Stars a specified repository (identified by owner and repo name) for the authenticated user; this action is idempotent and succeeds even if the repository is already starred. Requires explicit repository identification via owner and repo parameters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Required. The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | Required. The username of the account that owns the repository. This field is not case-sensitive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start a codespace for the authenticated user

**Slug:** `GITHUB_START_A_CODESPACE_FOR_THE_AUTHENTICATED_USER`

Initiates the startup process for an existing GitHub Codespace (identified by `codespace_name`) if it's in a startable state like 'Available' or 'Stopped'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | The unique name of the codespace to be started. This is the identifier for the codespace, often system-generated or user-defined. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Stop a codespace for an organization user

**Slug:** `GITHUB_STOP_A_CODESPACE_FOR_AN_ORGANIZATION_USER`

Stops a running codespace for an organization member. This action allows organization administrators to stop a codespace that belongs to a member of their organization. The codespace must be in a running state (e.g., 'Available') to be stopped. Required permissions: - OAuth/PAT: admin:org scope - Fine-grained tokens: 'Organization codespaces' (write) or 'Codespaces lifecycle admin' (write) Common HTTP responses: - 200: Codespace successfully stopped, returns codespace object - 304: Not modified (codespace already stopped) - 401: Authentication required - 403: Insufficient permissions (need admin:org) - 404: Organization, user, or codespace not found

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (login). Case-insensitive. The authenticated user must have admin:org permissions for this organization. |
| `username` | string | Yes | The GitHub username (login) of the organization member whose codespace will be stopped. |
| `codespace_name` | string | Yes | The unique name of the codespace to stop. This is typically a hyphenated string like 'username-repo-name-randomchars'. You can obtain this from the 'List codespaces for a user in organization' action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Stop a codespace for the authenticated user

**Slug:** `GITHUB_STOP_A_CODESPACE_FOR_THE_AUTHENTICATED_USER`

Stops a running or available Codespace for the authenticated user, pausing its execution and billing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `codespace_name` | string | Yes | The unique name of the Codespace to be stopped. This name is assigned by GitHub when the Codespace is created. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit a review for a pull request

**Slug:** `GITHUB_SUBMIT_A_REVIEW_FOR_A_PULL_REQUEST`

Finalizes a pending pull request review (identified by `review_id`) with a required `event` (APPROVE, REQUEST_CHANGES, COMMENT) and an optional `body`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The main textual content of the review. Highly recommended for `COMMENT` events to provide context; can also supplement `APPROVE` or `REQUEST_CHANGES` actions. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. Case-insensitive. |
| `event` | string ("APPROVE" | "REQUEST_CHANGES" | "COMMENT") | Yes | The review action: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. An invalid/omitted event will result in an HTTP 422 error and set the review state to `PENDING`, requiring a subsequent valid submission. |
| `owner` | string | Yes | The username of the account that owns the repository. Case-insensitive. |
| `review_id` | integer | Yes | Identifier of the pending review to be submitted. Typically obtained when a review is first created or initiated. |
| `pull_number` | integer | Yes | The number that uniquely identifies the pull request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Sync a fork branch with the upstream repository

**Slug:** `GITHUB_SYNC_FORK_BRANCH_WITH_UPSTREAM`

Synchronizes a branch in a forked GitHub repository with its upstream counterpart, assuming the repository is a fork, the branch exists, an upstream is configured, and the merge is conflict-free.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the forked repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name of the account that owns the forked repository. This field is not case-sensitive. |
| `branch` | string | Yes | The name of the branch in the forked repository that should be updated to match the corresponding branch in the upstream repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Test the push repository webhook

**Slug:** `GITHUB_TEST_REPOSITORY_WEBHOOK`

Triggers a simulated push event to test a repository's push webhook; a test event is only delivered if the webhook is subscribed to 'push' events, otherwise, it returns 204 No Content without sending a POST.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `hook_id` | integer | Yes | Unique identifier of the hook, found in the `X-GitHub-Hook-ID` header of a webhook delivery or by listing repository webhooks. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Transfer a repository

**Slug:** `GITHUB_TRANSFER_A_REPOSITORY`

Initiates a repository transfer to a new owner (who must accept the request); if the new owner is an organization, it must be configured to allow transfers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Name of the repository to transfer, without `.git` (case-insensitive). |
| `owner` | string | Yes | Current owner's username or organization name (case-insensitive). |
| `new_name` | string | No | Optional new name for the repository post-transfer; retains current name if unspecified. |
| `team_ids` | array | No | List of team IDs to add the repository to if `new_owner` is an organization; teams must belong to the `new_owner`. |
| `new_owner` | string | Yes | Target username or organization name for the repository transfer. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unblock a user

**Slug:** `GITHUB_UNBLOCK_A_USER`

Unblocks a GitHub user, provided they are currently blocked by the authenticated user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user to unblock. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unblock a user from an organization

**Slug:** `GITHUB_UNBLOCK_USER_FROM_ORGANIZATION`

Unblocks a user from an organization, allowing renewed interaction with its resources, provided the user is currently blocked (otherwise, a 404 error may occur).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This is case-insensitive. |
| `username` | string | Yes | The GitHub username of the user to unblock. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unfollow a user

**Slug:** `GITHUB_UNFOLLOW_A_USER`

Unfollows an existing GitHub user; this action is idempotent, succeeding even if the authenticated user is not currently following them.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | The GitHub username (handle) of the user whom the authenticated user wishes to unfollow. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unfollow organization

**Slug:** `GITHUB_UNFOLLOW_ORGANIZATION`

Tool to unfollow a GitHub organization using GraphQL. Use when you need to stop following a specific organization on GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `organizationId` | string | Yes | The Node ID of the organization to unfollow (e.g., 'MDEyOk9yZ2FuaXphdGlvbjk5MTk='). This is the global GraphQL node ID, not the organization name or numeric ID. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. This value will be returned in the response and can be used for request tracking or idempotency. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unfollow user

**Slug:** `GITHUB_UNFOLLOW_USER`

Tool to unfollow a GitHub user using GraphQL. Use when you need to stop following a specific user on GitHub.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The Node ID of the user to unfollow (e.g., 'MDQ6VXNlcjE='). This is the global GraphQL node ID, not the username or numeric user ID. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. This value will be returned in the response and can be used for request tracking or idempotency. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unlock an issue

**Slug:** `GITHUB_UNLOCK_AN_ISSUE`

Unlocks a currently locked GitHub issue in the specified repository, allowing new comments and interactions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This value is not case-sensitive. |
| `owner` | string | Yes | The username (account) or organization name that owns the repository. This value is not case-sensitive. |
| `issue_number` | integer | Yes | The number that uniquely identifies the issue within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unlock an organization repository

**Slug:** `GITHUB_UNLOCK_ORGANIZATION_REPOSITORY`

Unlocks a repository that was locked for migration within a GitHub organization. This action is part of the organization migrations workflow. When you start a migration with `lock_repositories=true`, the source repositories are locked to prevent changes during export. After the migration is complete and applied to the target instance, use this action to unlock the repositories so they can be accessed or deleted. Requirements: - You must be an organization owner to unlock repositories - The repository must be currently locked as part of the specified migration - This endpoint does not work with GitHub App tokens or fine-grained personal access tokens Typical workflow: 1. Start an organization migration with POST /orgs/{org}/migrations 2. Wait for the migration to complete (state: "exported") 3. Apply the migration to your target instance 4. Unlock each migrated repository using this action 5. Delete the source repositories if no longer needed

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the GitHub organization that owns the migration. This name is not case-sensitive. |
| `repo_name` | string | Yes | The name of the repository to unlock. Must be one of the repositories included in the specified migration. |
| `migration_id` | integer | Yes | The unique numeric identifier of the organization migration. You can find this by listing organization migrations using GET /orgs/{org}/migrations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unlock a user repository

**Slug:** `GITHUB_UNLOCK_USER_REPOSITORY`

Unlocks a repository (`repo_name`) that was locked as part of a user migration (`migration_id`), making it usable or deletable; this action requires the repository to be currently locked.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo_name` | string | Yes | The name of the repository to unlock. |
| `migration_id` | integer | Yes | The unique identifier of the user migration. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unstar a gist

**Slug:** `GITHUB_UNSTAR_A_GIST`

Removes a star from the specified gist; the action is idempotent and will not error if the gist was not previously starred by the user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `gist_id` | string | Yes | The unique identifier (ID) of the gist to be unstarred. This ID can be retrieved from API endpoints that list gists or from the gist's URL. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unstar a repository

**Slug:** `GITHUB_UNSTAR_REPOSITORY`

Removes the authenticated user's star from a specified repository, which must already be starred by the user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the repository owner (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a check run

**Slug:** `GITHUB_UPDATE_A_CHECK_RUN`

Updates an existing check run for a specific commit in a repository, allowing modifications to its status, conclusion, output, and other details. NOTE: This endpoint requires GitHub App authentication with 'checks:write' permission - OAuth tokens and personal access tokens cannot update check runs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the check (e.g., "code-coverage"). |
| `repo` | string | Yes | Repository name without the `.git` extension (not case sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case sensitive). |
| `status` | string ("queued" | "in_progress" | "completed" | "waiting" | "requested" | "pending") | No | Current status of the check run. Only GitHub Actions can set `waiting`, `pending`, or `requested`. |
| `actions` | string | No | JSON string representing user-triggerable actions (max 3), each with `label`, `identifier`, and `description`. |
| `conclusion` | string ("action_required" | "cancelled" | "failure" | "neutral" | "success" | "skipped" | "stale" | "timed_out") | No | Final conclusion of the check. Required if `completed_at` is provided or `status` is `completed`. Providing `conclusion` sets `status` to `completed`. Users cannot set `stale`. |
| `started_at` | string | No | Timestamp of when the check run started (ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`). |
| `details_url` | string | No | URL of the integrator's site with full check details. |
| `external_id` | string | No | Reference for the run on the integrator's system. |
| `check_run_id` | integer | Yes | The unique identifier of the check run. |
| `completed_at` | string | No | Timestamp of when the check run completed (ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`). |
| `output__text` | string | No | Text for the output, can contain Markdown. |
| `output__title` | string | No | Title for the check run output. Displayed prominently in the GitHub checks UI. |
| `output__images` | string | No | JSON string representing images for the output, displayed in the GitHub PR UI. |
| `output__summary` | string | No | Summary of the output, can contain Markdown. Required if the `output` object is provided. |
| `output__annotations` | string | No | JSON string representing line-specific analysis information, visible in PRs. Max 50 per request (appended to existing). GitHub Actions: 10 warnings/10 errors per step. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a code scanning alert

**Slug:** `GITHUB_UPDATE_A_CODE_SCANNING_ALERT`

Updates a specific code scanning alert in a GitHub repository, primarily to change its state (e.g., 'open' or 'dismissed').

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string ("open" | "dismissed") | Yes | The new state for the code scanning alert. Must be either 'open' or 'dismissed'. If 'dismissed', `dismissed_reason` is mandatory. |
| `alert_number` | integer | Yes | The number that identifies an alert. Found in the alert's URL or the `number` field of the GET alerts API response. |
| `dismissed_reason` | string ("false positive" | "won't fix" | "used in tests") | No | The reason for dismissing or closing the alert. **Required if `state` is 'dismissed'.** |
| `dismissed_comment` | string | No | An optional comment to provide further context when dismissing an alert. Maximum 280 characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a commit comment

**Slug:** `GITHUB_UPDATE_A_COMMIT_COMMENT`

Changes the body of an existing commit comment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The new content of the comment. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive.  |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the comment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a custom organization role

**Slug:** `GITHUB_UPDATE_A_CUSTOM_ORGANIZATION_ROLE`

Updates an existing custom role in an organization by modifying its name, description, or permissions; at least one of these fields must be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `name` | string | No | New name for the custom role. Unchanged if omitted. |
| `role_id` | integer | Yes | Unique identifier of the custom organization role. |
| `base_role` | string | No | The system role from which this role inherits permissions. One of: 'none', 'read', 'triage', 'write', 'maintain', or 'admin'. Unchanged if omitted. |
| `description` | string | No | New short description for the role. Unchanged if omitted. |
| `permissions` | array | No | New list of GitHub organization permissions for the role, replacing existing ones. An empty list removes all permissions. Unchanged if omitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a deployment branch policy

**Slug:** `GITHUB_UPDATE_A_DEPLOYMENT_BRANCH_POLICY`

Updates the name pattern of an existing deployment branch policy for a specific environment in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The new name pattern that branches must match to deploy to this environment. Wildcard characters (`*`) can be used but will not match `/`. For example, to match branches that begin with `release/` and contain an additional single slash, use `release/*/*`. For more information about pattern matching syntax, refer to the Ruby File.fnmatch documentation (https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch). |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `branch_policy_id` | integer | Yes | The unique identifier of the deployment branch policy to be updated. |
| `environment_name` | string | Yes | The name of the deployment environment. This name must be URL-encoded if it contains special characters such as slashes (e.g., replace `/` with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a discussion

**Slug:** `GITHUB_UPDATE_A_DISCUSSION`

Updates the title and/or body of a specific team discussion within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `body` | string | No | The new body text for the discussion post. Supports markdown formatting. Only provide this if you want to change the body content. |
| `title` | string | No | The new title for the discussion post. Only provide this if you want to change the title. |
| `team_slug` | string | Yes | The slug of the team name. |
| `discussion_number` | integer | Yes | The unique number that identifies the discussion within the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a discussion comment

**Slug:** `GITHUB_UPDATE_A_DISCUSSION_COMMENT`

Updates the body of a comment in a team's discussion within an organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This is not case sensitive. |
| `body` | string | Yes | The new body text for the discussion comment. Supports GitHub Flavored Markdown. |
| `team_slug` | string | Yes | The slug of the team name. This is the team name converted to lowercase with spaces replaced by hyphens (e.g., 'justice-league'). |
| `comment_number` | integer | Yes | The unique number identifying the comment within the discussion. |
| `discussion_number` | integer | Yes | The unique number identifying the discussion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a gist

**Slug:** `GITHUB_UPDATE_A_GIST`

Updates a gist's description, and/or its files (including content, filename changes, or deletion).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `files` | string | No | Specifies changes to gist files as a JSON string. Keys are current filenames (e.g., `hello.py`). For each file: update `content`, assign a new `filename` to rename (or both). To delete a file, set its value to `null` or an object without `content` or `filename`. Files not mentioned are preserved. |
| `gist_id` | string | Yes | The unique identifier of the gist to be updated. |
| `description` | string | No | A new description for the gist. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a gist comment

**Slug:** `GITHUB_UPDATE_A_GIST_COMMENT`

Updates an existing comment on a specified gist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The new text content for the comment. Supports Markdown formatting. |
| `gist_id` | string | Yes | The unique identifier of the gist. This is typically a 32-character hexadecimal string found in the gist URL. |
| `comment_id` | integer | Yes | The unique numeric identifier of the comment to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a label

**Slug:** `GITHUB_UPDATE_A_LABEL`

Updates an existing label's name, color, or description within a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Current name of the label to be updated; value is not case-sensitive. |
| `repo` | string | Yes | Name of the repository, without the .git extension; value is not case-sensitive. |
| `color` | string | No | Hexadecimal color code for the label, without the leading '#' (e.g., 'f29513'). |
| `owner` | string | Yes | Account owner of the repository; value is not case-sensitive. |
| `new_name` | string | No | New name for the label (not case-sensitive). Emoji can be added using native characters or colon-style markup (e.g., ':strawberry:'). Refer to GitHub's emoji cheat sheet for a full list of codes. |
| `description` | string | No | Short description for the label (max 100 characters). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a milestone

**Slug:** `GITHUB_UPDATE_A_MILESTONE`

Updates a milestone in a repository, identified by `owner`, `repo`, and `milestone_number`, by allowing modification of its `title`, `state`, `description`, or `due_on`; at least one of these four attributes must be provided to perform an update.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username of the account that owns the repository. This field is not case-sensitive. |
| `state` | string ("open" | "closed") | No | The new state of the milestone. If not provided, the state will remain unchanged. Defaults to 'open'. |
| `title` | string | No | The new title for the milestone. If not provided, the title will remain unchanged. |
| `due_on` | string | No | The milestone due date in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. If not provided, the due date will remain unchanged. To remove the due date, pass an empty string or `null`. |
| `description` | string | No | A new description for the milestone. If not provided, the description will remain unchanged. |
| `milestone_number` | integer | Yes | The unique number that identifies the milestone. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an environment variable

**Slug:** `GITHUB_UPDATE_AN_ENVIRONMENT_VARIABLE`

Updates an existing environment variable's name and/or value in a specific GitHub repository environment; requires providing either a new name or a new value.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Current name of the environment variable to update. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `value` | string | No | New value for the environment variable; if omitted, the value is not changed. |
| `new_name` | string | No | New name for the environment variable. If provided, the variable will be renamed to this value. If omitted, the name remains unchanged. |
| `environment_name` | string | Yes | The name of the environment. The name must be URL encoded (e.g., replace slashes `/` with `%2F`). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an issue

**Slug:** `GITHUB_UPDATE_AN_ISSUE`

Updates an existing GitHub issue's title, body, state, milestone, labels, or assignees; `state_reason` is only processed if `state` also changes, and use `null` or `[]` to clear applicable fields.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | New issue body; send `null` to clear, omit to leave unchanged. |
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Owner of the repository (case-insensitive). |
| `state` | string ("open" | "closed") | No | New issue state; omit to leave unchanged. |
| `title` | string | No | New issue title; send `null` to clear, omit to leave unchanged. |
| `labels` | array | No | Replaces all existing labels. Send `[]` to remove all; omit to leave unchanged. Requires push access for changes. |
| `assignee` | string | No | DEPRECATED: Username to assign; use `assignees`. Send `null` to unassign, omit to leave unchanged. |
| `assignees` | array | No | Replaces all existing assignees. Send `[]` to remove all; omit to leave unchanged. Requires push access for changes. |
| `milestone` | string | No | Milestone ID (as string) or title. Send `null` to clear; omit to leave unchanged. Numeric ID recommended. |
| `issue_number` | integer | Yes | Unique number identifying the issue. |
| `state_reason` | string ("completed" | "not_planned" | "reopened") | No | Reason for state change, considered only if `state` also changes. Valid reasons depend on the new `state`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an issue comment

**Slug:** `GITHUB_UPDATE_AN_ISSUE_COMMENT`

Updates an existing comment on an issue or pull request within a specified repository. You can only update comments that the authenticated user has permission to edit. The comment_id can be obtained from the list_issue_comments or get_an_issue_comment actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | New content for the issue comment (GitHub Flavored Markdown supported). |
| `repo` | string | Yes | Name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username of the account owning the repository (not case-sensitive). |
| `comment_id` | integer | Yes | Unique ID of the issue comment to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an organization

**Slug:** `GITHUB_UPDATE_AN_ORGANIZATION`

Updates an organization's settings; changing security-related fields requires admin, owner, or security manager permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's unique, case-insensitive identifier. |
| `blog` | string | No | URL of the organization's blog. |
| `name` | string | No | Display name. |
| `email` | string | No | Publicly visible email address. |
| `company` | string | No | Company name. |
| `location` | string | No | Geographical location. |
| `description` | string | No | Short description. |
| `billing_email` | string | No | Billing email address (not publicly visible). |
| `twitter_username` | string | No | Twitter username. |
| `has_repository_projects` | boolean | No | Whether repository-level projects can be used within the organization. |
| `members_can_create_pages` | boolean | No | Whether members can create GitHub Pages sites. Does not affect existing sites. |
| `has_organization_projects` | boolean | No | Whether organization-level projects can be used. |
| `web_commit_signoff_required` | boolean | No | Whether web interface commits require sign-off. |
| `default_repository_permission` | string ("read" | "write" | "admin" | "none") | No | Default permission for members on organization repositories. |
| `members_can_create_public_pages` | boolean | No | Whether members can create public GitHub Pages sites. Does not affect existing sites. |
| `members_can_create_repositories` | boolean | No | Whether non-admin members can create repositories. Overridden by `members_allowed_repository_creation_type`. |
| `members_can_create_private_pages` | boolean | No | Whether members can create private GitHub Pages sites. Does not affect existing sites. |
| `members_can_fork_private_repositories` | boolean | No | Whether members can fork private repositories of the organization. |
| `members_can_create_public_repositories` | boolean | No | Whether members can create public repositories. |
| `members_can_create_private_repositories` | boolean | No | Whether members can create private repositories. |
| `members_allowed_repository_creation_type` | string ("all" | "private" | "none") | No | Types of repositories non-admin members can create. `private` option only on GitHub Enterprise Cloud. Deprecated; overrides `members_can_create_repositories`. |
| `members_can_create_internal_repositories` | boolean | No | Whether members can create internal repositories. Only for organizations in an enterprise account. |
| `secret_scanning_push_protection_custom_link` | string | No | URL displayed if `secret_scanning_push_protection_custom_link_enabled` is true and a push is blocked. |
| `secret_scanning_enabled_for_new_repositories` | boolean | No | Automatically enable secret scanning for new repositories. |
| `dependency_graph_enabled_for_new_repositories` | boolean | No | Automatically enable dependency graph for new repositories. |
| `advanced_security_enabled_for_new_repositories` | boolean | No | Automatically enable GitHub Advanced Security for new repositories. |
| `dependabot_alerts_enabled_for_new_repositories` | boolean | No | Automatically enable Dependabot alerts for new repositories. |
| `secret_scanning_push_protection_custom_link_enabled` | boolean | No | Show custom link to contributors blocked by secret scanning push protection. |
| `dependabot_security_updates_enabled_for_new_repositories` | boolean | No | Automatically enable Dependabot security updates for new repositories. |
| `secret_scanning_push_protection_enabled_for_new_repositories` | boolean | No | Automatically enable secret scanning push protection for new repositories. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an organization variable

**Slug:** `GITHUB_UPDATE_AN_ORGANIZATION_VARIABLE`

Updates an existing GitHub Actions organization variable's name, value, or visibility (`all`, `private`, `selected`), requiring `selected_repository_ids` with valid repository IDs if visibility is `selected`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name. The name is not case sensitive. |
| `name` | string | Yes | The current name of the organization variable to be updated. This name is case-sensitive. |
| `value` | string | No | Optional: The new value for the organization variable. If provided, the variable's value will be updated. If omitted or null, the current value is preserved. |
| `new_name` | string | No | Optional: The new name for the organization variable. If provided, the variable will be renamed. If omitted or null, the current name is preserved. |
| `visibility` | string ("all" | "private" | "selected") | No | Optional: Specifies the new visibility of the organization variable. Determines which repositories can access this variable: 'all' (all repositories), 'private' (only private repositories), or 'selected' (specific repositories). When set to 'selected', you must also provide `selected_repository_ids`. If omitted or null, visibility remains unchanged. |
| `selected_repository_ids` | array | No | Optional: A list of repository IDs (integers) that can access this organization variable. Required when `visibility` is set to 'selected'. Ignored for other visibility values. If omitted when visibility='selected', the API may reject the request or use existing repository access list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an organization webhook

**Slug:** `GITHUB_UPDATE_AN_ORGANIZATION_WEBHOOK`

Updates the configuration (URL, content type, secret, SSL verification), subscribed events, active status, or name of an existing webhook for a specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The name of the organization. This value is not case-sensitive. |
| `name` | string | No | Must be passed as 'web' for organization webhooks. This is a fixed value required by the GitHub API. |
| `active` | boolean | No | Set to `true` to send notifications, or `false` to disable them. |
| `events` | array | No | List of events that trigger this webhook. Use `['*']` to subscribe to all events. See GitHub docs for available event types. |
| `hook_id` | integer | Yes | The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery. |
| `config__url` | string | No | Target URL for webhook payloads. Required if updating other `config` properties (e.g., `content_type`, `secret`), as GitHub mandates `url` when `config` is modified. |
| `config__secret` | string | No | Secret key for HMAC digest to ensure payload integrity. Refer to GitHub documentation on delivery headers for details. |
| `config__content__type` | string | No | Media type for serializing payloads (`json` or `form`). The API defaults to `form` if this field is not provided. |
| `config__insecure__ssl` | string | No | Controls SSL certificate verification for payload delivery. Set to '1' to skip verification (insecure), or '0' to enforce (API default). Use with caution. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a project

**Slug:** `GITHUB_UPDATE_A_PROJECT`

Updates an existing GitHub project (V2) attributes like title, description, visibility, and state. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects (classic) REST API was sunset on April 1, 2025. The project is identified by its number (visible in the project URL) and owner (either a username or organization name). If no owner is specified, the authenticated user is assumed. At least one field to update must be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | No | The organization that owns the project. If provided, this takes precedence over username. |
| `title` | string | No | The new title for the project. If not provided, the title will not be changed. |
| `closed` | boolean | No | Sets whether the project is closed. `True` closes the project, `False` reopens it. If not provided, the state will not be changed. |
| `public` | boolean | No | Sets the visibility of the project. `True` makes it public (visible to everyone), `False` makes it private. If not provided, the visibility will not be changed. |
| `readme` | string | No | The project's README content (supports Markdown formatting). If not provided, the README will not be changed. |
| `username` | string | No | The GitHub username who owns the project. If not provided, defaults to the authenticated user. |
| `project_number` | integer | Yes | The project's sequential number (e.g., 1, 2, 3). This is displayed in the project URL as https://github.com/users/{username}/projects/{project_number}. |
| `short_description` | string | No | A short description for the project (displayed in project cards and listings). If not provided, the description will not be changed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a pull request

**Slug:** `GITHUB_UPDATE_A_PULL_REQUEST`

Updates an existing pull request, allowing changes to attributes like title, body, state, base branch, and maintainer modification settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `base` | string | No | The name of the branch to which you want your changes pulled. This must be an existing branch in the current repository. Cannot update the base branch to point to another repository. If None, the base branch remains unchanged. |
| `body` | string | No | The new contents of the pull request. To remove the body, pass an empty string. If None, the body remains unchanged. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `state` | string ("open" | "closed") | No | The new state of the pull request. Can be 'open' or 'closed'. If None, the state remains unchanged. |
| `title` | string | No | The new title for the pull request. If None, the title remains unchanged. |
| `pull_number` | integer | Yes | The unique number that identifies the pull request within the repository. |
| `maintainer_can_modify` | boolean | No | Indicates whether [maintainers can modify](https://docs.github.com/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork/) the pull request. If None, this setting remains unchanged. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a pull request branch

**Slug:** `GITHUB_UPDATE_A_PULL_REQUEST_BRANCH`

Updates an open pull request's head branch by merging the latest changes from its base branch, if mergeable and repository merging is enabled; operates asynchronously.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Account owner of the repository (not case-sensitive). |
| `pull_number` | integer | Yes | Unique number identifying the pull request. |
| `expected_head_sha` | string | No | SHA of the expected head commit of the pull request's branch. If this SHA does not match the actual head SHA, the request fails (422 error), ensuring the branch was not updated unexpectedly. If omitted, the API uses the current head SHA of the branch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a reference

**Slug:** `GITHUB_UPDATE_A_REFERENCE`

Updates an existing Git reference (e.g., a branch or tag) to point to a specific commit SHA. By default, only allows fast-forward updates (where the new commit is a descendant of the current one). Set `force=true` to allow non-fast-forward updates that rewrite history. IMPORTANT: The reference must already exist - use 'Create a reference' action to create new refs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The name of the Git reference to update WITHOUT the 'refs/' prefix. For branches: use 'heads/<branch-name>' (e.g., 'heads/main', 'heads/feature-branch'). For tags: use 'tags/<tag-name>' (e.g., 'tags/v1.0.0'). Note: Branch references require 'heads/' (plural), not 'head/' (singular). Bare branch names will be automatically prefixed with 'heads/'. The reference must already exist - this endpoint only updates existing refs. |
| `sha` | string | Yes | The SHA1 commit hash to point this reference to. Must be exactly 40 hexadecimal characters (0-9, a-f) representing a valid commit that exists in the repository. |
| `repo` | string | Yes | Repository name, excluding `.git` extension (case-insensitive). |
| `force` | boolean | No | Controls whether to allow non-fast-forward updates. When `false` (default), the new commit must be a direct descendant of the current commit (fast-forward only) - this prevents accidental history rewriting. When `true`, allows moving the reference to any commit, even if it means rewriting history or moving backward. Set to `true` only when you need to force-push changes, reset a branch, or intentionally rewrite commit history. |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a release

**Slug:** `GITHUB_UPDATE_A_RELEASE`

Updates an existing release in a GitHub repository, allowing modification of its attributes; if linking a discussion, the `discussion_category_name` must refer to an existing category in the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Text describing the contents of the release. Supports GitHub Flavored Markdown. |
| `name` | string | No | The title of the release. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `draft` | boolean | No | Set to `true` to mark the release as a draft, or `false` to publish it. Default: `false`. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `tag_name` | string | No | The name of the tag. This can be an existing tag or a new tag name. |
| `prerelease` | boolean | No | Set to `true` to identify the release as a pre-release, or `false` for a full release. Default: `false`. |
| `release_id` | integer | Yes | The unique identifier of the release to be updated. |
| `make_latest` | string ("true" | "false" | "legacy") | No | Specifies whether this release should be set as the latest release for the repository. Accepts 'true', 'false', or 'legacy'. Drafts and pre-releases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version. |
| `target_commitish` | string | No | Specifies the commitish value (e.g., branch name or commit SHA) that determines where the Git tag is created from. Can be any branch or commit SHA. This parameter is unused if the Git tag specified by `tag_name` already exists. Defaults to the repository's default branch if omitted. |
| `discussion_category_name` | string | No | If specified, a discussion of this category is created and linked to the release. The category must already exist in the repository. This parameter is ignored if a discussion is already linked to the release. For more information, see "[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository)." |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a release asset

**Slug:** `GITHUB_UPDATE_A_RELEASE_ASSET`

Updates the name, label, or state of a release asset in a GitHub repository, requiring at least one of these properties to be provided for modification.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The new file name for the asset. This updates the display name of the asset. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. The name is not case sensitive. |
| `label` | string | No | An alternate short description for the asset. This is used in place of the filename if provided, offering a more descriptive label. |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `state` | string | No | The new state of the release asset. While the GitHub API documentation primarily shows 'state' in responses (e.g., 'uploaded'), this field allows attempting to update it. The effect and accepted values might be specific. |
| `asset_id` | integer | Yes | The unique identifier of the release asset to be updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a repository

**Slug:** `GITHUB_UPDATE_A_REPOSITORY`

Updates settings for an existing GitHub repository, such as name, description, visibility, merge strategies, and security configurations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | New name for the repository (not case-sensitive). |
| `repo` | string | Yes | ACTUAL name of an existing repository, without the `.git` extension (not case-sensitive). MUST be a real repository that exists and is accessible - placeholder values like 'your-repo-name' will cause 404 errors. |
| `owner` | string | Yes | ACTUAL GitHub username or organization name that owns the repository (not case-sensitive). MUST be a real, existing account - placeholder values like 'your-username' will cause 404 errors. |
| `private` | boolean | No | Whether the repository is private. IMPORTANT: Public forks cannot be made private - this is a GitHub platform restriction. Changing visibility may also be restricted by organization policies. |
| `archived` | boolean | No | Archives the repository (making it read-only) or unarchives it. |
| `has_wiki` | boolean | No | Enables the GitHub Wiki. |
| `homepage` | string | No | URL of the project's homepage. |
| `has_issues` | boolean | No | Enables GitHub Issues for this repository. |
| `visibility` | string ("public" | "private") | No | Repository visibility. IMPORTANT: Public forks cannot be made private - this is a GitHub platform restriction. |
| `description` | string | No | Brief summary of the repository. |
| `is_template` | boolean | No | Designates this repository as a template repository. |
| `has_projects` | boolean | No | Enables GitHub Projects. Note: Organization settings might override this and cause an error if projects are disabled organization-wide. |
| `allow_forking` | boolean | No | Allows private forks of this repository. IMPORTANT: This setting can ONLY be changed for organization-owned repositories. Attempting to set this for user-owned repositories will result in a 422 error. Omit this field if you don't want to change the forking setting. |
| `default_branch` | string | No | Name of the default branch. |
| `allow_auto_merge` | boolean | No | Enables auto-merge for pull requests. |
| `allow_merge_commit` | boolean | No | Allows merging pull requests via merge commits. |
| `allow_rebase_merge` | boolean | No | Allows rebase-merging pull requests. |
| `allow_squash_merge` | boolean | No | Allows squash-merging pull requests. |
| `merge_commit_title` | string ("PR_TITLE" | "MERGE_MESSAGE") | No | Default title for merge commits: 'PR_TITLE' or 'MERGE_MESSAGE'. CONSTRAINT: If set to 'PR_TITLE', merge_commit_message must be 'PR_BODY' or 'BLANK'. If set to 'MERGE_MESSAGE', merge_commit_message must be blank/unset. |
| `allow_update_branch` | boolean | No | Allows updating a pull request's head branch from the base branch if not strictly required for merging. |
| `merge_commit_message` | string ("PR_BODY" | "PR_TITLE" | "BLANK") | No | Default message for merge commits: 'PR_BODY', 'PR_TITLE', or 'BLANK'. CONSTRAINT: If merge_commit_title is 'PR_TITLE', this must be 'PR_BODY' or 'BLANK'. Cannot be set when merge_commit_title is 'MERGE_MESSAGE'. |
| `delete_branch_on_merge` | boolean | No | Automatically deletes head branches after merging pull requests. |
| `squash_merge_commit_title` | string ("PR_TITLE" | "COMMIT_OR_PR_TITLE") | No | Default title for squash merge commits: 'PR_TITLE' or 'COMMIT_OR_PR_TITLE'. |
| `squash_merge_commit_message` | string ("PR_BODY" | "COMMIT_MESSAGES" | "BLANK") | No | Default message for squash merge commits: 'PR_BODY', 'COMMIT_MESSAGES', or 'BLANK'. |
| `web_commit_signoff_required` | boolean | No | Requires contributors to sign off on web-based commits. |
| `use_squash_pr_title_as_default` | boolean | No | DEPRECATED: Use `squash_merge_commit_title`. If true, squash merge commits use PR title; otherwise, commit message. |
| `security__and__analysis__secret__scanning__status` | string | No | Manages secret scanning. Set to 'enabled' or 'disabled'. |
| `security__and__analysis__advanced__security__status` | string | No | Manages GitHub Advanced Security. Set to 'enabled' or 'disabled'. |
| `security__analysis__secret__scanning__push__protection__status` | string | No | Manages secret scanning push protection. Set to 'enabled' or 'disabled'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a repository invitation

**Slug:** `GITHUB_UPDATE_A_REPOSITORY_INVITATION`

Updates an active repository invitation to modify the invited user's permissions; the specified repository and invitation must exist.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., a username or organization name). This name is not case sensitive. |
| `permissions` | string ("read" | "write" | "maintain" | "triage" | "admin") | No | The new permissions to grant the invited user on the repository. |
| `invitation_id` | integer | Yes | The unique identifier of the repository invitation to be updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a repository ruleset

**Slug:** `GITHUB_UPDATE_A_REPOSITORY_RULESET`

Updates an existing repository ruleset, identified by `ruleset_id` for a given repository, allowing partial updates to its configuration such as name, target, enforcement, bypass actors, conditions, and rules.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The new name for the ruleset. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `rules` | string | No | String representing rules to enforce. Each rule has a `type` and optional `parameters` (e.g., `[{'type': 'creation'}, {'type': 'pull_request', 'parameters': {'required_approving_review_count': 2}}]`). Accepts both JSON format with double quotes or Python list syntax with single quotes. Refer to GitHub API documentation for available rule types and their parameters. |
| `target` | string ("branch" | "tag") | No | The target of the ruleset (e.g., branch or tag). |
| `ruleset_id` | integer | Yes | The unique identifier of the existing ruleset to be updated. |
| `enforcement` | string ("disabled" | "active" | "evaluate") | No | Specifies the enforcement level: `disabled` (ruleset is ignored), `active` (ruleset is enforced), or `evaluate` (allows testing rules before enforcement - GitHub Enterprise only). |
| `bypass_actors` | string | No | String representing actors that can bypass ruleset. Each actor specifies `actor_id`, `actor_type` (`RepositoryRole`, `Team`, `Integration`, `OrganizationAdmin`), and `bypass_mode` (`always`, `pull_request`). Accepts both JSON format with double quotes or Python list syntax with single quotes. Example: `[{'actor_id': 1, 'actor_type': 'RepositoryRole', 'bypass_mode': 'always'}]`. |
| `conditions__ref__name__exclude` | array | No | Ref names or patterns (fnmatch-style globs) to exclude. The ruleset will not apply if any of these patterns match. |
| `conditions__ref__name__include` | array | No | Ref names or patterns (fnmatch-style globs) to include for the ruleset to apply. `~DEFAULT_BRANCH` targets the default branch; `~ALL` targets all branches. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a repository variable

**Slug:** `GITHUB_UPDATE_A_REPOSITORY_VARIABLE`

Updates the name and/or value of an existing GitHub Actions variable in a repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The current name of the Actions variable to update (path parameter). Variable names are case-insensitive and can only contain alphanumeric characters or underscores. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension; case-insensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., GitHub username or organization name); case-insensitive. |
| `value` | string | No | The new value for the Actions variable. If omitted, the current value is retained. Must be a non-empty string if provided. You must provide either new_name or value (or both). |
| `new_name` | string | No | Optional new name for the variable. If provided, renames the variable. Can only contain alphanumeric characters or underscores; cannot start with GITHUB_ prefix. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a repository webhook

**Slug:** `GITHUB_UPDATE_A_REPOSITORY_WEBHOOK`

Updates the URL, content type, secret, SSL verification, events, or active status for an existing repository webhook, specified by `owner`, `repo`, and `hook_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | Username or organization name of the repository owner (not case-sensitive). |
| `active` | boolean | No | Set `true` if active and sending notifications, `false` otherwise. |
| `events` | array | No | List of events to trigger the webhook, completely replacing existing ones (see GitHub webhook event payloads docs). |
| `hook_id` | integer | Yes | Unique identifier of the webhook (found in `X-GitHub-Hook-ID` header of a delivery). |
| `add_events` | array | No | Events to add to current subscriptions. |
| `config__url` | string | No | New URL for webhook payload delivery. |
| `remove_events` | array | No | Events to remove from current subscriptions. |
| `config__secret` | string | No | Optional secret for HMAC digest of delivery signature headers (see GitHub docs). |
| `config__content__type` | string | No | Media type for serializing payloads ('json' or 'form'). |
| `config__insecure__ssl` | string | No | Set to '1' to disable SSL verification (insecure), '0' to enable. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a team

**Slug:** `GITHUB_UPDATE_A_TEAM`

Updates a team's settings (e.g., name, description, privacy, parent team) within a GitHub organization, identified by its slug and organization name.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization's name (case-insensitive). This is a required path parameter. |
| `name` | string | No | New display name for the team. |
| `privacy` | string ("secret" | "closed" | "public") | No | The desired privacy level for the team. Editing teams without specifying this parameter leaves `privacy` intact. When a team is nested, the `privacy` for parent teams cannot be `secret`.   - For a non-nested team:     - `secret`: Visible only to organization owners and members of this team.     - `closed`: Visible to all members of this organization.     - `public`: Visible to all members of this organization (equivalent to `closed`).   - For a parent or child team:     - `closed`: Visible to all members of this organization.     - `public`: Visible to all members of this organization (equivalent to `closed`). |
| `team_slug` | string | Yes | The team's unique slug identifier (typically URL-friendly version of team name). This is a required path parameter. |
| `permission` | string ("pull" | "push" | "admin") | No | **Deprecated**. Default permission (pull, push, or admin) for new repositories added to this team. This may be removed in future versions. |
| `description` | string | No | New team description; an empty string clears the existing description. |
| `parent_team_id` | integer | No | The unique identifier (ID) of an existing team to set as this team's parent. This establishes a nested team structure. To remove an existing parent team relationship and make this a top-level team, explicitly pass `null` for this field (e.g., by setting this parameter to Python `None`). If this parameter is not provided in the request, the current parent team, if any, remains unchanged. |
| `notification_setting` | string ("notifications_enabled" | "notifications_disabled") | No | The notification setting the team has chosen. Editing teams without specifying this parameter leaves `notification_setting` intact.   - `notifications_enabled`: Team members receive notifications when the team is @mentioned.   - `notifications_disabled`: No one receives notifications for team @mentions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update branch protection

**Slug:** `GITHUB_UPDATE_BRANCH_PROTECTION`

Updates the protection settings for an existing branch in a repository, which must not contain wildcard characters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `branch` | string | Yes | Name of the branch to protect; wildcard characters are not allowed (use GraphQL API for wildcard support). |
| `lock_branch` | boolean | No | If `True`, sets the branch to read-only, preventing pushes. |
| `enforce_admins` | boolean | No | Enforces configured restrictions for repository administrators. Set to `True` to enforce for admins, or `None`/`null` to disable. |
| `allow_deletions` | boolean | No | Allows deletion of the protected branch. |
| `block_creations` | boolean | No | If `True`, push restrictions also apply to creating matching new branches, unless pusher has explicit push access. |
| `allow_force_pushes` | boolean | No | Permits force pushes to the protected branch. Set to `True` to allow, `None`/`null` to block. |
| `allow_fork_syncing` | boolean | No | Allows users to pull upstream changes into their fork when the branch is locked. |
| `restrictions__apps` | array | No | App `slug`s with push access. Cannot be used with `restrictions_users` or `restrictions_teams`. Empty list removes all. |
| `restrictions__teams` | array | No | Team `slug`s with push access. Cannot be used with `restrictions_apps` or `restrictions_users`. Empty list removes all. |
| `restrictions__users` | array | No | User `login`s with push access. Cannot be used with `restrictions_apps` or `restrictions_teams`. Empty list removes all. |
| `required_linear_history` | boolean | No | Enforces linear commit history by preventing merge commits. Repository must allow squash or rebase merging. |
| `required__status__checks__checks` | array | No | List of status checks required to merge. Each check object needs a `context` string and optionally an `app_id` integer. **Mutually exclusive with `contexts`** - use one or the other, not both. |
| `required__status__checks__strict` | boolean | No | Require branches to be up to date with the base branch before merging; if `True`, merges are blocked if the head branch is behind the base branch. |
| `required_conversation_resolution` | boolean | No | Requires all conversations on code to be resolved before merging a pull request. |
| `required__status__checks__contexts` | array | No | **Deprecated**: List of status check contexts required to merge. If set by a GitHub App, future checks must come from that app. Use `checks` for finer control. **Mutually exclusive with `checks`** - use one or the other, not both. |
| `required__pull__request__reviews__dismiss__stale__reviews` | boolean | No | If `True`, new commits dismiss previous review approvals on a pull request branch. |
| `required__pull_request__reviews__approving__review__count` | integer | No | Number of approving reviews (0-6) required to merge a pull request; 0 disables. |
| `required__pull_request__reviews__bypass__allowances__apps` | array | No | App `slug`s allowed to bypass pull request requirements. Empty list removes all. |
| `required__pull_request__reviews__bypass__allowances__teams` | array | No | Team `slug`s allowed to bypass pull request requirements. Empty list removes all. |
| `required__pull_request__reviews__bypass__allowances__users` | array | No | User `login`s allowed to bypass pull request requirements. Empty list removes all. |
| `required__pull_request__reviews__dismiss__restrictions__apps` | array | No | App `slug`s allowed to dismiss pull request reviews. Empty list removes all. |
| `required__pull_request__reviews__dismiss__restrictions__teams` | array | No | Team `slug`s allowed to dismiss pull request reviews. Empty list removes all. |
| `required__pull_request__reviews__dismiss__restrictions__users` | array | No | User `login`s allowed to dismiss pull request reviews. Empty list removes all. |
| `required__pull_request__reviews__require__code__owner__reviews` | boolean | No | If `True`, pull requests affecting files with code owners must be reviewed by them. |
| `required__pull_request__reviews__require__last__push__approval` | boolean | No | If `True`, the most recent push must be approved by someone other than the pusher. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a code scanning default setup configuration

**Slug:** `GITHUB_UPDATE_CODE_SCANNING_DEFAULT_SETUP`

Updates the default setup configuration for code scanning in a repository; GitHub Advanced Security must be enabled for the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name (case-insensitive, without `.git` extension). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `state` | string ("configured" | "not-configured") | No | Specifies whether to enable ('configured') or disable ('not-configured') code scanning default setup. |
| `languages` | array | No | CodeQL languages for analysis; if omitted, all supported repository languages are analyzed. |
| `query_suite` | string ("default" | "extended") | No | CodeQL query suite to be used ('default' for curated, 'extended' for comprehensive queries). |
| `runner_type` | string ("standard" | "labeled" | "not_set") | No | Type of runner to use for code scanning. 'standard' uses GitHub-hosted runners, 'labeled' uses self-hosted runners with a specific label, 'not_set' resets to default. |
| `runner_label` | string | No | Label of the self-hosted runner to use when runner_type is 'labeled'. Ignored when runner_type is 'standard'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a codespace for the authenticated user

**Slug:** `GITHUB_UPDATE_CODESPACE`

Updates an existing GitHub Codespace's machine type, display name, or recent folders for the authenticated user; machine type changes take effect on the next start.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `machine` | string | No | Target machine type for the codespace; must be valid and available for the user or organization. |
| `display_name` | string | No | New display name for the codespace. |
| `codespace_name` | string | Yes | The unique name of the codespace to be updated (e.g., 'octocat-codespace-githu-org-name-abcdef12'). |
| `recent_folders` | array | No | Up to three recently opened folder paths (e.g., '/workspaces/project/src') to suggest which folder to load upon opening. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Git LFS Preference

**Slug:** `GITHUB_UPDATE_GIT_LFS_PREFERENCE`

Sets the Git Large File Storage (LFS) preference for a repository during a source import. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `use_lfs` | string ("opt_in" | "opt_out") | Yes | Specifies whether to store large files using Git LFS during the import. `opt_in` enables Git LFS, storing large files. `opt_out` disables Git LFS, removing large files during the import. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update issue type

**Slug:** `GITHUB_UPDATE_ISSUE_TYPE`

Update an existing issue type for a GitHub organization. Requires the authenticated user to be an organization administrator. OAuth tokens need admin:org scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). |
| `name` | string | Yes | The name of the issue type. |
| `color` | string ("gray" | "blue" | "green" | "yellow" | "orange" | "red" | "pink" | "purple") | No | The color of the issue type. |
| `is_enabled` | boolean | Yes | Whether the issue type is enabled at the organization level. |
| `description` | string | No | A short description of the issue type. |
| `issue_type_id` | integer | Yes | The unique identifier of the issue type to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a webhook configuration for an organization

**Slug:** `GITHUB_UPDATE_ORGANIZATION_WEBHOOK_CONFIGURATION`

Updates the configuration (URL, content type, secret, SSL verification) for an existing webhook within a specified organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (not case-sensitive). |
| `url` | string | No | The URL to which the webhook payloads will be delivered. |
| `secret` | string | No | Optional secret for HMAC hex digest in delivery signature headers. |
| `hook_id` | integer | Yes | Unique identifier of the webhook (from `X-GitHub-Hook-ID` header of a delivery). |
| `content_type` | string | No | Media type for serializing payloads (`json` or `form`). Defaults to `form`. |
| `insecure_ssl` | string | No | Set to `1` to disable SSL certificate verification for the webhook URL, or `0` to enable. Defaults to `0`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an existing project card (Classic - Deprecated)

**Slug:** `GITHUB_UPDATE_PROJECT_CARD`

Updates an existing project card's note and/or archived status (GitHub Classic Projects). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note` | string | No | New note content (supports GitHub Flavored Markdown). Use empty string or `null` to clear the note. If omitted, the note remains unchanged. |
| `card_id` | integer | Yes | The unique identifier of the project card to be updated. This ID must correspond to an existing classic project card. |
| `archived` | boolean | No | Archive status: `true` to archive the card, `false` to unarchive it. If omitted, the archived status remains unchanged. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update an existing project column (Classic - Deprecated)

**Slug:** `GITHUB_UPDATE_PROJECT_COLUMN`

Updates the name of an existing column, identified by `column_id`, in a GitHub project (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The new name for the project column. |
| `column_id` | integer | Yes | The unique identifier of the project column to be updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a review for a pull request

**Slug:** `GITHUB_UPDATE_PULL_REQUEST_REVIEW`

Updates the body text of an existing pull request review.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The new body text for the pull request review. This will replace the existing review body. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive.  |
| `owner` | string | Yes | The username of the account that owns the repository. This is case-insensitive. |
| `review_id` | integer | Yes | The unique identifier of the pull request review to be updated. |
| `pull_number` | integer | Yes | The number that uniquely identifies the pull request within the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a review comment for a pull request

**Slug:** `GITHUB_UPDATE_PULL_REQUEST_REVIEW_COMMENT`

Updates the body of an existing review comment on a pull request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | The new text of the pull request review comment. Must be a non-empty string. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This field is not case-sensitive. |
| `owner` | string | Yes | The username or organization name that owns the repository. This field is not case-sensitive. |
| `comment_id` | integer | Yes | The unique identifier of the pull request review comment to be updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update pull request review protection

**Slug:** `GITHUB_UPDATE_PULL_REQUEST_REVIEW_PROTECTION`

Updates pull request review protection settings (e.g., required approvals, review dismissal, bypass allowances) for a branch; branch protection features must be available for the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name, without the `.git` extension (case-insensitive). |
| `owner` | string | Yes | Account owner of the repository (case-insensitive). |
| `branch` | string | Yes | Branch name for protection rules (no wildcards; use GraphQL API for wildcards). |
| `dismiss_stale_reviews` | boolean | No | If `true`, new commits dismiss previous approving reviews; `false` keeps approvals valid. |
| `require_code_owner_reviews` | boolean | No | If `true`, pull requests affecting files with code owners require their review. See [about code owners](https://docs.github.com/articles/about-code-owners/). |
| `require_last_push_approval` | boolean | No | If `true`, the most recent push requires approval by someone other than the pusher (GitHub Enterprise feature). |
| `dismissal__restrictions__apps` | array | No | App `slug`s permitted to dismiss pull request reviews. Empty list removes restrictions. |
| `dismissal__restrictions__teams` | array | No | Team `slug`s permitted to dismiss pull request reviews. Empty list removes restrictions. |
| `dismissal__restrictions__users` | array | No | User `login`s permitted to dismiss pull request reviews. Empty list removes restrictions. |
| `required_approving_review_count` | integer | No | Number of approving reviews (1-6) required for merging; 0 to disable. |
| `bypass__pull__request__allowances__apps` | array | No | App `slug`s allowed to bypass pull request requirements. Empty list removes allowances. |
| `bypass__pull__request__allowances__teams` | array | No | Team `slug`s allowed to bypass pull request requirements. Empty list removes allowances. |
| `bypass__pull__request__allowances__users` | array | No | User `login`s allowed to bypass pull request requirements. Empty list removes allowances. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update repository preferences for check suites

**Slug:** `GITHUB_UPDATE_REPOSITORY_PREFERENCES_FOR_CHECK_SUITES`

Updates repository preferences for automatic Check Suite creation on code pushes, allowing configuration for specific GitHub Apps that must be installed on the repository with `checks:write` permission.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. The name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository (e.g., username or organization). The name is not case sensitive. |
| `auto_trigger_checks` | string | No | A list of preference objects as a JSON string for configuring automatic CheckSuite creation for specific GitHub Apps. Each object in the list must contain an `app_id` (integer: the ID of the GitHub App) and a `setting` (boolean: `true` to enable automatic triggers for that app on code push, `false` to disable). Example: '[{"app_id": 12345, "setting": true}]' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update a webhook configuration for a repository

**Slug:** `GITHUB_UPDATE_REPOSITORY_WEBHOOK_CONFIGURATION`

Updates the configuration (e.g., payload URL, content type, secret, SSL verification) for an existing webhook in a specified repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | No | The URL to which webhook payloads will be delivered. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension (not case-sensitive). |
| `owner` | string | Yes | The account owner of the repository (not case-sensitive). |
| `secret` | string | No | Optional secret for generating an HMAC hex digest of the payload, included in the `X-Hub-Signature-256` header to verify authenticity. |
| `hook_id` | integer | Yes | Unique identifier of the webhook, typically found in the `X-GitHub-Hook-ID` header of a webhook delivery. |
| `content_type` | string | No | Media type for payload serialization (e.g., `json`, `form`). GitHub defaults to `form` if this field is not provided. |
| `insecure_ssl` | string | No | Specifies SSL certificate verification: '0' for enabled (default behavior if omitted), '1' for disabled (not recommended). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update resource access with tokens

**Slug:** `GITHUB_UPDATE_RESOURCE_ACCESS_WITH_TOKENS`

Revokes organization access for the personal access tokens identified by `pat_ids`; this action must be performed by a GitHub App, and `pat_ids` must be valid and associated with the organization. AUTHENTICATION REQUIREMENT: This endpoint requires GitHub App authentication with 'Personal access tokens' organization permissions (write). Standard personal access tokens CANNOT use this endpoint. The GitHub App must also have access to the organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | Organization name (case-insensitive). |
| `action` | string ("revoke") | Yes | Operation to perform on the fine-grained personal access tokens, resulting in removal of their access. |
| `pat_ids` | array | Yes | Fine-grained personal access token IDs for which access will be revoked. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update status check protection

**Slug:** `GITHUB_UPDATE_STATUS_CHECK_PROTECTION`

Updates required status checks for a branch, optionally requiring it to be up-to-date before merging.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case-sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case-sensitive. |
| `branch` | string | Yes | The name of the branch (required, cannot be null or empty). Wildcard characters are not allowed. To use wildcard characters in branch names, please use the GraphQL API. |
| `checks` | array | No | A list of status checks to require in order to merge into this branch. Each check object should have a `context` (string) and an optional `app_id` (integer). Example: `[{"context": "continuous-integration/jenkins", "app_id": 12345}]` |
| `strict` | boolean | No | Specifies whether to require branches to be up to date before merging. |
| `contexts` | array | No | **Deprecated**: A list of status checks to require in order to merge into this branch. If any of these checks were recently set by a particular GitHub App, they will be required to come from that app in the future for the branch to merge. For more fine-grained control, use `checks` instead of `contexts`. Can be provided as a single string or a list of strings. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Subscription

**Slug:** `GITHUB_UPDATE_SUBSCRIPTION`

Tool to update notification subscription state for issues, pull requests, or discussions. Use when you need to subscribe, unsubscribe, or ignore notifications for a specific GitHub item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `state` | string ("SUBSCRIBED" | "UNSUBSCRIBED" | "IGNORED") | Yes | The new subscription state. SUBSCRIBED: receive notifications for all activity. UNSUBSCRIBED: stop receiving notifications. IGNORED: never receive notifications even when mentioned. |
| `subscribableId` | string | Yes | The Node ID of the subscribable object (issue, pull request, discussion, etc.) to modify. This is a global GraphQL ID, not a repository-local number. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. Used for tracking and deduplication. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update the authenticated user

**Slug:** `GITHUB_UPDATE_THE_AUTHENTICATED_USER`

Updates the authenticated user's GitHub profile; a new public email must be verified, and existing private emails remain private even if specified.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `bio` | string | No | The new short biography for the user. Provide `null` to clear the existing bio. |
| `blog` | string | No | The new URL for the user's blog. Provide `null` to clear the existing blog URL. For example, 'https://github.blog'. |
| `name` | string | No | The new full name for the user. For example, 'Mona Lisa Octocat'. |
| `email` | string | No | The user's new publicly visible email address. This email must be verified on the user's GitHub account. If the provided email is not verified or not set to public, the update for this field might be ignored. |
| `company` | string | No | The new company affiliation for the user. Provide `null` to clear the existing company. For example, 'GitHub'. |
| `hireable` | boolean | No | Indicates whether the user is available for hire. Set to `true` if available, or `false` if not. |
| `location` | string | No | The new geographical location of the user. Provide `null` to clear the existing location. For example, 'San Francisco'. |
| `twitter_username` | string | No | The user's new Twitter username (without the leading '@'). Provide `null` to clear the existing Twitter username. For example, 'github'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Revoke Token Organization Access

**Slug:** `GITHUB_UPDATE_TOKEN_ORG_ACCESS`

Revokes a fine-grained personal access token's access to an organization. IMPORTANT: This endpoint can ONLY be called by GitHub Apps with 'Personal access tokens' organization permissions (write). Personal access tokens (PATs) cannot use this endpoint. Use GITHUB_LIST_ORG_RESOURCE_ACCESS_TOKENS to get valid pat_id values for tokens that have access to your organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `org` | string | Yes | The organization name (case-insensitive). The authenticated GitHub App must have 'Personal access tokens' organization permissions (write) for this organization. |
| `action` | string ("revoke") | No | The action to perform. Currently only 'revoke' is supported, which removes the token's access to the organization. |
| `pat_id` | integer | Yes | The unique numeric identifier of the fine-grained personal access token to revoke. Obtain this from the GITHUB_LIST_ORG_RESOURCE_ACCESS_TOKENS action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update User List

**Slug:** `GITHUB_UPDATE_USER_LIST`

Tool to update an existing GitHub user list. Use when you need to modify the name, description, or privacy settings of a user list.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The new name for the user list. Only provide if you want to change the name. |
| `list_id` | string | Yes | The unique ID of the user list to update. This is the GraphQL node ID (e.g., 'UL_kwDOCNqc1s4AbuJ8'). |
| `is_private` | boolean | No | Whether the list should be private. Set to true to make private, false to make public. Only provide if you want to change visibility. |
| `description` | string | No | The new description for the user list. Only provide if you want to change the description. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. Used for idempotency and tracking. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user lists for item

**Slug:** `GITHUB_UPDATE_USER_LISTS_FOR_ITEM`

Tool to update which of the viewer's lists an item belongs to on GitHub. Use when you need to add an item (repository, issue, pull request, etc.) to specific user lists or move it between lists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The global node ID of the item to add to the lists (e.g., 'R_kgDOKl1DMA' for a repository). This is the GraphQL global identifier returned by GitHub's API. |
| `list_ids` | array | Yes | The list of user list IDs that this item should belong to. The item will be added to these lists and removed from any other lists it previously belonged to. |
| `client_mutation_id` | string | No | A unique identifier for the client performing the mutation. This can be used to track the request. |
| `suggested_list_ids` | array | No | Optional list of suggested list IDs to create and add this item to. These lists will be created if they don't exist. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Project V2 Item for User

**Slug:** `GITHUB_UPDATE_USER_PROJECT_ITEM`

Tool to update a field value for an item in a user's GitHub ProjectV2. Use when you need to modify a field value of an existing project item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `value` | object | Yes | The value to set. Use {'text': 'value'} for text fields, {'number': 123} for number fields, {'singleSelectOptionId': 'option_id'} for single select, {'date': '2024-01-01'} for date fields, {'iterationId': 'iteration_id'} for iteration fields. |
| `itemId` | string | Yes | The global node ID of the project item to update (e.g., 'PVTI_lAHOCNqc1s4BN3oqzgldG_w'). |
| `fieldId` | string | Yes | The global node ID of the field to update (e.g., 'PVTSSF_lAHOCNqc1s4BN3oqzg8vTnA'). |
| `projectId` | string | Yes | The global node ID of the Project (e.g., 'PVT_kwHOCNqc1s4BN3oq'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Change User Status

**Slug:** `GITHUB_UPDATE_USER_STATUS`

Tool to update your status on GitHub. Use when you need to set or clear your GitHub profile status with an emoji, message, and availability indicator.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emoji` | string | No | The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :rocket:, :smiley:. If omitted, any existing emoji will be cleared. |
| `message` | string | No | A short description of your current status. Maximum 80 characters. If omitted, any existing message will be cleared. |
| `expiresAt` | string | No | If set, the user status will not be shown after this date. Must be a valid ISO 8601 datetime string (e.g., 2024-12-31T23:59:59Z). If omitted, the status will persist indefinitely. |
| `organizationId` | string | No | The global node ID of the organization whose members will be allowed to see the status. If omitted, the status will be publicly visible to everyone. Use this to limit status visibility to organization members only. |
| `clientMutationId` | string | No | A unique identifier for the client performing the mutation. This value will be returned in the response and can be used for request tracking or idempotency. |
| `limitedAvailability` | boolean | No | Whether this status should indicate you are not fully available on GitHub (e.g., you are away or busy). When true, shows a busy indicator. Defaults to false if omitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload a release asset

**Slug:** `GITHUB_UPLOAD_RELEASE_ASSET`

Tool to upload a binary asset to an existing GitHub release. Use when you need to attach files like installers or backups to a release programmatically.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | Repository name without the .git extension; not case sensitive. |
| `asset` | object | No | Binary file to upload as the release asset. Alternatively, you may omit this and use 'local_file_path'. |
| `label` | string | No | Short description for the asset; displayed instead of filename. |
| `owner` | string | Yes | Account owner of the repository; not case sensitive. |
| `release_id` | integer | Yes | Unique identifier of the release. The release must have a valid upload URL (i.e., not already finalized without one). Asset size must not exceed 2 GB. |
| `content_type` | string | Yes | Media type of the asset, for example 'application/zip'. |
| `local_file_path` | string | No | Absolute path to a local file to upload as the asset. If provided, the action will read raw bytes from this path instead of the file reference. After upload, retrieve the asset download URL and metadata from the structured response fields, not from stdout. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload an analysis as sarif data

**Slug:** `GITHUB_UPLOAD_SARIF_ANALYSIS`

Uploads a gzipped and Base64 encoded SARIF file to a GitHub repository for a specific commit and reference; use `checkout_uri` if SARIF paths are absolute.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | The full Git reference for the analysis, formatted as `refs/heads/<branch name>`, `refs/tags/<tag>`, `refs/pull/<number>/merge`, or `refs/pull/<number>/head`. |
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This is case-insensitive. |
| `owner` | string | Yes | The account owner of the repository. This is case-insensitive. |
| `sarif` | string | Yes | A Base64 encoded string of a gzipped SARIF file. For more information, see '[SARIF support for code scanning](https://docs.github.com/code-security/secure-coding/sarif-support-for-code-scanning)'. |
| `validate` | boolean | No | Specifies whether the uploaded SARIF file should be validated against the code scanning specifications. This is useful for integrators to ensure their SARIF files are correctly processed and rendered by GitHub. |
| `tool_name` | string | No | Name of the tool that generated the analysis. GitHub defaults this to "API" if omitted. A tool GUID in the SARIF can be used for filtering alerts. |
| `commit_sha` | string | Yes | The SHA of the commit to which the analysis you are uploading relates. Must be a 40-character Git SHA. |
| `started_at` | string | No | The timestamp indicating when the analysis run began, in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. |
| `checkout_uri` | string | No | The base URI of the checkout directory as it appears in the SARIF file. This property is used to convert absolute file paths to relative paths, enabling alerts to be correctly mapped to their location in the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update repository custom property values

**Slug:** `GITHUB_UPSERT_REPO_CUSTOM_PROPERTY_VALUES`

Creates or updates up to 30 custom property values for a repository; custom properties must be predefined at the organization or repository level, and setting a property's value to `null` removes it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `repo` | string | Yes | The name of the repository, without the `.git` extension. This name is not case sensitive. |
| `owner` | string | Yes | The account owner of the repository. This name is not case sensitive. |
| `properties` | string | Yes | A list of custom property objects as a JSON string to create or update for the repository. Each object in the list must contain `property_name` (string identifying the custom property) and `value` (the value for the property, which can be a string, number, or a single-select option, matching the property's defined type). Example: '[{"property_name": "environment", "value": "production"}]' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Verify dev container permissions accepted

**Slug:** `GITHUB_VERIFY_DEV_CONTAINER_PERMISSIONS_ACCEPTED`

Verifies if the authenticated user has accepted permissions for a specific devcontainer configuration in a repository, typically to ensure awareness before a codespace is created or used.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ref` | string | Yes | Git reference (branch, tag, or commit SHA) for the devcontainer configuration. |
| `repo` | string | Yes | Repository name, without `.git` extension (case-insensitive). |
| `owner` | string | Yes | Username of the repository owner (case-insensitive). |
| `devcontainer_path` | string | Yes | Path to the `devcontainer.json` file in the repository. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |


## Triggers

### New Workflow Artifact Created

**Slug:** `GITHUB_ARTIFACT_CREATED_TRIGGER`

**Type:** poll

Triggers when a new workflow artifact is created in a GitHub repository.

    Monitors for newly created GitHub Actions workflow artifacts. Optionally
    filters by artifact name to restrict monitoring to specific artifacts.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `name` | string | No | Optional artifact name filter. When set, only artifacts whose name exactly matches this value will be reported. Leave blank to monitor all artifacts in the repository. |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `archive_download_url` | string | Yes | URL to download the artifact as a zip archive. |
| `artifact_id` | integer | Yes | Unique numeric identifier of the newly created artifact. |
| `created_at` | string | Yes | ISO 8601 timestamp of when the artifact was created. |
| `digest` | string | No | SHA-256 digest of the artifact (only present for artifacts uploaded with upload-artifact v4 or later). |
| `event_type` | string | No | Type of event that occurred. |
| `expired` | boolean | Yes | Whether the artifact has expired and is no longer available. |
| `expires_at` | string | Yes | ISO 8601 timestamp of when the artifact will expire. |
| `name` | string | Yes | Name of the artifact. |
| `node_id` | string | Yes | GraphQL node ID of the artifact. |
| `owner` | string | Yes | Owner of the repository. |
| `repo` | string | Yes | Repository name. |
| `size_in_bytes` | integer | Yes | Size of the artifact in bytes. |
| `updated_at` | string | Yes | ISO 8601 timestamp of when the artifact was last updated. |
| `url` | string | Yes | API URL for the artifact. |
| `workflow_run` | object | No | Metadata about the workflow run that produced the artifact. |

### Branch Changed

**Slug:** `GITHUB_BRANCH_CHANGED_TRIGGER`

**Type:** poll

Triggers when a GitHub branch changes.

    Monitors a specific branch for:
    - New commits pushed (head commit SHA changes)
    - Protection status toggled (branch becomes protected or unprotected)
    - Protection settings changed, including: required status checks and their
      enforcement level, admin enforcement, required pull request reviews
      (dismiss stale reviews, code owner reviews, approving review count,
      last push approval), required linear history, force push allowance,
      deletion allowance, conversation resolution, branch locking, and fork
      syncing.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch` | string | Yes | The exact name of the branch to monitor (e.g. 'main' or 'develop').  The name is case-sensitive and must match exactly what is shown in the repository. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-service'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `branch` | string | Yes | Name of the monitored branch. |
| `changed_fields` | array | Yes | Names of the top-level fields that changed. |
| `current_snapshot` | object | Yes | Snapshot of the branch's tracked fields after the change. |
| `event_type` | string | No | Type of event that occurred. |
| `head_commit_sha` | string | Yes | The current head commit SHA of the branch. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_snapshot` | object | Yes | Snapshot of the branch's tracked fields before the change. |
| `protected` | boolean | Yes | Whether the branch is currently protected. |
| `repo` | string | Yes | Repository name. |

### New Branch Created

**Slug:** `GITHUB_BRANCH_CREATED_TRIGGER`

**Type:** poll

Triggers when a new branch is created in a GitHub repository.

    Detects newly created branches. Deleted branches do not fire events.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `commit_sha` | string | Yes | SHA of the HEAD commit on the new branch. |
| `commit_url` | string | Yes | GitHub REST API URL for the HEAD commit on the new branch. |
| `name` | string | Yes | The name of the newly created branch. |
| `protected` | boolean | Yes | Whether the branch has branch-protection rules enabled. |
| `repository_name` | string | Yes | Name of the repository the branch belongs to. |
| `repository_owner` | string | Yes | GitHub username or organization that owns the repository. |

### Check Run Status / Conclusion Changed

**Slug:** `GITHUB_CHECK_RUN_STATUS_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub check run changes its status or conclusion.

    Monitors a single check run for changes to: status (queued, in_progress,
    completed, etc.), conclusion (success, failure, neutral, cancelled, skipped,
    timed_out, action_required), started_at, and completed_at.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `check_run_id` | integer | Yes | The unique numeric identifier of the check run to monitor. You can obtain it from the check runs list API or from the CI/checks page in the GitHub UI. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Case-insensitive. Must contain only alphanumeric characters and hyphens. |
| `repo` | string | Yes | The name of the repository without the .git extension. Case-insensitive. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app` | object | No | GitHub App that created the check run. |
| `changed_fields` | array | No | List of field names that changed since the last poll. |
| `check_suite_id` | integer | No | The ID of the check suite this check run belongs to. |
| `completed_at` | string | No | ISO 8601 timestamp when the check run completed. |
| `conclusion` | string | No | The conclusion of a completed check run: success, failure, neutral, cancelled, skipped, timed_out, or action_required. |
| `details_url` | string | No | URL providing detailed information about the check run. |
| `external_id` | string | No | The external identifier for the check run set by the integrator. |
| `head_sha` | string | Yes | The SHA of the commit this check run targets. |
| `html_url` | string | No | The GitHub URL to view this check run. |
| `id` | integer | Yes | The unique numeric ID of the check run. |
| `name` | string | Yes | The name of the check run. |
| `node_id` | string | No | The GraphQL node ID of the check run. |
| `output` | object | No | Output details for a GitHub check run. |
| `previous_values` | object | No | Previous string-serialized values of the changed fields. |
| `repository_name` | string | Yes | The name of the repository the check run belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the check run belongs to. |
| `started_at` | string | No | ISO 8601 timestamp when the check run started. |
| `status` | string | No | The current status of the check run: queued, in_progress, completed, waiting, requested, or pending. |
| `url` | string | Yes | The REST API URL for this check run. |

### Check Suite Status / Conclusion Changed

**Slug:** `GITHUB_CHECK_SUITE_STATUS_CHANGED_TRIGGER`

**Type:** poll

Triggers when a GitHub check suite changes its status or conclusion for a given ref.

    Monitors all check suites associated with a git reference (branch, tag, or
    commit SHA) for changes to status (queued, in_progress, completed, etc.) and
    conclusion (success, failure, neutral, cancelled, skipped, timed_out,
    action_required, startup_failure, stale). Optionally filters by GitHub App ID.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app_id` | integer | No | Optional: Filters check suites by GitHub App ID. Only monitor check suites created by this specific app. If omitted, all check suites for the ref are monitored. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Case-insensitive. Must contain only alphanumeric characters and hyphens. |
| `ref` | string | Yes | The git reference (branch name, tag name, or commit SHA) to monitor check suites for. For example, 'main', 'v1.0.0', or a full commit SHA. |
| `repo` | string | Yes | The name of the repository without the .git extension. Case-insensitive. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `app` | object | No | GitHub App associated with a check suite. |
| `changed_fields` | array | No | List of field names that changed since the last poll. |
| `check_runs_url` | string | No | The API URL to retrieve the check runs in this suite. |
| `conclusion` | string | No | The overall conclusion of the completed check suite: success, failure, neutral, cancelled, skipped, timed_out, action_required, startup_failure, or stale. Null if not yet completed. |
| `created_at` | string | No | ISO 8601 timestamp when this check suite was created. |
| `head_branch` | string | No | The branch name the check suite belongs to. |
| `head_sha` | string | Yes | The SHA of the head commit being checked. |
| `id` | integer | Yes | The unique numeric ID of the check suite. |
| `latest_check_runs_count` | integer | No | The number of check runs in this check suite. |
| `node_id` | string | No | The GraphQL node ID of the check suite. |
| `previous_values` | object | No | Previous string-serialized values of the changed fields. |
| `ref` | string | Yes | The git reference (branch/tag/SHA) that was monitored. |
| `repository_name` | string | Yes | The name of the repository this check suite belongs to. |
| `repository_owner` | string | Yes | The owner of the repository this check suite belongs to. |
| `status` | string | No | The current phase of the check suite lifecycle: queued, in_progress, completed, waiting, requested, or pending. |
| `updated_at` | string | No | ISO 8601 timestamp when this check suite was last updated. |
| `url` | string | No | The REST API URL for this check suite. |

### New Code Scanning Alert Created

**Slug:** `GITHUB_CODE_SCANNING_ALERT_CREATED_TRIGGER`

**Type:** poll

Triggers when a new code scanning alert is created in a repository.

    Fires an event for each newly created code scanning alert detected in
    the configured repository. Alerts can be filtered by Git reference,
    scanning tool, state, and severity. The payload includes the alert
    number, rule details, tool information, state, severity, and the
    location of the most recent instance.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). The name is not case sensitive. |
| `ref` | string | No | Optional Git reference to filter alerts by. For a branch use 'refs/heads/<branch name>' or just the branch name. For a pull request use 'refs/pull/<number>/merge'. Leave empty to get alerts across all refs (default branch). |
| `repo` | string | Yes | The name of the repository without the .git extension. The name is not case sensitive. |
| `severity` | string | No | Optional filter by alert severity. Possible values: 'critical', 'high', 'medium', 'low', 'warning', 'note', 'error'. Leave empty to include alerts of all severities. |
| `state` | string | No | Optional filter by alert state. Possible values: 'open', 'closed', 'dismissed', 'fixed'. Leave empty to include alerts in all states. |
| `tool_name` | string | No | Optional name of a code scanning tool to filter alerts by (e.g. 'CodeQL', 'Semgrep'). Leave empty to include alerts from all tools. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `alert_number` | integer | Yes | The unique sequential number identifying the alert within the repository. |
| `alert_url` | string | No | The REST API URL of the alert resource. |
| `created_at` | string | No | ISO 8601 timestamp when the alert was created. |
| `dismissed_at` | string | No | ISO 8601 timestamp when the alert was dismissed. Null if not dismissed. |
| `dismissed_reason` | string | No | Reason for dismissal: 'false positive', "won't fix", or 'used in tests'. |
| `fixed_at` | string | No | ISO 8601 timestamp when the alert was fixed. Null if not fixed. |
| `html_url` | string | No | The GitHub web URL of the alert. |
| `instances_url` | string | No | REST API URL to retrieve all instances of this alert. |
| `most_recent_instance_commit_sha` | string | No | Commit SHA where the most recent instance was detected. |
| `most_recent_instance_message` | string | No | Description of the vulnerability from the most recent instance. |
| `most_recent_instance_path` | string | No | File path of the most recent instance location. |
| `most_recent_instance_ref` | string | No | The Git ref where the most recent instance was detected. |
| `most_recent_instance_start_line` | integer | No | Start line of the most recent instance location. |
| `most_recent_instance_state` | string | No | State of the most recent instance: 'open', 'dismissed', or 'fixed'. |
| `repository_name` | string | Yes | The name of the repository. |
| `repository_owner` | string | Yes | The GitHub username or organization that owns the repository. |
| `rule` | object | No | The rule that triggered the code scanning alert. |
| `state` | string | No | Current state of the alert: 'open', 'closed', 'dismissed', or 'fixed'. |
| `tool` | object | No | The code scanning tool that generated the alert. |
| `updated_at` | string | No | ISO 8601 timestamp when the alert was last updated. |

### New Repository Collaborator Added

**Slug:** `GITHUB_COLLABORATOR_ADDED_TRIGGER`

**Type:** poll

Triggers when a new collaborator is added to a GitHub repository.

    Monitors the full list of collaborators on a repository and fires an event
    for each newly added collaborator. The payload includes the collaborator's
    GitHub username, account ID, profile URL, avatar URL, permission flags
    (pull, triage, push, maintain, admin), and assigned role name.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `avatar_url` | string | Yes | URL of the collaborator's avatar image. |
| `html_url` | string | Yes | GitHub profile URL of the collaborator. |
| `id` | integer | Yes | The unique numeric ID of the collaborator's GitHub account. |
| `login` | string | Yes | The GitHub username of the new collaborator. |
| `node_id` | string | Yes | GraphQL global node identifier for the collaborator. |
| `permissions` | object | Yes | Permission flags granted to the collaborator on this repository. |
| `repository_name` | string | Yes | The name of the repository. |
| `repository_owner` | string | Yes | The owner of the repository. |
| `role_name` | string | Yes | The role name assigned to the collaborator (e.g., 'admin', 'maintain', 'write', 'triage', 'read'). |
| `site_admin` | boolean | Yes | Whether the collaborator is a GitHub site administrator. |
| `type` | string | Yes | The type of GitHub account (e.g., 'User', 'Organization'). |
| `url` | string | Yes | REST API URL for the collaborator's user resource. |

### Commit Event

**Slug:** `GITHUB_COMMIT_EVENT`

**Type:** webhook

Triggered when a new commit is pushed to a repository.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner` | string | Yes | Owner of the repository |
| `repo` | string | Yes | Repository name |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author` | string | Yes | The GitHub username of the commit author |
| `id` | string | Yes | The SHA of the commit |
| `message` | string | Yes | The commit message |
| `timestamp` | string | Yes | The timestamp of the commit |
| `url` | string | Yes | The GitHub URL of the commit |

### New Deployment Created

**Slug:** `GITHUB_DEPLOYMENT_CREATED_TRIGGER`

**Type:** poll

Triggers when a new deployment is created in a GitHub repository.

    Fires an event for each newly created deployment detected in the
    configured repository. Deployments can optionally be filtered by target
    environment. The payload includes the deployment ID, commit SHA, ref,
    task, environment, creator details, and timestamps.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `environment` | string | No | Optional filter: only fire for deployments targeting this environment (e.g. 'production', 'staging', 'Preview'). Leave empty to receive events for all environments. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `created_at` | string | Yes | ISO 8601 timestamp when the deployment was created. |
| `creator_id` | integer | Yes | Numeric ID of the creator. |
| `creator_login` | string | Yes | GitHub login of the user or bot that created the deployment. |
| `creator_type` | string | Yes | Account type of the creator (e.g. 'User', 'Bot'). |
| `deployment_id` | integer | Yes | Unique numeric identifier for the deployment. |
| `description` | string | No | A short description of the deployment. |
| `environment` | string | Yes | The name of the environment the deployment targets (e.g. 'production'). |
| `event_type` | string | No | Type of event that occurred. |
| `node_id` | string | Yes | Global Node ID for the deployment. |
| `original_environment` | string | Yes | The original environment of the deployment before any overrides. |
| `owner` | string | Yes | Owner of the repository. |
| `production_environment` | boolean | Yes | Whether this deployment targets the production environment. |
| `ref` | string | Yes | The short ref name or full SHA of the deployment's target. |
| `repo` | string | Yes | Repository name. |
| `repository_url` | string | Yes | API URL for the repository the deployment belongs to. |
| `sha` | string | Yes | The SHA of the commit that was deployed. |
| `statuses_url` | string | Yes | API URL to list deployment statuses. |
| `task` | string | Yes | The name of the task that was used for the deployment (e.g. 'deploy'). |
| `transient_environment` | boolean | Yes | Whether this is a transient environment (destroyed on inactivity). |
| `updated_at` | string | Yes | ISO 8601 timestamp when the deployment was last updated. |
| `url` | string | Yes | API URL for this deployment resource. |

### GitHub Deployment State Changed

**Slug:** `GITHUB_DEPLOYMENT_STATE_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub deployment's fields change.

    Monitors the following aspects of a single deployment:
    - ``environment`` -- the target environment name
    - ``original_environment`` -- the original environment name before normalization
    - ``description`` -- the human-readable deployment description
    - ``task`` -- the deployment task name
    - ``sha`` -- the commit SHA being deployed
    - ``ref`` -- the branch, tag, or SHA reference being deployed
    - ``updated_at`` -- the last-updated timestamp
    - ``transient_environment`` -- whether the environment is temporary
    - ``production_environment`` -- whether this is a production deployment

    When any of these fields change, an event is emitted containing the full
    current deployment details and a list of which fields changed.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deployment_id` | integer | Yes | The unique numeric identifier of the deployment to monitor. Obtain this from the deployments listing endpoint ``GET /repos/{owner}/{repo}/deployments`` or from your CI/CD output. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'my-company'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `changed_fields` | array | Yes | List of field names that changed since the previous poll. Possible values: 'environment', 'original_environment', 'description', 'task', 'sha', 'ref', 'updated_at', 'transient_environment', 'production_environment'. Use this to route your automation — for example, alert only when 'environment' changes to detect environment promotions. |
| `created_at` | string | No | ISO 8601 timestamp when the deployment was created. |
| `creator` | object | No | Minimal details about the user or bot that created the deployment. |
| `current_snapshot` | object | No | The canonicalised snapshot from the current poll. |
| `deployment_id` | integer | Yes | Numeric ID of the deployment that changed. |
| `description` | string | No | Optional human-readable description of the deployment. |
| `environment` | string | No | Target environment name (e.g. 'production', 'staging'). |
| `event_type` | string | No | Event type identifier. |
| `node_id` | string | No | GraphQL node ID of the deployment. |
| `original_environment` | string | No | Original environment name before any normalization. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_snapshot` | object | No | The canonicalised snapshot from the previous poll. |
| `production_environment` | boolean | No | Whether this is a production environment deployment. |
| `ref` | string | No | The ref (branch, tag, or SHA) that was deployed. |
| `repo` | string | Yes | Repository name. |
| `repository_url` | string | No | API URL for the repository. |
| `sha` | string | No | Commit SHA that was deployed. |
| `statuses_url` | string | No | API URL for the deployment's status history. |
| `task` | string | No | Deployment task name (e.g. 'deploy'). |
| `transient_environment` | boolean | No | Whether the environment is temporary (e.g. for PR previews). |
| `updated_at` | string | No | ISO 8601 timestamp when the deployment was last updated. |
| `url` | string | No | API URL of the deployment resource. |

### New Deployment Status Created

**Slug:** `GITHUB_DEPLOYMENT_STATUS_CREATED`

**Type:** poll

Triggers when a new deployment status is created for a specific deployment.

    Fires an event for each newly created deployment status on the monitored
    deployment. Deployment statuses represent state transitions such as
    pending, in_progress, success, failure, error, inactive, and queued.
    The payload includes the status state, creator, environment, description,
    timestamps, and relevant URLs.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deployment_id` | integer | Yes | The unique numeric ID of the deployment to monitor for new statuses. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner (user or organization) of the repository. |
| `repo` | string | Yes | The name of the repository (without .git extension). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `created_at` | string | Yes | ISO 8601 timestamp when the deployment status was created. |
| `creator` | object | Yes | The user or bot who created this deployment status. |
| `deployment_id` | integer | Yes | The ID of the deployment this status belongs to. |
| `deployment_url` | string | Yes | API URL for the associated deployment. |
| `description` | string | No | A short description of the status (max 140 characters). |
| `environment` | string | No | The environment this deployment status targets. |
| `environment_url` | string | No | The URL for accessing the deployment environment. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `id` | integer | Yes | Unique numeric ID of the deployment status. |
| `log_url` | string | No | The URL to view the full output from the deployment. |
| `node_id` | string | Yes | GraphQL node identifier for the deployment status. |
| `repository_name` | string | Yes | The name of the repository. |
| `repository_owner` | string | Yes | The owner of the repository. |
| `repository_url` | string | Yes | API URL for the repository this deployment status belongs to. |
| `state` | string | Yes | The state of the deployment status. One of: error, failure, inactive, pending, success, queued, in_progress. |
| `target_url` | string | No | The target URL associated with this status, typically pointing to the deployment output or logs. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the deployment status was last updated. |
| `url` | string | Yes | API URL for this deployment status resource. |

### Follower Changes

**Slug:** `GITHUB_FOLLOWER_EVENT`

**Type:** poll

Triggers when new followers are detected on your GitHub account.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `username` | string | Yes | Username of the github follower |

### New Git Reference Created

**Slug:** `GITHUB_GIT_REFERENCE_CREATED_TRIGGER`

**Type:** poll

Triggers when a new Git reference (branch or tag) matching a specified
    prefix is created in a repository.

    Fires an event for each newly created branch or tag whose name matches
    the configured prefix. Use ``ref_prefix`` to control what is monitored:
    - ``heads/`` to watch all branches
    - ``heads/feature/`` to watch only feature branches
    - ``tags/`` to watch all tags
    - ``tags/v`` to watch tags starting with 'v'

    The payload includes the full reference name, node ID, the SHA and type
    of the Git object the reference points to, and the reference API URL.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `ref_prefix` | string | Yes | Partial Git reference path prefix to match, without the 'refs/' prefix. Use 'heads/' to match branches (e.g. 'heads/feature/') or 'tags/' to match tags (e.g. 'tags/v'). Only references whose full name starts with 'refs/{ref_prefix}' will be monitored. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `event_type` | string | No | Type of event that occurred. |
| `node_id` | string | Yes | The global node ID for the reference. |
| `object_sha` | string | Yes | The SHA-1 hash of the Git object this reference points to. |
| `object_type` | string | Yes | The type of Git object (typically 'commit'). |
| `object_url` | string | Yes | The API URL for the referenced Git object. |
| `owner` | string | Yes | Owner of the repository. |
| `ref` | string | Yes | The full Git reference name (e.g. 'refs/heads/feature-a' or 'refs/tags/v1.0'). |
| `ref_url` | string | Yes | The API URL for accessing this reference. |
| `repo` | string | Yes | Repository name. |

### Issue Added Event

**Slug:** `GITHUB_ISSUE_ADDED_EVENT`

**Type:** webhook

Triggered when a new issue is added to the repository.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner` | string | Yes | Owner of the repository |
| `repo` | string | Yes | Repository name |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string | Yes | The action that was performed on the issue |
| `createdAt` | string | Yes | The timestamp when the issue was created |
| `createdBy` | string | Yes | The GitHub username of the user who created the issue |
| `description` | string | No | A detailed description of the issue |
| `issue_id` | integer | Yes | The unique ID assigned to the issue |
| `number` | integer | Yes | The unique number assigned to the issue |
| `title` | string | Yes | The title of the issue |
| `url` | string | Yes | The GitHub URL of the issue |

### New Issue Assigned to Me

**Slug:** `GITHUB_ISSUE_ASSIGNED_TO_ME_TRIGGER`

**Type:** poll

Triggers when a new issue is assigned to the authenticated user.

    Fires an event for each GitHub issue that is newly assigned to the
    authenticated user. Pull requests are automatically excluded -- only
    true issues are emitted. Issues can optionally be filtered by labels
    and state. The payload includes the issue number, title, body, state,
    labels, assignees, creator, repository details, and timestamps.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `labels` | string | No | A comma-separated list of label names to filter issues by. Only issues with ALL the specified labels will trigger events. Leave empty to receive all newly assigned issues regardless of labels. |
| `state` | string | No | Filter issues by state. Use 'open' to only receive open issues, 'closed' for closed issues, or 'all' for both. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignees` | array | No | GitHub users assigned to this issue. |
| `body` | string | No | The body text / description of the issue. |
| `closed_at` | string | No | ISO 8601 timestamp when the issue was closed, if applicable. |
| `comments` | integer | Yes | Number of comments on the issue. |
| `created_at` | string | Yes | ISO 8601 timestamp when the issue was created. |
| `html_url` | string | Yes | The GitHub URL to view this issue. |
| `id` | integer | Yes | The unique numeric ID of the issue. |
| `labels` | array | No | Labels attached to the issue. |
| `number` | integer | Yes | The issue number within the repository. |
| `repository` | object | No | Minimal repository information attached to an issue. |
| `state` | string | Yes | The state of the issue: 'open' or 'closed'. |
| `title` | string | Yes | The title of the issue. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the issue was last updated. |
| `url` | string | Yes | The REST API URL for this issue. |
| `user` | object | Yes | The user who created the issue. |

### GitHub Issue Comment Changed

**Slug:** `GITHUB_ISSUE_COMMENT_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub issue comment changes.

    Monitors the following fields for changes:

    - ``body`` -- the text content of the comment (detects edits)
    - ``updated_at`` -- the last-updated timestamp
    - ``reactions_*`` -- all individual reaction counts (thumbs up/down,
      laugh, confused, heart, hooray, eyes, rocket) and the total count

    When a change is detected, the payload includes the full current comment
    data plus a ``changed_fields`` list indicating exactly which fields
    were modified.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `comment_id` | integer | Yes | The unique numeric identifier of the issue comment to monitor. You can obtain this from the comment's URL or via the GitHub API. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author_association` | string | Yes | How the author is associated with the repository. Possible values: COLLABORATOR, CONTRIBUTOR, FIRST_TIMER, FIRST_TIME_CONTRIBUTOR, MANNEQUIN, MEMBER, NONE, OWNER. |
| `body` | string | Yes | Current body (text) of the issue comment. |
| `changed_fields` | array | Yes | List of canonicalised field names that changed since the previous poll. Possible values: 'body', 'updated_at', 'reactions_total_count', 'reactions_plus_one', 'reactions_minus_one', 'reactions_laugh', 'reactions_confused', 'reactions_heart', 'reactions_hooray', 'reactions_eyes', 'reactions_rocket'. |
| `comment_id` | integer | Yes | Unique numeric ID of the issue comment. |
| `created_at` | string | Yes | ISO 8601 timestamp when the comment was created. |
| `current_snapshot` | object | No | The canonicalised snapshot from the current poll. |
| `event_type` | string | No | Event type identifier. |
| `html_url` | string | Yes | Web URL to view the comment on GitHub. |
| `issue_url` | string | Yes | GitHub API URL for the parent issue. |
| `node_id` | string | Yes | GraphQL node identifier of the comment. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_snapshot` | object | No | The canonicalised snapshot from the previous poll. |
| `reactions` | object | No | Reaction counts for the issue comment. |
| `repo` | string | Yes | Repository name. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the comment was last updated. |
| `url` | string | Yes | GitHub API URL for the issue comment. |
| `user` | object | No | Condensed representation of the comment author. |

### New GitHub Issue Comment

**Slug:** `GITHUB_ISSUE_COMMENT_CREATED_TRIGGER`

**Type:** poll

Triggers when a new comment is added to a specific GitHub issue.

    Only genuinely new comments are emitted; edits to existing comments do
    not produce duplicate events.  The payload includes the comment ID, text
    body, author details, timestamps, and direct links to the comment on
    GitHub.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `issue_number` | integer | Yes | The number that identifies the issue to monitor for new comments (e.g. 42). You can find it in the issue URL (github.com/owner/repo/issues/42). |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author_association` | string | Yes | The comment author's relationship to the repository. Possible values: COLLABORATOR, CONTRIBUTOR, FIRST_TIMER, FIRST_TIME_CONTRIBUTOR, MANNEQUIN, MEMBER, NONE, OWNER. |
| `body` | string | Yes | The text content of the comment. |
| `comment_id` | integer | Yes | Unique identifier of the issue comment. |
| `created_at` | string | Yes | ISO 8601 timestamp when the comment was created. |
| `html_url` | string | Yes | Web URL to view the comment on GitHub. |
| `issue_number` | integer | Yes | The issue number this comment belongs to. |
| `issue_url` | string | Yes | GitHub API URL for the parent issue. |
| `node_id` | string | Yes | GraphQL node ID of the comment. |
| `owner` | string | Yes | Owner of the repository. |
| `repo` | string | Yes | Repository name. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the comment was last updated. |
| `url` | string | Yes | GitHub API URL for the comment. |
| `user` | object | No | GitHub user information associated with a comment. |

### New Issue Created

**Slug:** `GITHUB_ISSUE_CREATED_TRIGGER`

**Type:** poll

Triggers when a new issue is created in a GitHub repository.

    Pull requests are automatically excluded -- only true issues produce events.
    Results can be filtered by labels, assignee, creator, and mentioned user.

    The payload includes the issue number, title, body, state, labels, assignees,
    comment count, creator details, timestamps, and direct links to the issue on
    GitHub.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignee` | string | No | Filter issues assigned to a specific GitHub username. Use 'none' for unassigned issues, '*' for any assigned issue. Leave empty to receive issues regardless of assignee. |
| `creator` | string | No | Filter issues created by a specific GitHub username. Leave empty to receive issues from any creator. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `labels` | string | No | A comma-separated list of label names to filter issues by. Only issues with ALL the specified labels will trigger events. Leave empty to receive all new issues regardless of labels. |
| `mentioned` | string | No | Filter issues where the given GitHub username is mentioned. Leave empty to receive all new issues. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |
| `state` | string | No | Issue state to monitor: 'open', 'closed', or 'all'. Defaults to 'open'. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignees` | array | No | GitHub users assigned to this issue. |
| `body` | string | No | The body text / description of the issue. |
| `closed_at` | string | No | ISO 8601 timestamp when the issue was closed, if applicable. |
| `comments` | integer | Yes | Number of comments on the issue. |
| `created_at` | string | Yes | ISO 8601 timestamp when the issue was created. |
| `html_url` | string | Yes | The GitHub URL to view this issue. |
| `id` | integer | Yes | The unique numeric ID of the issue. |
| `is_pull_request` | boolean | No | True if this item is actually a pull request. GitHub's issues API also returns pull requests; this flag distinguishes them. |
| `labels` | array | No | Labels attached to the issue. |
| `number` | integer | Yes | The issue number within the repository. |
| `repository_name` | string | Yes | The name of the repository the issue belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the issue belongs to. |
| `state` | string | Yes | The state of the issue: 'open' or 'closed'. |
| `title` | string | Yes | The title of the issue. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the issue was last updated. |
| `url` | string | Yes | The REST API URL for this issue. |
| `user` | object | Yes | The user who created the issue. |

### New Issue Event

**Slug:** `GITHUB_ISSUE_EVENT_OCCURRED_TRIGGER`

**Type:** poll

Triggers when a new issue event occurs in a GitHub repository.

    Covers all issue timeline events such as issues being closed, reopened,
    assigned, unassigned, labeled, unlabeled, milestoned, demilestoned,
    renamed, locked, or unlocked.  Events can optionally be filtered by type.

    The payload includes the event type, timestamp, the actor who triggered
    the event, the affected issue details, and any associated commit
    references.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `event_types` | string | No | Comma-separated list of event types to filter (e.g., 'closed,labeled,assigned'). Leave empty to receive all issue events. Common values: closed, reopened, assigned, unassigned, labeled, unlabeled, milestoned, demilestoned, renamed, locked, unlocked. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `actor` | object | No | Minimal GitHub user information for the event actor. |
| `commit_id` | string | No | SHA of the commit that referenced this issue, if applicable. |
| `commit_url` | string | No | API URL for the associated commit, if applicable. |
| `created_at` | string | Yes | ISO 8601 timestamp when the event was created. |
| `event` | string | Yes | The type of event (e.g., closed, reopened, assigned, unassigned, labeled, unlabeled, milestoned, demilestoned, renamed, locked, unlocked). |
| `id` | integer | Yes | The unique numeric ID of the issue event. |
| `issue` | object | No | Minimal issue information embedded in the event. |
| `node_id` | string | Yes | GraphQL global node identifier of the event. |
| `repository_name` | string | Yes | The name of the repository the event belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the event belongs to. |
| `url` | string | Yes | The REST API URL for this event. |

### GitHub Issue Labels Changed

**Slug:** `GITHUB_ISSUE_LABEL_CHANGED_TRIGGER`

**Type:** poll

Triggers when the labels on a specific GitHub issue change.

    Fires whenever a label is added to, removed from, or has its metadata
    (color, description) modified on the monitored issue.  The payload
    includes:

    - ``current_labels`` -- the full set of labels currently on the issue
    - ``added_labels`` -- labels that were newly added
    - ``removed_label_names`` -- names of labels that were removed
    - ``changed_label_names`` -- labels whose metadata changed without
      being added or removed

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `issue_number` | integer | Yes | The unique number of the GitHub issue to monitor for label changes. You can find this number in the issue's URL: https://github.com/{owner}/{repo}/issues/{issue_number} |
| `owner` | string | Yes | The account owner of the repository (username or organization name). This is not case-sensitive. For example: 'octocat' or 'my-organization'. |
| `repo` | string | Yes | The name of the repository without the `.git` extension. This is not case-sensitive. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `added_labels` | array | No | Labels that were added to the issue since the previous poll. |
| `changed_label_names` | array | No | Names of labels whose metadata (color, description) changed since the previous poll without being added/removed. |
| `current_labels` | array | No | The full current set of labels on the issue after the change. |
| `event_type` | string | No | Event type identifier. |
| `issue_number` | integer | Yes | The number of the issue whose labels changed. |
| `owner` | string | Yes | The account owner of the repository (username or org). |
| `removed_label_names` | array | No | Names of labels that were removed from the issue since the previous poll. |
| `repo` | string | Yes | The repository name. |

### Issue State / Properties Changed

**Slug:** `GITHUB_ISSUE_STATE_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub issue changes any of its tracked properties.

    Monitored properties: state (open/closed), state_reason, title, body,
    assignees, labels, milestone, lock status, active_lock_reason, comment
    count, and closed_at timestamp.

    When a change is detected, the payload includes the full current issue
    details, the list of changed field names, and their previous values.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `issue_number` | integer | Yes | The identifying number of the issue to monitor. This is the number shown next to the issue title (e.g., #42) or visible in the issue URL. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active_lock_reason` | string | No | The reason the issue is locked, if locked. |
| `assignees` | array | No | GitHub users currently assigned to this issue. |
| `body` | string | No | The current body text / description of the issue. |
| `changed_fields` | array | No | List of field names that changed since the last poll. |
| `closed_at` | string | No | ISO 8601 timestamp when the issue was closed, if applicable. |
| `comments` | integer | Yes | Number of comments on the issue. |
| `created_at` | string | Yes | ISO 8601 timestamp when the issue was created. |
| `html_url` | string | Yes | The GitHub URL to view this issue. |
| `id` | integer | Yes | The unique numeric ID of the issue. |
| `labels` | array | No | Labels currently attached to the issue. |
| `locked` | boolean | Yes | Whether the issue is locked. |
| `number` | integer | Yes | The issue number within the repository. |
| `previous_values` | object | No | Previous string-serialized values of the changed fields. |
| `repository_name` | string | Yes | The name of the repository the issue belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the issue belongs to. |
| `state` | string | Yes | The current state of the issue: 'open' or 'closed'. |
| `state_reason` | string | No | The reason for the current state. Possible values: completed, reopened, not_planned, duplicate, or null. |
| `title` | string | Yes | The current title of the issue. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the issue was last updated. |
| `url` | string | Yes | The REST API URL for this issue. |
| `user` | object | Yes | The user who created the issue. |

### Issue Updated

**Slug:** `GITHUB_ISSUE_UPDATED_TRIGGER`

**Type:** poll

Triggers when an existing issue is updated in a GitHub repository.

    Monitors issues for any changes such as title edits, body edits, label changes,
    assignee changes, state transitions (opening, closing, reopening), milestone
    updates, and comment additions. Only pre-existing issues that receive updates
    are emitted; newly created issues are excluded. Pull requests are also excluded
    -- only true issues fire events.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignee` | string | No | Filter issues assigned to a specific GitHub username. Use 'none' for unassigned issues, '*' for any assigned issue. Leave empty to receive issues regardless of assignee. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `labels` | string | No | A comma-separated list of label names to filter issues by. Only issues with ALL the specified labels will trigger events. Leave empty to receive events for all issues regardless of labels. |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |
| `state` | string | No | Filter by issue state. Use 'open' for open issues only, 'closed' for closed issues, or 'all' for both. Defaults to 'all' so updates to any issue (e.g., closing an issue) are captured. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignees` | array | No | GitHub users assigned to this issue. |
| `body` | string | No | The body text / description of the issue. |
| `closed_at` | string | No | ISO 8601 timestamp when the issue was closed, if applicable. |
| `comments` | integer | Yes | Number of comments on the issue. |
| `created_at` | string | Yes | ISO 8601 timestamp when the issue was created. |
| `html_url` | string | Yes | The GitHub URL to view this issue. |
| `id` | integer | Yes | The unique numeric ID of the issue. |
| `labels` | array | No | Labels attached to the issue. |
| `number` | integer | Yes | The issue number within the repository. |
| `repository_name` | string | Yes | The name of the repository the issue belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the issue belongs to. |
| `state` | string | Yes | The state of the issue: 'open' or 'closed'. |
| `state_reason` | string | No | Reason for the current state (completed, not_planned, reopened, or null). |
| `title` | string | Yes | The title of the issue. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the issue was last updated. |
| `url` | string | Yes | The REST API URL for this issue. |
| `user` | object | Yes | The user who created the issue. |

### Label Added Event

**Slug:** `GITHUB_LABEL_ADDED_EVENT`

**Type:** webhook

Triggered when a new label is added to a pull request.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner` | string | Yes | Owner of the repository |
| `repo` | string | Yes | Repository name |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string | Yes | The action that was performed on the label |
| `label` | string | Yes | The name of the label that was added |
| `labeled_at` | string | Yes | The timestamp when the label was added |
| `labeled_by` | string | Yes | The GitHub username of the user who added the label |
| `pull_request_number` | integer | Yes | The unique number assigned to the pull request |
| `pull_request_title` | string | Yes | The title of the pull request |
| `pull_request_url` | string | Yes | The GitHub URL of the pull request |

### New Stargazer Added

**Slug:** `GITHUB_NEW_STARGAZER_ADDED_TRIGGER`

**Type:** poll

Triggers when a new user stars a GitHub repository.

    Emits an event for each new stargazer detected on the monitored repository.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `api_url` | string | Yes | GitHub API URL for the stargazer's user resource. |
| `avatar_url` | string | Yes | URL to the stargazer's avatar image. |
| `event_type` | string | No | Type of event that occurred. |
| `html_url` | string | Yes | GitHub profile URL of the stargazer. |
| `login` | string | Yes | GitHub username of the user who starred the repository. |
| `owner` | string | Yes | Owner of the repository. |
| `repo` | string | Yes | Repository name. |
| `site_admin` | boolean | Yes | Whether the stargazer is a GitHub site administrator. |
| `user_id` | integer | Yes | Unique numeric identifier for the user who starred the repository. |
| `user_type` | string | Yes | Type of the GitHub account (e.g. 'User' or 'Organization'). |

### New Pull Request Review Comment

**Slug:** `GITHUB_PR_REVIEW_COMMENT_CREATED_TRIGGER`

**Type:** poll

Triggers when a new inline review comment is added to a specific GitHub
    pull request.

    Monitors all review comments across all reviews on the specified pull request
    and emits an event for each newly created comment. Edits to existing comments
    do not fire new events.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `pull_number` | integer | Yes | The number that identifies the pull request to monitor (e.g. 42). You can find it in the PR URL (github.com/owner/repo/pull/42). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author_association` | string | Yes | The comment author's relationship to the repository. Possible values: COLLABORATOR, CONTRIBUTOR, FIRST_TIMER, FIRST_TIME_CONTRIBUTOR, MANNEQUIN, MEMBER, NONE, OWNER. |
| `body` | string | Yes | The text content of the review comment. |
| `comment_id` | integer | Yes | Unique identifier of the review comment. |
| `commit_id` | string | Yes | The SHA of the commit to which the comment applies. |
| `created_at` | string | Yes | ISO 8601 timestamp when the comment was created. |
| `diff_hunk` | string | Yes | The diff hunk of the file that the comment refers to. |
| `html_url` | string | Yes | Web URL to view the comment on GitHub. |
| `in_reply_to_id` | integer | No | The comment ID this comment replies to, if any. |
| `line` | integer | No | The line of the blob to which the comment applies. The last line of the range for a multi-line comment. |
| `node_id` | string | Yes | GraphQL node ID of the comment. |
| `original_commit_id` | string | Yes | The SHA of the original commit to which the comment applies. |
| `original_line` | integer | No | The original line index in the diff. |
| `original_start_line` | integer | No | The original first line of the range for a multi-line comment. |
| `owner` | string | Yes | Owner of the repository. |
| `path` | string | Yes | The relative path of the file to which the comment applies. |
| `pull_number` | integer | Yes | The pull request number this comment belongs to. |
| `pull_request_review_id` | integer | No | The ID of the pull request review the comment belongs to, if any. |
| `pull_request_url` | string | Yes | GitHub API URL for the parent pull request. |
| `repo` | string | Yes | Repository name. |
| `side` | string | No | The side of the diff to which the comment applies (LEFT or RIGHT). |
| `start_line` | integer | No | The first line of the range for a multi-line comment. |
| `start_side` | string | No | The side of the diff where the multi-line comment range starts (LEFT or RIGHT). |
| `subject_type` | string | No | The level at which the comment is targeted: 'line' or 'file'. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the comment was last updated. |
| `url` | string | Yes | GitHub API URL for the review comment. |
| `user` | object | No | GitHub user information associated with a pull request review comment. |

### New Commit Added to Pull Request

**Slug:** `GITHUB_PULL_REQUEST_COMMIT_ADDED_TRIGGER`

**Type:** poll

Triggers when a new commit is pushed to a specific pull request.

    Monitors all commits on the specified pull request and emits an event for
    each newly added commit. This covers force-pushes and additional commits
    pushed to the PR's head branch.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Case-insensitive. |
| `pull_number` | integer | Yes | The number of the pull request to monitor for new commits. |
| `repo` | string | Yes | The name of the repository without the .git extension. Case-insensitive. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author` | object | No | Minimal GitHub user info (author or committer). |
| `comments_url` | string | No | API URL for comments on this commit. |
| `commit` | object | No | Detailed metadata embedded in the commit object. |
| `committer` | object | No | Minimal GitHub user info (author or committer). |
| `html_url` | string | No | GitHub URL to view the commit. |
| `node_id` | string | No | The GraphQL node ID of the commit. |
| `parents` | array | No | Parent commits of this commit. |
| `pull_number` | integer | Yes | The pull request number this commit belongs to. |
| `repository_name` | string | Yes | The name of the repository (from config). |
| `repository_owner` | string | Yes | The owner of the repository (from config). |
| `sha` | string | Yes | The commit SHA. |
| `url` | string | No | API URL for this commit. |

### New Pull Request Created

**Slug:** `GITHUB_PULL_REQUEST_CREATED`

**Type:** poll

Triggers when a new pull request is created in GitHub, matching the
    optional configured filters.

    Emits an event for each newly created pull request. Supports filtering by
    repository, owner/organisation, author, assignee, label, state, base branch,
    head branch, and draft status.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignee` | string | No | Only emit events for pull requests assigned to this GitHub username. Use '@me' to match the authenticated user. |
| `author` | string | No | Only emit events for pull requests created by this GitHub username. Must be a valid GitHub login (alphanumeric + hyphens only, max 39 chars). |
| `base_branch` | string | No | Only emit events for pull requests targeting this base branch (e.g., 'main' or 'develop'). |
| `head_branch` | string | No | Only emit events for pull requests whose source branch matches this name (e.g., 'feature/login'). |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `is_draft` | boolean | No | Filter by draft status. Set to True to receive events only for draft PRs, False for non-draft PRs, or leave blank to receive both. |
| `label` | string | No | Only emit events for pull requests that carry this label name (e.g., 'bug', 'enhancement'). |
| `owner` | string | No | Restrict the search to all repositories belonging to a GitHub user or organisation (e.g., 'facebook' or 'microsoft'). Ignored when 'repo' is also provided. |
| `repo` | string | No | Restrict the search to a specific repository. Must be in 'owner/repo' format (e.g., 'facebook/react'). Leave blank to search across all repositories accessible to the account. |
| `state` | string | No | Pull request state to monitor: 'open', 'closed', or 'all'. Defaults to 'open'. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author_html_url` | string | No | GitHub profile URL of the pull request author. |
| `author_login` | string | No | GitHub username of the pull request author. |
| `body` | string | No | Body/description of the pull request in markdown format. |
| `closed_at` | string | No | ISO 8601 timestamp when the pull request was closed, null if open. |
| `comments` | integer | No | Number of comments on the pull request. |
| `created_at` | string | Yes | ISO 8601 timestamp when the pull request was created. |
| `draft` | boolean | Yes | Whether the pull request is marked as a draft. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `html_url` | string | Yes | GitHub web interface URL to view the pull request. |
| `labels` | array | No | Names of the labels attached to this pull request. |
| `merged_at` | string | No | ISO 8601 timestamp when the pull request was merged, null if not merged. |
| `node_id` | string | No | GraphQL node identifier for the pull request. |
| `number` | integer | Yes | Pull request number within the repository. |
| `pr_id` | string | Yes | Unique numeric identifier of the pull request (as string). |
| `repository_url` | string | No | GitHub API URL for the repository the pull request belongs to. |
| `state` | string | Yes | State of the pull request: 'open' or 'closed'. |
| `title` | string | Yes | Title of the pull request. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the pull request was last updated. |

### Pull Request Event

**Slug:** `GITHUB_PULL_REQUEST_EVENT`

**Type:** webhook

Triggered when a pull request is opened, closed, or synchronized.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner` | string | Yes | Owner of the repository |
| `repo` | string | Yes | Repository name |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string | Yes | The action that was performed on the pull request |
| `createdAt` | string | Yes | The timestamp when the pull request was created |
| `createdBy` | string | Yes | The GitHub username of the user who created the pull request |
| `description` | string | No | A detailed description of the pull request |
| `number` | integer | Yes | The unique number assigned to the pull request |
| `title` | string | Yes | The title of the pull request |
| `url` | string | Yes | The GitHub URL of the pull request |

### GitHub Pull Request Reviewers Changed

**Slug:** `GITHUB_PULL_REQUEST_REVIEWERS_CHANGED_TRIGGER`

**Type:** poll

Triggers when the list of requested reviewers (users or teams) for a pull
    request changes — for example when a reviewer is added, removed, or
    re-requested.

    The payload includes the full current reviewer list (users and teams with
    details), which reviewers were added, which were removed, and the previous
    reviewer list for reference.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `pull_number` | integer | Yes | The numeric identifier of the pull request to monitor (e.g. 42). You can find this in the pull request URL. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `current_team_slugs` | array | Yes | Sorted list of team slugs currently requested to review. |
| `current_teams` | array | No | Full details of teams currently requested to review. |
| `current_user_logins` | array | Yes | Sorted list of GitHub user logins currently requested to review. |
| `current_users` | array | No | Full details of users currently requested to review. |
| `event_type` | string | No | Event type identifier. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_team_slugs` | array | No | Sorted list of team slugs from the previous poll. |
| `previous_user_logins` | array | No | Sorted list of user logins from the previous poll. |
| `pull_number` | integer | Yes | The numeric identifier of the pull request. |
| `repo` | string | Yes | Repository name. |
| `teams_added` | array | No | Team slugs that were newly added as requested reviewers. |
| `teams_removed` | array | No | Team slugs that were removed from requested reviewers. |
| `users_added` | array | No | User logins that were newly added as requested reviewers. |
| `users_removed` | array | No | User logins that were removed from requested reviewers. |

### Pull Request Review Submitted

**Slug:** `GITHUB_PULL_REQUEST_REVIEW_SUBMITTED_TRIGGER`

**Type:** poll

Triggers when a new review is submitted for a GitHub pull request.

    Emits an event for each newly submitted review on the monitored pull request,
    covering all review types: APPROVED, CHANGES_REQUESTED, COMMENTED, and
    DISMISSED.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `pull_number` | integer | Yes | The number of the pull request to monitor for new reviews. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'vscode'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author_association` | string | Yes | How the reviewer is associated with the repository (e.g. COLLABORATOR, CONTRIBUTOR, MEMBER, NONE, OWNER). |
| `body` | string | Yes | The body text of the review. |
| `commit_id` | string | Yes | The commit SHA that was reviewed. |
| `event_type` | string | No | Type of event that occurred. |
| `html_url` | string | Yes | Web URL for the review. |
| `node_id` | string | Yes | GraphQL node identifier of the review. |
| `owner` | string | Yes | Owner of the repository. |
| `pull_number` | integer | Yes | The number of the pull request being reviewed. |
| `pull_request_url` | string | Yes | API URL for the associated pull request. |
| `repo` | string | Yes | Repository name. |
| `review_id` | integer | Yes | Unique numeric identifier of the review. |
| `reviewer` | object | No | Minimal representation of the reviewer user. |
| `state` | string | Yes | State of the review. Possible values: APPROVED, CHANGES_REQUESTED, COMMENTED, DISMISSED, PENDING. |
| `submitted_at` | string | No | ISO 8601 timestamp of when the review was submitted. |

### Pull Request State / Properties Changed

**Slug:** `GITHUB_PULL_REQUEST_STATE_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub pull request changes any of these tracked
    properties: state (open/closed), title, body, draft status, lock status,
    merge status, assignees, labels, requested reviewers, or milestone.

    The payload includes the full current PR details, the list of changed field
    names, and their previous values.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization name). Must contain only alphanumeric characters and hyphens, max 39 characters. |
| `pull_number` | integer | Yes | The identifying number of the pull request to monitor. This is the number shown next to the PR title (e.g., #42) or visible in the pull request URL. |
| `repo` | string | Yes | The name of the repository without the .git extension. Must contain only alphanumeric characters, hyphens, underscores, and periods. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `active_lock_reason` | string | No | The reason the pull request is locked, if locked. |
| `assignees` | array | No | GitHub users currently assigned to this pull request. |
| `body` | string | No | The current body / description of the pull request. |
| `changed_fields` | array | No | List of field names that changed since the last poll. |
| `closed_at` | string | No | ISO 8601 timestamp when the pull request was closed, if applicable. |
| `created_at` | string | Yes | ISO 8601 timestamp when the pull request was created. |
| `draft` | boolean | Yes | Whether the pull request is a draft. |
| `html_url` | string | Yes | The GitHub URL to view this pull request. |
| `id` | integer | Yes | The unique numeric ID of the pull request. |
| `labels` | array | No | Labels currently attached to the pull request. |
| `locked` | boolean | Yes | Whether the pull request is locked. |
| `merge_commit_sha` | string | No | SHA of the merge commit, if merged. |
| `merged` | boolean | Yes | Whether the pull request has been merged. |
| `merged_at` | string | No | ISO 8601 timestamp when the pull request was merged, if applicable. |
| `merged_by` | object | No | Minimal GitHub user information attached to a pull request. |
| `milestone` | string | No | The milestone title associated with the pull request, if any. |
| `number` | integer | Yes | The PR number within the repository. |
| `previous_values` | object | No | Previous string-serialized values of the changed fields. |
| `repository_name` | string | Yes | The name of the repository the pull request belongs to. |
| `repository_owner` | string | Yes | The owner of the repository the pull request belongs to. |
| `requested_reviewers` | array | No | GitHub users whose review is currently requested. |
| `state` | string | Yes | The current state of the pull request: 'open' or 'closed'. |
| `title` | string | Yes | The current title of the pull request. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the pull request was last updated. |
| `url` | string | Yes | The REST API URL for this pull request. |
| `user` | object | Yes | The user who created the pull request. |

### Pull Request Updated

**Slug:** `GITHUB_PULL_REQUEST_UPDATED`

**Type:** poll

Triggers when an existing pull request is updated in a GitHub repository.

    Updates include title edits, description changes, label changes, assignee
    changes, reviewer requests, draft status changes, base branch changes, being
    closed, merged, or reopened. Only pre-existing PRs that receive an update
    will fire the trigger; newly created PRs are excluded.

    Supports optional filters: state, base branch, head branch, author, label,
    and draft status.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `author` | string | No | Only emit events for pull requests authored by this GitHub username. Leave blank to watch PRs from any author. |
| `base_branch` | string | No | Only emit events for pull requests targeting this base branch (the branch being merged into). Leave blank to watch all base branches. |
| `draft` | boolean | No | Filter by draft status. Set to True to only watch draft PRs, False for non-draft PRs, or leave blank (None) to watch both. |
| `head_branch` | string | No | Only emit events for pull requests coming from this head branch (the branch being merged). Supports the 'user:branch' format to filter across forks. Leave blank to watch all head branches. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `label` | string | No | Only emit events for pull requests carrying this exact label name. Leave blank to watch PRs regardless of labels. |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). Do not include the repository name here. |
| `repo` | string | Yes | The name of the repository to watch for updated pull requests. Do not include the owner prefix. |
| `state` | string | No | Filter pull requests by state. Use 'open' for open PRs only, 'closed' for closed (merged or unmerged) PRs, or 'all' to catch updates to PRs in any state (e.g., a PR being merged or closed). Defaults to 'all'. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assignees` | array | No | List of GitHub users currently assigned to the pull request. |
| `author_association` | string | No | Author's relationship to the repository: COLLABORATOR, CONTRIBUTOR, FIRST_TIMER, FIRST_TIME_CONTRIBUTOR, MANNEQUIN, MEMBER, NONE, or OWNER. |
| `base` | object | No | Branch information (head or base) for a pull request. |
| `body` | string | No | The description / body of the pull request in markdown format. |
| `closed_at` | string | No | ISO 8601 timestamp when the pull request was closed, null if still open. |
| `created_at` | string | Yes | ISO 8601 timestamp when the pull request was created. |
| `draft` | boolean | Yes | Whether the pull request is marked as a draft. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `head` | object | No | Branch information (head or base) for a pull request. |
| `html_url` | string | Yes | GitHub web interface URL to view the pull request. |
| `id` | integer | Yes | The unique numeric ID of the pull request across all of GitHub. |
| `labels` | array | No | Labels attached to the pull request. |
| `locked` | boolean | Yes | Whether the pull request conversation is locked. |
| `merge_commit_sha` | string | No | SHA of the merge commit. Present before merging as a test-merge SHA; set to the actual merge commit SHA after merge. |
| `merged_at` | string | No | ISO 8601 timestamp when the pull request was merged, null if not merged. |
| `number` | integer | Yes | The pull request number within the repository. |
| `repository_name` | string | Yes | The name of the repository. |
| `repository_owner` | string | Yes | The owner (user or organization) of the repository. |
| `requested_reviewers` | array | No | List of users requested to review the pull request. |
| `state` | string | Yes | Current state of the pull request: 'open' or 'closed'. |
| `title` | string | Yes | The title of the pull request. |
| `updated_at` | string | Yes | ISO 8601 timestamp when the pull request was last updated. |
| `url` | string | Yes | GitHub REST API URL for this pull request. |
| `user` | object | No | GitHub user information attached to a pull request. |

### GitHub Repository README Changed

**Slug:** `GITHUB_README_CHANGED_TRIGGER`

**Type:** poll

Triggers when the README file in a specific repository directory changes.

    Monitors the README in a configurable directory and branch/tag/commit. The
    payload includes the current README metadata (filename, path, SHA, size,
    URLs), the previous and current git blob SHAs, and a list of which tracked
    fields changed.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `dir` | string | No | The directory path within the repository whose README to monitor. Use '.' or leave blank to monitor the root README. For a subdirectory, provide the relative path (e.g. 'docs' or 'src/api'). |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `ref` | string | No | Optional Git ref (branch, tag, or commit SHA) to read the README from. Leave blank to use the repository's default branch. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `changed_fields` | array | No | List of tracked field names that changed since the previous poll. Possible values: 'sha', 'size', 'name', 'path'. |
| `current_sha` | string | No | The git blob SHA observed in the current poll (after the change). |
| `current_snapshot` | object | No | The canonicalised snapshot from the current poll. |
| `dir` | string | Yes | Directory path that was monitored. |
| `download_url` | string | No | URL to download the raw README content. |
| `encoding` | string | No | Encoding used for the README content (typically 'base64'). |
| `event_type` | string | No | Event type identifier. |
| `git_url` | string | No | GitHub API URL to the underlying git blob. |
| `html_url` | string | No | URL to view the README on GitHub. |
| `name` | string | No | Filename of the README (e.g. 'README.md'). |
| `owner` | string | Yes | Owner of the repository. |
| `path` | string | No | Full path of the README within the repository. |
| `previous_sha` | string | No | The git blob SHA observed in the previous poll (before the change). |
| `previous_snapshot` | object | No | The canonicalised snapshot from the previous poll. |
| `repo` | string | Yes | Repository name. |
| `sha` | string | No | Current git blob SHA of the README content. |
| `size` | integer | No | Current size of the README file in bytes. |
| `url` | string | No | GitHub API URL for the README resource. |

### New GitHub Release Asset Added

**Slug:** `GITHUB_RELEASE_ASSET_ADDED_TRIGGER`

**Type:** poll

Triggers when a new asset is added to a specific GitHub release.

    Monitors a single release (identified by release ID) for newly uploaded
    assets such as binaries, archives, or checksum files. One event is emitted
    per new asset, containing full asset metadata.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The GitHub username or organization name that owns the repository (e.g. 'octocat' or 'my-organization'). |
| `release_id` | integer | Yes | The unique numeric identifier of the release to monitor for new assets. You can obtain this by listing releases for the repository. |
| `repo` | string | Yes | The name of the repository that contains the release to monitor (without the .git extension, e.g. 'Hello-World'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `asset_id` | integer | Yes | Unique numeric identifier of the newly added release asset. |
| `browser_download_url` | string | Yes | Direct download URL for the asset accessible in a browser. |
| `content_type` | string | Yes | MIME type of the asset (e.g. 'application/zip', 'text/plain'). |
| `created_at` | string | Yes | ISO 8601 timestamp of when the asset was created. |
| `digest` | string | No | SHA256 hash of the asset file for integrity verification. |
| `download_count` | integer | No | Number of times the asset has been downloaded. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `label` | string | No | An optional label providing additional context for the asset. |
| `name` | string | Yes | The file name of the asset. |
| `node_id` | string | Yes | GraphQL node identifier for the release asset. |
| `owner` | string | Yes | The GitHub username or organization that owns the repository. |
| `release_id` | integer | Yes | The numeric ID of the release this asset belongs to. |
| `repo` | string | Yes | The name of the repository containing this release. |
| `size` | integer | Yes | Size of the asset file in bytes. |
| `state` | string | Yes | State of the release asset (e.g. 'uploaded' or 'open'). |
| `updated_at` | string | Yes | ISO 8601 timestamp of when the asset was last updated. |
| `uploader_id` | integer | No | Numeric GitHub user ID of the uploader. |
| `uploader_login` | string | No | GitHub login (username) of the user who uploaded the asset. |
| `url` | string | Yes | GitHub REST API URL for this release asset. |

### GitHub Release State Changed

**Slug:** `GITHUB_RELEASE_STATE_CHANGED_TRIGGER`

**Type:** poll

Triggers when a specific GitHub release (identified by tag name) changes.

    Monitors the release title, body/notes, draft flag, prerelease flag,
    published timestamp, target branch/commit, and the set of attached assets.
    The payload includes the full current release details, a list of which
    fields changed, and the previous values for comparison.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |
| `tag` | string | Yes | The exact Git tag name of the release to monitor (e.g. 'v1.0.0'). This identifies the specific release by its tag. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `assets` | array | No | Current list of release assets. |
| `body` | string | No | Current release body/notes in markdown format. |
| `changed_fields` | array | Yes | List of field names that changed since the previous poll. Possible values: 'name', 'body', 'draft', 'prerelease', 'published_at', 'target_commitish', 'asset_ids'. |
| `current_snapshot` | object | No | The canonicalised snapshot from the current poll. |
| `draft` | boolean | Yes | Whether the release is currently a draft. |
| `event_type` | string | No | Event type identifier. |
| `html_url` | string | No | Web URL to view the release on GitHub. |
| `name` | string | No | Current release name/title. |
| `owner` | string | Yes | Owner of the repository. |
| `prerelease` | boolean | Yes | Whether the release is currently marked as a prerelease. |
| `previous_snapshot` | object | No | The canonicalised snapshot from the previous poll. |
| `published_at` | string | No | ISO 8601 timestamp when the release was published (null for drafts). |
| `release_id` | integer | No | Numeric ID of the release that changed. |
| `repo` | string | Yes | Repository name. |
| `tag_name` | string | Yes | Git tag name for the release. |
| `target_commitish` | string | Yes | The branch or commit SHA the release tag points to. |

### Repository Content Changed

**Slug:** `GITHUB_REPOSITORY_CONTENT_CHANGED_TRIGGER`

**Type:** poll

Triggers when the content of a file or directory in a GitHub repository
    changes.

    Monitors a specified path within a repository on a given branch or tag.
    For a single file, fires ``content_changed`` when the file is modified.
    For a directory, fires ``content_changed``, ``content_added``, or
    ``content_removed`` for modified, new, or deleted entries respectively.

    content.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `path` | string | No | Path to the file or directory to monitor within the repository. Use an empty string (default) to monitor the root directory. For a specific file use its full path (e.g. 'README.md', 'src/main.py'). For a directory use its path (e.g. 'src', 'docs/api'). |
| `ref` | string | No | The git reference (branch name, tag name, or commit SHA) to monitor. If omitted the repository's default branch is used. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `event_type` | string | Yes | Type of change: 'content_changed', 'content_added', or 'content_removed'. |
| `item` | object | Yes | Metadata snapshot of the content item that changed, was added, or was removed. |
| `monitored_path` | string | Yes | The file or directory path being monitored. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_sha` | string | No | SHA of the item before the change. Non-empty only for 'content_changed' events. |
| `ref` | string | No | The git reference (branch/tag/SHA) that was monitored. Empty string means the repository's default branch was used. |
| `repo` | string | Yes | Repository name. |

### Repository Notification Received

**Slug:** `GITHUB_REPOSITORY_NOTIFICATION_RECEIVED_TRIGGER`

**Type:** poll

Triggers when a new or newly updated notification thread appears for a
    specific GitHub repository.

    Monitors notifications for issues, pull requests, commits, releases,
    check suites, security alerts, and other repository activity. Supports
    filtering by read/unread status and by direct participation.

    Requires a Personal Access Token (classic) with the ``notifications``

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `all` | boolean | No | If true, also return notifications that have already been marked as read. Default (false) shows only unread notifications. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (username or organization). Not case sensitive. |
| `participating` | boolean | No | If true, only return notifications where the authenticated user is directly participating or mentioned. |
| `repo` | string | Yes | The name of the repository (without the .git extension). Not case sensitive. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Notification thread ID. |
| `last_read_at` | string | No | ISO 8601 timestamp of when the thread was last read, or null. |
| `reason` | string | Yes | Reason the authenticated user received the notification (e.g., subscribed, mentioned, author, assign, review_requested, comment, ci_activity, security_alert, state_change, team_mention). |
| `repository` | object | Yes | Repository the notification belongs to. |
| `subject` | object | Yes | Subject of the notification thread. |
| `subscription_url` | string | Yes | API URL for managing the thread subscription. |
| `unread` | boolean | Yes | Whether the notification thread is unread. |
| `updated_at` | string | Yes | ISO 8601 timestamp of when the notification thread was last updated. |
| `url` | string | Yes | API URL for this notification thread. |

### New Repository Tag Created

**Slug:** `GITHUB_REPOSITORY_TAG_CREATED_TRIGGER`

**Type:** poll

Triggers when a new tag is created in a GitHub repository.

    Monitors the repository's tags and fires an event for each newly created
    tag. The payload includes the tag name, the commit SHA and URL it points
    to, and archive download URLs.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `commit_sha` | string | Yes | The SHA of the commit the tag points to. |
| `commit_url` | string | Yes | The API URL of the commit the tag points to. |
| `event_type` | string | No | Type of event that occurred. |
| `node_id` | string | Yes | The GraphQL node ID of the tag reference. |
| `owner` | string | Yes | Owner of the repository. |
| `repo` | string | Yes | Repository name. |
| `tag_name` | string | Yes | The name of the newly created tag. |
| `tarball_url` | string | Yes | URL to download a tarball archive of the repository at this tag. |
| `zipball_url` | string | Yes | URL to download a zipball archive of the repository at this tag. |

### New Secret Scanning Alert Detected

**Slug:** `GITHUB_SECRET_SCANNING_ALERT_DETECTED_TRIGGER`

**Type:** poll

Triggers when a new secret scanning alert is detected in a GitHub repository.

    Monitors open secret scanning alerts and fires an event for each newly
    detected alert. Supports filtering by secret type (e.g., personal access
    tokens, AWS keys) and by token validity status (active, inactive, unknown).

    The payload includes the alert number, secret type, validity status,
    resolution state, timestamps, URLs, and flags for push protection bypass,
    public exposure, and multi-repo detection.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository. The name is not case sensitive. |
| `repo` | string | Yes | The name of the repository without the .git extension. The name is not case sensitive. |
| `secret_type` | string | No | Comma-separated list of secret types to filter by (e.g., 'github_personal_access_token,aws_access_key_id'). Leave empty to monitor all secret types. |
| `validity` | string ("active" | "inactive" | "unknown") | No | Filter by token validity status: 'active' (token still valid), 'inactive' (token revoked/expired), or 'unknown'. Leave empty to monitor all validity states. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `created_at` | string | No | The ISO 8601 timestamp when the alert was created. |
| `html_url` | string | No | The GitHub web URL for the alert. |
| `locations_url` | string | No | The REST API URL for the locations where the secret was detected. |
| `multi_repo` | boolean | No | Whether the secret was found in multiple repositories. |
| `number` | integer | No | The security alert number identifier. |
| `publicly_leaked` | boolean | No | Whether the secret was found publicly exposed. |
| `push_protection_bypassed` | boolean | No | Whether push protection was bypassed for this secret. |
| `push_protection_bypassed_at` | string | No | The ISO 8601 timestamp when push protection was bypassed. |
| `resolution` | string | No | The resolution when the alert is resolved: 'false_positive', 'wont_fix', 'revoked', 'pattern_edited', 'pattern_deleted', or 'used_in_tests'. |
| `resolved_at` | string | No | The ISO 8601 timestamp when the alert was resolved, if applicable. |
| `secret_type` | string | No | The type of secret that was detected (e.g., 'github_personal_access_token', 'aws_access_key_id'). |
| `secret_type_display_name` | string | No | The human-readable display name of the secret type. |
| `state` | string | No | The state of the alert: 'open' or 'resolved'. |
| `updated_at` | string | No | The ISO 8601 timestamp when the alert was last updated. |
| `url` | string | No | The REST API URL for the alert. |
| `validity` | string | No | The validity status of the detected token: 'active', 'inactive', or 'unknown'. |

### Star Added Event

**Slug:** `GITHUB_STAR_ADDED_EVENT`

**Type:** webhook

Triggered when a new star is added to the repository.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `owner` | string | Yes | Owner of the repository |
| `repo` | string | Yes | Repository name |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string | Yes | The action that was performed on the star |
| `repository_id` | integer | Yes | The unique ID assigned to the repository |
| `repository_name` | string | Yes | The name of the repository |
| `repository_url` | string | Yes | The GitHub URL of the repository |
| `starred_at` | string | Yes | The timestamp when the star was added |
| `starred_by` | string | Yes | The GitHub username of the user who added the star |

### New GitHub Actions Workflow Added

**Slug:** `GITHUB_WORKFLOW_ADDED_TRIGGER`

**Type:** poll

Triggers when a new GitHub Actions workflow is added to a repository.

    Monitors a repository's GitHub Actions workflows and fires an event for
    each newly added workflow. The payload includes the workflow's name, file
    path, state, creation and update timestamps, and URLs for the API, web
    interface, and status badge.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The GitHub username or organization name that owns the repository (e.g. 'octocat' or 'my-organization'). |
| `repo` | string | Yes | The name of the repository to monitor for new workflows (without the .git extension, e.g. 'Hello-World'). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `badge_url` | string | Yes | URL for the workflow status badge image. |
| `created_at` | string | Yes | ISO 8601 timestamp of when the workflow was created. |
| `deleted_at` | string | No | ISO 8601 timestamp of when the workflow was deleted, or null if not deleted. |
| `event_type` | string | No | Type of event that occurred. |
| `html_url` | string | Yes | GitHub web interface URL where the workflow can be viewed. |
| `name` | string | Yes | The name of the workflow as defined in the workflow file. |
| `node_id` | string | Yes | GraphQL node identifier for the workflow. |
| `owner` | string | Yes | The GitHub username or organization that owns the repository. |
| `path` | string | Yes | The path to the workflow file within the repository (e.g. '.github/workflows/ci.yaml'). |
| `repo` | string | Yes | The name of the repository the workflow was added to. |
| `state` | string | Yes | Current state of the workflow. Possible values: active, deleted, disabled_fork, disabled_inactivity, disabled_manually. |
| `updated_at` | string | Yes | ISO 8601 timestamp of when the workflow was last updated. |
| `url` | string | Yes | API endpoint URL for accessing this specific workflow. |
| `workflow_id` | integer | Yes | Unique numeric identifier of the newly added workflow. |

### New Workflow Job Added

**Slug:** `GITHUB_WORKFLOW_JOB_ADDED_TRIGGER`

**Type:** poll

Triggers when a new job appears in a specific GitHub Actions workflow run.

    This is useful for detecting matrix-expanded jobs that are added after the
    initial workflow run creation, or any other scenario where jobs are
    dynamically added to an existing run.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft').  Not case-sensitive. |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project').  Not case-sensitive. |
| `run_id` | integer | Yes | The unique identifier of the workflow run to monitor.  You can find this in the URL of the workflow run page on GitHub (e.g. https://github.com/owner/repo/actions/runs/123456789). |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `check_run_url` | string | Yes | The API URL of the check run associated with this job. |
| `completed_at` | string | No | ISO 8601 timestamp of when the job completed. |
| `conclusion` | string | No | The outcome of the job after completion (e.g. success, failure).  Null if the job has not concluded. |
| `created_at` | string | Yes | ISO 8601 timestamp of when the job was created. |
| `event_type` | string | No | Type of event that occurred. |
| `head_branch` | string | No | The branch name associated with this job. |
| `head_sha` | string | Yes | The SHA of the commit being built in this job. |
| `html_url` | string | No | The GitHub URL to view the job in the browser. |
| `job_id` | integer | Yes | The unique identifier of the job. |
| `job_name` | string | Yes | The display name of the job. |
| `job_url` | string | Yes | The API URL to retrieve details about this job. |
| `labels` | array | No | Runner labels used to identify the type of runner for this job. |
| `node_id` | string | Yes | The GraphQL node identifier for this job. |
| `owner` | string | Yes | Owner of the repository. |
| `repo` | string | Yes | Repository name. |
| `run_attempt` | integer | No | The attempt number of the associated workflow run, starting at 1. |
| `run_id` | integer | Yes | The workflow run ID this job belongs to. |
| `run_url` | string | Yes | The API URL of the workflow run. |
| `runner_group_id` | integer | No | The identifier of the runner group executing this job. |
| `runner_group_name` | string | No | The name of the runner group executing this job. |
| `runner_id` | integer | No | The identifier of the runner executing this job. |
| `runner_name` | string | No | The name of the runner executing this job. |
| `started_at` | string | Yes | ISO 8601 timestamp of when the job started. |
| `status` | string | Yes | The current lifecycle phase of the job (e.g. queued, in_progress, completed). |
| `steps` | array | No | The individual steps that make up this job. |
| `workflow_name` | string | No | The name of the workflow this job is part of. |

### Workflow Job State Changed

**Slug:** `GITHUB_WORKFLOW_JOB_STATE_CHANGED`

**Type:** poll

Triggers when the status, conclusion, timestamps, runner assignment, or step
    details of a specific GitHub Actions workflow job change between polls.

    The payload includes the full current job state, a list of which fields
    changed, and the previous status/conclusion values for easy comparison.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `job_id` | integer | Yes | The unique numerical identifier of the GitHub Actions workflow job to monitor. You can find the job ID from the GitHub Actions UI URL or via the List Jobs for a Workflow Run API. |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). Do not include the repository name here. |
| `repo` | string | Yes | The name of the repository that contains the workflow job to watch. Do not include the owner prefix. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `changed_fields` | array | No | List of field names that changed compared to the previous snapshot. Empty on the very first event (initial state capture is skipped). |
| `check_run_url` | string | Yes | GitHub REST API URL for the check run. |
| `completed_at` | string | No | ISO 8601 timestamp when the job finished. Null if still running. |
| `conclusion` | string | No | Outcome of the job after completion: success, failure, neutral, cancelled, skipped, timed_out, or action_required. Null while running. |
| `created_at` | string | Yes | ISO 8601 timestamp when the job was created. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `head_branch` | string | No | Branch the job ran on. |
| `head_sha` | string | Yes | SHA of the commit being run. |
| `html_url` | string | Yes | GitHub web UI URL to view this job. |
| `job_id` | integer | Yes | Unique numeric identifier of the workflow job. |
| `labels` | array | No | Runner labels from the runs-on attribute. |
| `name` | string | Yes | Name of the job. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_conclusion` | string | No | Previous job conclusion before this change. |
| `previous_status` | string | No | Previous job status before this change. |
| `repo` | string | Yes | Repository name. |
| `run_attempt` | integer | No | Attempt number of the parent workflow run. |
| `run_id` | integer | Yes | ID of the parent workflow run. |
| `runner_group_id` | integer | No | ID of the runner group. Null while queued. |
| `runner_group_name` | string | No | Name of the runner group. Null while queued. |
| `runner_id` | integer | No | ID of the runner executing the job. Null while queued. |
| `runner_name` | string | No | Name of the runner executing the job. Null while queued. |
| `started_at` | string | Yes | ISO 8601 timestamp when the job started. |
| `status` | string | Yes | Current status of the job: queued, in_progress, or completed. |
| `steps` | array | No | Current step details for the job. |
| `url` | string | Yes | GitHub REST API URL for this job. |
| `workflow_name` | string | No | Name of the workflow. |

### New Artifact Added to Workflow Run

**Slug:** `GITHUB_WORKFLOW_RUN_ARTIFACT_ADDED`

**Type:** poll

Triggers when a new artifact is uploaded to a specific GitHub Actions workflow run.

    Monitors a single workflow run for newly added artifacts such as build outputs,
    test results, or coverage reports. Each new artifact detected fires a separate
    event.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | Account owner of the repository (GitHub username or organization name). |
| `repo` | string | Yes | Repository name without the .git extension. |
| `run_id` | integer | Yes | Unique identifier of the workflow run to monitor for new artifacts. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `archive_download_url` | string | Yes | Direct URL to download the artifact archive as a ZIP file. |
| `created_at` | string | No | Timestamp when the artifact was created. |
| `digest` | string | No | SHA256 digest of the artifact (available for upload-artifact v4+). |
| `expired` | boolean | Yes | Whether or not the artifact has expired. |
| `expires_at` | string | No | Timestamp when the artifact will expire. |
| `id` | integer | Yes | Unique identifier for the artifact. |
| `name` | string | Yes | The name of the artifact. |
| `node_id` | string | Yes | GraphQL node identifier for the artifact. |
| `size_in_bytes` | integer | Yes | The size in bytes of the artifact. |
| `updated_at` | string | No | Timestamp when the artifact was last updated. |
| `url` | string | Yes | API URL for accessing the artifact. |
| `workflow_run` | object | No | Metadata about the workflow run that created the artifact. |

### New Workflow Run Created

**Slug:** `GITHUB_WORKFLOW_RUN_CREATED`

**Type:** poll

Triggers when a new workflow run is created in a GitHub repository.

    Monitors the repository for any new workflow runs and fires an event for
    each one. Optional filters allow narrowing to a specific branch, actor,
    or event type.

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `actor` | string | No | Filter workflow runs triggered by a specific GitHub user login. Leave blank to monitor runs triggered by any user. |
| `branch` | string | No | Filter workflow runs to a specific branch name. Leave blank to monitor runs on all branches. |
| `event` | string | No | Filter workflow runs triggered by a specific event type (e.g. 'push', 'pull_request', 'schedule'). Leave blank to monitor runs triggered by any event. |
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | The account owner of the repository (GitHub username or organization name). Do not include the repository name here. |
| `repo` | string | Yes | The name of the repository to watch for new workflow runs. Do not include the owner prefix. |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `actor` | object | No | GitHub user who triggered the workflow run. |
| `conclusion` | string | No | Conclusion of the workflow run (null if not completed). |
| `created_at` | string | Yes | ISO 8601 timestamp when the workflow run was created. |
| `display_title` | string | No | Event-specific title associated with the run or the value of run-name if set in the workflow file. |
| `event` | string | No | Name of the event that triggered the workflow run. |
| `event_type` | string | No | Event type identifier for this trigger. |
| `head_branch` | string | No | Name of the branch that triggered the workflow run. |
| `head_sha` | string | No | SHA of the commit that triggered the workflow run. |
| `html_url` | string | No | GitHub web UI URL to view the workflow run. |
| `jobs_url` | string | No | API URL to retrieve jobs for this workflow run. |
| `logs_url` | string | No | API URL to download logs for this workflow run. |
| `name` | string | No | Name of the workflow run. |
| `node_id` | string | Yes | GraphQL node ID for the workflow run. |
| `owner` | string | Yes | Owner of the repository. |
| `path` | string | No | Path to the workflow file in the repository. |
| `repo` | string | Yes | Repository name. |
| `run_attempt` | integer | No | Attempt number of this run (increments with re-runs). |
| `run_id` | integer | Yes | Unique numeric identifier of the workflow run. |
| `run_number` | integer | Yes | Sequential run number for this workflow. |
| `run_started_at` | string | No | ISO 8601 timestamp when the workflow run actually started execution. |
| `status` | string | No | Current status of the workflow run. |
| `updated_at` | string | No | ISO 8601 timestamp when the workflow run was last updated. |
| `url` | string | No | GitHub REST API URL for this workflow run. |
| `workflow_id` | integer | No | ID of the workflow definition. |

### GitHub Workflow Run State Changed

**Slug:** `GITHUB_WORKFLOW_RUN_STATE_CHANGED_TRIGGER`

**Type:** poll

Triggers when a GitHub Actions workflow run's status or conclusion changes.

    Monitors a single workflow run and fires an event whenever it transitions
    between states (e.g., queued to in_progress, or in_progress to completed)
    or when its conclusion is set (e.g., success, failure, cancelled).

#### Configuration

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `interval` | number | No | Periodic Interval to Check for Updates & Send a Trigger in Minutes |
| `owner` | string | Yes | GitHub username or organisation that owns the repository (e.g. 'octocat' or 'microsoft'). |
| `repo` | string | Yes | Repository name without the .git extension (e.g. 'Hello-World' or 'my-project'). |
| `run_id` | integer | Yes | The unique numeric identifier of the workflow run to monitor. You can find this in the URL of a workflow run on GitHub: https://github.com/{owner}/{repo}/actions/runs/{run_id} |

#### Payload

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `changed_fields` | array | No | List of state field names that changed since the previous poll. Possible values: 'status', 'conclusion'. |
| `conclusion` | string | No | Current conclusion of the workflow run. One of: success, failure, neutral, cancelled, skipped, timed_out, action_required, or null if not yet completed. |
| `created_at` | string | No | Timestamp when the workflow run was created (ISO 8601). |
| `current_snapshot` | object | No | The canonicalised state snapshot from the current poll. |
| `display_title` | string | No | Display title of the workflow run. |
| `event` | string | No | The event that triggered the workflow run. |
| `event_type` | string | No | Event type identifier. |
| `head_branch` | string | No | Name of the branch the workflow ran on. |
| `head_sha` | string | No | SHA of the head commit that triggered the workflow run. |
| `html_url` | string | No | URL to view the workflow run on GitHub. |
| `name` | string | No | Name of the workflow. |
| `owner` | string | Yes | Owner of the repository. |
| `previous_conclusion` | string | No | The conclusion observed in the previous poll (before the change). |
| `previous_snapshot` | object | No | The canonicalised state snapshot from the previous poll. |
| `previous_status` | string | No | The status observed in the previous poll (before the change). |
| `repo` | string | Yes | Repository name. |
| `run_attempt` | integer | No | Attempt number of the run (1 for first attempt). |
| `run_id` | integer | Yes | Unique identifier of the workflow run. |
| `run_number` | integer | No | Auto-incrementing run number for the workflow. |
| `run_started_at` | string | No | Timestamp when the workflow run started (ISO 8601). |
| `status` | string | No | Current status of the workflow run. One of: queued, in_progress, completed, waiting, requested, pending. |
| `updated_at` | string | No | Timestamp when the workflow run was last updated (ISO 8601). |
