[
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_AVAILABLE_MACHINE_TYPES_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for listing available machine types for GitHub Codespaces in a repository.",
"properties": {
"client_ip": {
"description": "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.",
"title": "Client Ip",
"type": "string"
},
"location": {
"description": "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.",
"examples": [
"EastUs",
"WestUs",
"EuropeWest"
],
"title": "Location",
"type": "string"
},
"owner": {
"description": "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.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"ref": {
"description": "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.",
"examples": [
"main",
"develop",
"v1.0.0",
"07a006b914801f699926087f317a910f07610547"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. The name is not case sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListAvailableMachineTypesForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists branches for an existing GitHub repository, with an option to filter by protection status.",
"name": "GITHUB_LIST_BRANCHES",
"parameters": {
"description": "Request schema for listing branches in a GitHub repository.",
"properties": {
"owner": {
"description": "Account owner's username (case-insensitive).",
"examples": [
"octocat",
"torvalds"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number for paginated results.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"title": "Per Page",
"type": "integer"
},
"protected": {
"description": "Filter by protection status: `true` for protected, `false` for unprotected; omit for all branches.",
"title": "Protected",
"type": "boolean"
},
"repo": {
"description": "Repository name, excluding `.git` extension (case-insensitive).",
"examples": [
"Spoon-Knife",
"linux"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListBranchesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists branches in an accessible repository where the provided commit SHA is the head, useful for identifying development lines based on that commit.",
"name": "GITHUB_LIST_BRANCHES_FOR_HEAD_COMMIT",
"parameters": {
"description": "Request schema to list branches where a specific commit is the head.",
"properties": {
"commit_sha": {
"description": "The full SHA-1 hash of the commit. This action will find branches where this commit is the most recent one (the head).",
"examples": [
"c5b97d5ae6c19d5c5df71a34c7fbeeda2479ccbc",
"0123456789abcdef0123456789abcdef01234567"
],
"title": "Commit Sha",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (e.g., a user or organization). This name is not case-sensitive.",
"examples": [
"octocat",
"my-github-org"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Hello-World",
"my-repository"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"commit_sha"
],
"title": "ListBranchesForHeadCommitRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists annotations for a specific check run in a GitHub repository, detailing issues like errors or warnings on particular code lines.",
"name": "GITHUB_LIST_CHECK_RUN_ANNOTATIONS",
"parameters": {
"description": "Request schema for listing annotations for a check run in a GitHub repository.",
"properties": {
"check_run_id": {
"description": "The unique identifier of the check run for which annotations are to be listed.",
"examples": [
21031067,
12345
],
"title": "Check Run Id",
"type": "integer"
},
"owner": {
"description": "The account owner of the repository. This is typically the username or organization name. The name is not case sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "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.",
"examples": [
1,
2,
5
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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.",
"examples": [
30,
50,
100
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. The name is not case sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"check_run_id"
],
"title": "ListCheckRunAnnotationsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_CHECK_RUNS_FOR_A_REF",
"parameters": {
"properties": {
"app_id": {
"description": "Filter by GitHub App identifier.",
"examples": [
12345
],
"title": "App Id",
"type": "integer"
},
"check_name": {
"description": "Filters results to check runs with the specified name.",
"examples": [
"build",
"test",
"lint"
],
"title": "Check Name",
"type": "string"
},
"filter": {
"default": "latest",
"description": "Filter by completion timestamp: 'latest' returns the most recent check runs, 'all' returns all check runs.",
"examples": [
"latest",
"all"
],
"title": "Filter",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (username or organization name). Case-insensitive.",
"examples": [
"octocat",
"microsoft"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch.",
"examples": [
1,
2,
3
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page, maximum 100.",
"examples": [
10,
30,
100
],
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "The git reference - can be a commit SHA, branch name, or tag name.",
"examples": [
"main",
"develop",
"v1.0.0",
"d6fde92930d4715a2b49857d24b940956b26d2d3"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository without .git extension. Case-insensitive.",
"examples": [
"hello-world",
"vscode"
],
"title": "Repo",
"type": "string"
},
"status": {
"description": "Filter by check run status: queued, in_progress, or completed.",
"examples": [
"queued",
"in_progress",
"completed"
],
"title": "Status",
"type": "string"
}
},
"required": [
"owner",
"repo",
"ref"
],
"title": "ListCheckRunsForARefRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists check runs for a specific check suite in a GitHub repository, optionally filtering by check name or status.",
"name": "GITHUB_LIST_CHECK_RUNS_IN_A_CHECK_SUITE",
"parameters": {
"description": "Request schema for `ListCheckRunsInACheckSuite`",
"properties": {
"check_name": {
"description": "Filter check runs by this name; returns all names if omitted.",
"examples": [
"LinterTest",
"unit-tests"
],
"title": "Check Name",
"type": "string"
},
"check_suite_id": {
"description": "Numeric ID of the check suite.",
"examples": [
1234567890
],
"title": "Check Suite Id",
"type": "integer"
},
"filter": {
"default": "latest",
"description": "Filter by `completed_at` timestamp: 'latest' for most recent, 'all' for all check runs.",
"enum": [
"latest",
"all"
],
"examples": [
"latest",
"all"
],
"title": "Filter",
"type": "string"
},
"owner": {
"description": "Username or organization name of the repository owner (case-insensitive).",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch (starts at 1).",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of check runs per page (max 100).",
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "Repository name, without the `.git` extension (case-insensitive).",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
},
"status": {
"description": "Filter check runs by status; returns all statuses if omitted.",
"enum": [
"queued",
"in_progress",
"completed"
],
"examples": [
"queued",
"in_progress",
"completed"
],
"title": "StatusEnm",
"type": "string"
}
},
"required": [
"owner",
"repo",
"check_suite_id"
],
"title": "ListCheckRunsInACheckSuiteRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_CHECK_SUITES_FOR_A_GIT_REFERENCE",
"parameters": {
"description": "Request schema for `ListCheckSuitesForAGitReference`",
"properties": {
"app_id": {
"description": "Filters check suites by the `id` of the GitHub App that created them. If omitted, check suites from all apps are returned.",
"title": "App Id",
"type": "integer"
},
"check_name": {
"description": "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.",
"title": "Check Name",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (username or organization name). This name is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch (1-indexed).",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "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.",
"examples": [
"main",
"heads/feature-branch",
"tags/v1.2.3",
"066d8ef129c1eb7c2756098a52604399d4577551"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"ref"
],
"title": "ListCheckSuitesForAGitReferenceRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists the immediate child teams of a parent team within an organization.",
"name": "GITHUB_LIST_CHILD_TEAMS",
"parameters": {
"description": "Request schema for listing immediate child teams of a parent team within an organization.",
"properties": {
"org": {
"description": "The organization name (not case-sensitive).",
"examples": [
"octo-org"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to retrieve.",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"team_slug": {
"description": "The slug (URL-friendly version) of the parent team's name.",
"examples": [
"justice-league"
],
"title": "Team Slug",
"type": "string"
}
},
"required": [
"org",
"team_slug"
],
"title": "ListChildTeamsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists GitHub Classrooms to which the authenticated user has administrative access.",
"name": "GITHUB_LIST_CLASSROOMS",
"parameters": {
"description": "Pagination parameters for listing classrooms.",
"properties": {
"page": {
"default": 1,
"description": "Page number for the results.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"title": "ListClassroomsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists syntax errors in a repository's CODEOWNERS file, which must be located at the root, `.github/`, or `docs/` directory for the specified ref.",
"name": "GITHUB_LIST_CODEOWNERS_ERRORS",
"parameters": {
"description": "Parameters to specify the repository and the ref for checking its CODEOWNERS file.",
"properties": {
"owner": {
"description": "Username of the account owning the repository (not case-sensitive).",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"ref": {
"description": "Branch name, tag, or commit SHA for the CODEOWNERS file; defaults to the repository's default branch if unspecified.",
"examples": [
"main",
"v1.0.0",
"c7615726cb55b377c824671ea10ea0e7c695b5f7"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "Name of the repository, without the `.git` extension (not case-sensitive).",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCodeownersErrorsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all CodeQL databases for a repository where CodeQL analysis has been previously run and completed.",
"name": "GITHUB_LIST_CODEQL_DATABASES_FOR_A_REPOSITORY",
"parameters": {
"description": "Request model for listing CodeQL databases for a repository.",
"properties": {
"owner": {
"description": "Username of the account owning the repository (not case-sensitive).",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "Name of the repository, without the `.git` extension (not case-sensitive).",
"examples": [
"hello-world",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCodeqlDatabasesForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists code scanning alerts for a GitHub organization; use EITHER `tool_name` OR `tool_guid` if filtering by tool, not both.",
"name": "GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_AN_ORGANIZATION",
"parameters": {
"description": "Defines the parameters for listing code scanning alerts within a GitHub organization.",
"properties": {
"after": {
"description": "A pagination cursor to retrieve results appearing after this.",
"examples": [
"Y3Vyc29yOnYyOpHAAexM3A=="
],
"title": "After",
"type": "string"
},
"before": {
"description": "A pagination cursor to retrieve results appearing before this.",
"examples": [
"Y3Vyc29yOnYyOpHPRb_PyQ=="
],
"title": "Before",
"type": "string"
},
"direction": {
"default": "desc",
"description": "Sort direction.",
"enum": [
"asc",
"desc"
],
"title": "Direction",
"type": "string"
},
"org": {
"description": "The GitHub organization name (case-insensitive).",
"examples": [
"github",
"my-company-org"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number for results. Used if `before` or `after` cursors are not provided.",
"examples": [
"1",
"5",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"severity": {
"description": "Filter alerts by severity.",
"enum": [
"critical",
"high",
"medium",
"low",
"warning",
"note",
"error"
],
"title": "SeverityEnm",
"type": "string"
},
"sort": {
"default": "created",
"description": "Sort field.",
"enum": [
"created",
"updated"
],
"title": "Sort",
"type": "string"
},
"state": {
"description": "Filter alerts by state.",
"enum": [
"open",
"closed",
"dismissed",
"fixed"
],
"title": "StateEnm",
"type": "string"
},
"tool_guid": {
"description": "GUID of the code scanning tool. Some tools may not report a GUID. Cannot be used with `tool_name`.",
"examples": [
"cb192f00-main-32f9-4383-87e8-0f1813000619"
],
"title": "Tool Guid",
"type": "string"
},
"tool_name": {
"description": "Name of the code scanning tool (e.g., 'CodeQL'). Cannot be used with `tool_guid`.",
"examples": [
"CodeQL",
"Snyk"
],
"title": "Tool Name",
"type": "string"
}
},
"required": [
"org"
],
"title": "ListCodeScanningAlertsForAnOrganizationRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for `ListCodeScanningAlertsForARepository`",
"properties": {
"direction": {
"default": "desc",
"description": "Sort direction: `asc` (ascending) or `desc` (descending).",
"enum": [
"asc",
"desc"
],
"title": "Direction",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (username or organization name); not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number for paginated results, starting at 1.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "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.",
"examples": [
"refs/heads/main",
"develop",
"refs/pull/123/merge"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension; not case-sensitive.",
"examples": [
"Hello-World",
"linguist"
],
"title": "Repo",
"type": "string"
},
"severity": {
"description": "Filters alerts by severity.",
"enum": [
"critical",
"high",
"medium",
"low",
"warning",
"note",
"error"
],
"title": "SeverityEnm",
"type": "string"
},
"sort": {
"default": "created",
"description": "Sort property: `created` (alert creation time) or `updated` (last update time).",
"enum": [
"created",
"updated"
],
"title": "Sort",
"type": "string"
},
"state": {
"description": "Filters alerts by state.",
"enum": [
"open",
"closed",
"dismissed",
"fixed"
],
"title": "StateEnm",
"type": "string"
},
"tool_guid": {
"description": "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.",
"examples": [
"01234567-89ab-cdef-0123-456789abcdef"
],
"title": "Tool Guid",
"type": "string"
},
"tool_name": {
"description": "The name of a code scanning tool to filter alerts by; use either `tool_name` or `tool_guid`, not both.",
"examples": [
"CodeQL",
"Semgrep"
],
"title": "Tool Name",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCodeScanningAlertsForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists code scanning analyses for an existing repository, optionally filtering by tool (name or GUID), Git reference, or SARIF ID.",
"name": "GITHUB_LIST_CODE_SCANNING_ANALYSES_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for `ListCodeScanningAnalysesForARepository`",
"properties": {
"direction": {
"default": "desc",
"description": "Direction to sort results. 'asc' for ascending, 'desc' for descending.",
"enum": [
"asc",
"desc"
],
"title": "Direction",
"type": "string"
},
"owner": {
"description": "The account owner of the repository. This name is not case-sensitive.",
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to retrieve.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results to return per page (maximum 100).",
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "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').",
"examples": [
"main",
"refs/heads/develop",
"refs/pull/42/merge"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"title": "Repo",
"type": "string"
},
"sarif_id": {
"description": "Filter analyses to those associated with a specific SARIF upload ID.",
"title": "Sarif Id",
"type": "string"
},
"sort": {
"default": "created",
"description": "Property by which to sort the results. Currently, only 'created' is a supported sort field.",
"enum": [
"created"
],
"title": "Sort",
"type": "string"
},
"tool_guid": {
"description": "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`.",
"examples": [
"01234567-89ab-cdef-0123-456789abcdef"
],
"title": "Tool Guid",
"type": "string"
},
"tool_name": {
"description": "The name of a code scanning tool used to filter analyses. Only results from this tool will be listed. Mutually exclusive with `tool_guid`.",
"examples": [
"CodeQL",
"Dependabot",
"Snyk"
],
"title": "Tool Name",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCodeScanningAnalysesForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves all available codes of conduct from GitHub, often used to select one for a repository.",
"name": "GITHUB_LIST_CODES_OF_CONDUCT",
"parameters": {
"description": "Request to retrieve all codes of conduct; this action requires no input parameters.",
"properties": {},
"title": "ListCodesOfConductRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_CODES_OF_CONDUCT_GRAPHQL",
"parameters": {
"description": "Request parameters for fetching codes of conduct via GitHub GraphQL API.",
"properties": {},
"title": "ListCodesOfConductGraphqlRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all GitHub Codespaces owned by a specified member of a given organization.",
"name": "GITHUB_LIST_CODESPACES_FOR_A_USER_IN_ORGANIZATION",
"parameters": {
"description": "Request schema for `ListCodespacesForAUserInOrganization`",
"properties": {
"org": {
"description": "Name of the GitHub organization (case-insensitive).",
"examples": [
"github",
"my-company-org"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to retrieve (starts from 1).",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of codespaces to return per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"username": {
"description": "GitHub username of the organization member.",
"examples": [
"octocat",
"john-doe"
],
"title": "Username",
"type": "string"
}
},
"required": [
"org",
"username"
],
"title": "ListCodespacesForAUserInOrganizationRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists GitHub Codespaces for the authenticated user, optionally filtering by repository ID and supporting pagination.",
"name": "GITHUB_LIST_CODESPACES_FOR_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Parameters for listing GitHub Codespaces accessible to the authenticated user.",
"properties": {
"page": {
"default": 1,
"description": "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.",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repository_id": {
"description": "If provided, filters codespaces to this repository ID.",
"examples": [
"12345678",
"98765432"
],
"title": "Repository Id",
"type": "integer"
}
},
"title": "ListCodespacesForTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists active/pending GitHub Codespaces for an existing organization; admins list all, members list their own.",
"name": "GITHUB_LIST_CODESPACES_FOR_THE_ORGANIZATION",
"parameters": {
"description": "Request to list Codespaces for a GitHub organization.",
"properties": {
"org": {
"description": "Non-case-sensitive unique identifier of the GitHub organization.",
"examples": [
"github",
"my-organization"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "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)'.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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)'.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"org"
],
"title": "ListCodespacesForTheOrganizationRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_COMMENT_CHANGES",
"parameters": {
"description": "Request parameters for listing comment changes across repositories.",
"properties": {
"org": {
"description": "Organization name to list comment events for. Not case-sensitive.",
"examples": [
"github",
"octocat"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch.",
"examples": [
1,
2,
3
],
"minimum": 1,
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of events to return per page (maximum 100).",
"examples": [
30,
50,
100
],
"maximum": 100,
"minimum": 1,
"title": "Per Page",
"type": "integer"
}
},
"required": [
"org"
],
"title": "ListCommentChangesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all comments for a specific review on a GitHub pull request.",
"name": "GITHUB_LIST_COMMENTS_FOR_A_PULL_REQUEST_REVIEW",
"parameters": {
"description": "Input model for listing comments on a pull request review.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "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).",
"examples": [
"1"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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).",
"examples": [
"50"
],
"title": "Per Page",
"type": "integer"
},
"pull_number": {
"description": "The unique number that identifies the pull request within the repository.",
"examples": [
"123"
],
"title": "Pull Number",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
},
"review_id": {
"description": "The unique identifier of the pull request review.",
"examples": [
"42"
],
"title": "Review Id",
"type": "integer"
}
},
"required": [
"owner",
"repo",
"pull_number",
"review_id"
],
"title": "ListCommentsForAPullRequestReviewRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves all comments for a specific commit in a GitHub repository, supporting pagination.",
"name": "GITHUB_LIST_COMMIT_COMMENTS",
"parameters": {
"description": "Request schema for listing comments on a specific commit in a repository.",
"properties": {
"commit_sha": {
"description": "The SHA hash of the commit for which comments are to be listed.",
"examples": [
"a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"
],
"title": "Commit Sha",
"type": "string"
},
"owner": {
"description": "The account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "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).\"",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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).\"",
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"commit_sha"
],
"title": "ListCommitCommentsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all commit comments for a specified repository, which must exist and be accessible.",
"name": "GITHUB_LIST_COMMIT_COMMENTS_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for `ListCommitCommentsForARepository`",
"properties": {
"owner": {
"description": "The account owner of the repository (not case-sensitive).",
"examples": [
"octocat",
"kubernetes"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch (starts at 1).",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results to return per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension (not case-sensitive).",
"examples": [
"Spoon-Knife",
"website"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCommitCommentsForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_COMMITS",
"parameters": {
"additionalProperties": false,
"description": "Request schema for `ListCommits`. Note: Commits are always returned in reverse chronological order (newest first). Sorting options are not available - do not use 'sort' parameter.",
"properties": {
"author": {
"description": "Filter commits by the commit author's GitHub login or email address.",
"examples": [
"octocat",
"mona@github.com"
],
"title": "Author",
"type": "string"
},
"committer": {
"description": "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.",
"examples": [
"web-flow",
"octocat@github.com"
],
"title": "Committer",
"type": "string"
},
"owner": {
"description": "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.",
"examples": [
"octocat",
"my-organization"
],
"pattern": "^[a-zA-Z0-9]([a-zA-Z0-9-]{0,37}[a-zA-Z0-9])?$|^[a-zA-Z0-9]$",
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch when using pagination.",
"examples": [
"1",
"2"
],
"title": "Page",
"type": "integer"
},
"path": {
"description": "Only commits modifying this specific file path will be returned.",
"examples": [
"README.md",
"src/utils/helpers.py"
],
"title": "Path",
"type": "string"
},
"per_page": {
"default": 1,
"description": "Number of results to return per page (max 100).",
"examples": [
"30",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "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.",
"examples": [
"Spoon-Knife",
"my-project"
],
"pattern": "^[a-zA-Z0-9._-]+$",
"title": "Repo",
"type": "string"
},
"sha": {
"description": "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`).",
"examples": [
"main",
"develop",
"a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0"
],
"title": "Sha",
"type": "string"
},
"since": {
"description": "Only commits created on or after this timestamp will be returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.",
"examples": [
"2023-01-01T00:00:00Z"
],
"title": "Since",
"type": "string"
},
"until": {
"description": "Only commits created before this timestamp will be returned. This is a timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.",
"examples": [
"2023-12-31T23:59:59Z"
],
"title": "Until",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCommitsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists commits for a pull request; requires the repository and pull request to exist and be accessible, and supports pagination.",
"name": "GITHUB_LIST_COMMITS_ON_A_PULL_REQUEST",
"parameters": {
"description": "Request schema for `ListCommitsOnAPullRequest`",
"properties": {
"owner": {
"description": "Account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number of the results to fetch.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of results per page (maximum 100).",
"title": "Per Page",
"type": "integer"
},
"pull_number": {
"description": "The number that identifies the pull request.",
"examples": [
1347
],
"title": "Pull Number",
"type": "integer"
},
"repo": {
"description": "Repository name, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"pull_number"
],
"title": "ListCommitsOnAPullRequestRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a list of commonly used software licenses from GitHub, optionally filtering for 'featured' licenses whose specific selection criteria by GitHub may vary.",
"name": "GITHUB_LIST_COMMONLY_USED_LICENSES",
"parameters": {
"description": "Request schema for retrieving a list of commonly used licenses from GitHub.",
"properties": {
"featured": {
"description": "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.",
"examples": [
true,
false
],
"title": "Featured",
"type": "boolean"
},
"page": {
"default": 1,
"description": "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.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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.",
"examples": [
"20",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"title": "ListCommonlyUsedLicensesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Gets the schema definitions for all custom properties configured for an organization, not the specific values assigned to repositories.",
"name": "GITHUB_LIST_CUSTOM_PROPERTIES_FOR_AN_ORGANIZATION",
"parameters": {
"description": "Request schema for `ListCustomPropertiesForAnOrganization`",
"properties": {
"org": {
"description": "The unique identifier (login name) of the GitHub organization. This name is not case-sensitive.",
"examples": [
"github",
"my-company-org"
],
"title": "Org",
"type": "string"
}
},
"required": [
"org"
],
"title": "ListCustomPropertiesForAnOrganizationRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_A_REPOSITORY",
"parameters": {
"description": "Request schema for `ListCustomPropertyValuesForARepository`",
"properties": {
"owner": {
"description": "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.",
"examples": [
"microsoft",
"github",
"google"
],
"title": "Owner",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife",
"docs"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListCustomPropertyValuesForARepositoryRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists repositories in an organization with their custom property values. Requires 'Custom properties' organization permission (read).",
"name": "GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_ORG_REPOS",
"parameters": {
"description": "Request schema for listing custom property values for repositories in an organization.",
"properties": {
"org": {
"description": "The organization name (login). Not case-sensitive. Example: 'github', 'microsoft'.",
"examples": [
"octo-org",
"github"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results to fetch (default 1).",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100, default 30).",
"title": "Per Page",
"type": "integer"
},
"repository_query": {
"description": "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.",
"examples": [
"is:public language:python",
"archived:false topic:javascript"
],
"title": "Repository Query",
"type": "string"
}
},
"required": [
"org"
],
"title": "ListCustomPropertyValuesForOrgReposRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves a list of webhook deliveries for a specific webhook in an organization, allowing inspection of delivery history and details.",
"name": "GITHUB_LIST_DELIVERIES_FOR_AN_ORGANIZATION_WEBHOOK",
"parameters": {
"description": "Request schema for `ListDeliveriesForAnOrganizationWebhook`",
"properties": {
"cursor": {
"description": "Pagination cursor specifying the starting delivery for the page.",
"examples": [
"vZHVyY29yOnYyOpHOB0hNaCJ6ZQ=="
],
"title": "Cursor",
"type": "string"
},
"hook_id": {
"description": "Unique identifier of the webhook.",
"examples": [
123456789
],
"title": "Hook Id",
"type": "integer"
},
"org": {
"description": "Name of the organization (case-insensitive).",
"examples": [
"github"
],
"title": "Org",
"type": "string"
},
"per_page": {
"default": 30,
"description": "Number of results to return per page (max 100).",
"examples": [
50
],
"title": "Per Page",
"type": "integer"
},
"redelivery": {
"description": "Filter for redeliveries: `true` for only redeliveries, `false` to exclude them.",
"examples": [
true
],
"title": "Redelivery",
"type": "boolean"
}
},
"required": [
"org",
"hook_id"
],
"title": "ListDeliveriesForAnOrganizationWebhookRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves delivery attempts for a specific repository webhook to inspect its history; ensure the webhook ID exists.",
"name": "GITHUB_LIST_DELIVERIES_FOR_A_REPOSITORY_WEBHOOK",
"parameters": {
"description": "Request schema for `ListDeliveriesForARepositoryWebhook`",
"properties": {
"cursor": {
"description": "Specifies the starting delivery for pagination. The `Link` header in the response provides cursors for the next and previous pages.",
"examples": [
"dW5pbFRoZW5EYXRhbWF0aW9u"
],
"title": "Cursor",
"type": "string"
},
"hook_id": {
"description": "The unique identifier of the webhook. This ID can be found in the `X-GitHub-Hook-ID` header of a webhook delivery.",
"examples": [
123456789
],
"title": "Hook Id",
"type": "integer"
},
"owner": {
"description": "The username or organization name that owns the repository. This field is case-insensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"per_page": {
"default": 30,
"description": "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)\".",
"examples": [
50
],
"title": "Per Page",
"type": "integer"
},
"redelivery": {
"description": "If set to `true`, the response will include the latest redelivery attempt for each delivery, rather than the original delivery.",
"examples": [
true
],
"title": "Redelivery",
"type": "boolean"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is case-insensitive.",
"examples": [
"Hello-World"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"hook_id"
],
"title": "ListDeliveriesForARepositoryWebhookRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists deploy SSH keys for a specified repository; the repository must exist.",
"name": "GITHUB_LIST_DEPLOY_KEYS",
"parameters": {
"description": "Specifies the repository and pagination parameters for fetching deploy keys.",
"properties": {
"owner": {
"description": "The account owner of the repository. This name is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number of the results to fetch, starting from 1.",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of deploy keys to return per page. Maximum value is 100.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive.",
"examples": [
"Hello-World",
"my-internal-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListDeployKeysRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all deployment branch policies for a specified environment in a GitHub repository.",
"name": "GITHUB_LIST_DEPLOYMENT_BRANCH_POLICIES",
"parameters": {
"description": "Request to list deployment branch policies for a repository environment.",
"properties": {
"environment_name": {
"description": "Name of the environment; URL encode if it contains special characters (e.g., slashes to `%2F`).",
"examples": [
"production",
"staging%2Ffeature-x"
],
"title": "Environment Name",
"type": "string"
},
"owner": {
"description": "Account owner of the repository; not case sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of results (starts at 1).",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "Repository name, without the `.git` extension; not case sensitive.",
"examples": [
"hello-world"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"environment_name"
],
"title": "ListDeploymentBranchPoliciesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists deployments for a specified repository; repository must exist.",
"name": "GITHUB_LIST_DEPLOYMENTS",
"parameters": {
"description": "Defines the parameters for listing deployments in a repository.",
"properties": {
"environment": {
"description": "Filter by the environment name to which deployed.",
"examples": [
"production",
"staging",
"development"
],
"title": "Environment",
"type": "string"
},
"owner": {
"description": "The account owner of the repository. This name is not case sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "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).\"",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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).\"",
"title": "Per Page",
"type": "integer"
},
"ref": {
"description": "Filter by the ref name (branch, tag, or commit SHA).",
"examples": [
"main",
"users/USERNAME/featureBranch",
"v1.2.3",
"c5b97d5ae6c19d5c5df71a34c7fbeeda2479ccbc"
],
"title": "Ref",
"type": "string"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case sensitive.",
"examples": [
"hello-world"
],
"title": "Repo",
"type": "string"
},
"sha": {
"description": "Filter by the commit SHA recorded when the deployment was created.",
"examples": [
"c5b97d5ae6c19d5c5df71a34c7fbeeda2479ccbc",
"0000000000000000000000000000000000000000"
],
"title": "Sha",
"type": "string"
},
"task": {
"description": "Filter by the task name specified for the deployment.",
"examples": [
"deploy",
"deploy:migrations"
],
"title": "Task",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListDeploymentsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all statuses for a given deployment in a repository.",
"name": "GITHUB_LIST_DEPLOYMENT_STATUSES",
"parameters": {
"description": "Request schema for retrieving the list of statuses for a specific deployment.",
"properties": {
"deployment_id": {
"description": "The unique identifier of the deployment for which statuses are being requested.",
"examples": [
42
],
"title": "Deployment Id",
"type": "integer"
},
"owner": {
"description": "The account owner of the repository. The name is not case sensitive.",
"examples": [
"octocat"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100).",
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository without the `.git` extension. The name is not case sensitive. ",
"examples": [
"Spoon-Knife"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"deployment_id"
],
"title": "ListDeploymentStatusesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_DISCUSSION_COMMENTS",
"parameters": {
"description": "Input model for retrieving comments from a team discussion.",
"properties": {
"direction": {
"default": "desc",
"description": "Sort direction for comments: 'asc' (oldest first) or 'desc' (newest first).",
"enum": [
"asc",
"desc"
],
"title": "Direction",
"type": "string"
},
"discussion_number": {
"description": "The unique number identifying the team discussion.",
"examples": [
42,
153
],
"title": "Discussion Number",
"type": "integer"
},
"org": {
"description": "The organization name (case-insensitive).",
"examples": [
"github",
"octo-org"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of comments per page (max 100).",
"title": "Per Page",
"type": "integer"
},
"team_slug": {
"description": "The team's slug (URL-friendly identifier).",
"examples": [
"justice-league",
"developers"
],
"title": "Team Slug",
"type": "string"
}
},
"required": [
"org",
"team_slug",
"discussion_number"
],
"title": "ListDiscussionCommentsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_DISCUSSIONS",
"parameters": {
"description": "Request to list discussions for a team in an organization.",
"properties": {
"direction": {
"default": "desc",
"description": "Sort direction for results: 'asc' (oldest first) or 'desc' (newest first). Defaults to 'desc'.",
"enum": [
"asc",
"desc"
],
"title": "Direction",
"type": "string"
},
"org": {
"description": "The organization's name (case-insensitive).",
"examples": [
"octo-org",
"my-company"
],
"title": "Org",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number for pagination. Defaults to 1.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100). Defaults to 30.",
"title": "Per Page",
"type": "integer"
},
"pinned": {
"description": "Filter for pinned discussions. Use 'true' to show only pinned discussions. Omit to show all discussions.",
"examples": [
"true"
],
"title": "Pinned",
"type": "string"
},
"team_slug": {
"description": "The team's slug (URL-friendly name).",
"examples": [
"justice-league",
"engineering-team"
],
"title": "Team Slug",
"type": "string"
}
},
"required": [
"org",
"team_slug"
],
"title": "ListDiscussionsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "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.",
"name": "GITHUB_LIST_EMAIL_ADDRESSES_FOR_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Request schema for listing email addresses for the authenticated user.",
"properties": {
"page": {
"default": 1,
"description": "Page number of the results to retrieve.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"title": "ListEmailAddressesForTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all custom deployment protection rule integrations for a repository environment; the `environment_name` must be URL-encoded.",
"name": "GITHUB_LIST_ENVIRONMENT_CUSTOM_DEPLOYMENT_RULES",
"parameters": {
"description": "Request to list custom deployment protection rule integrations for a repository environment.",
"properties": {
"environment_name": {
"description": "Name of the environment, which must be URL-encoded (e.g., slashes `/` replaced with `%2F`).",
"examples": [
"production",
"staging%2Fdev",
"feature%2Fnew-login"
],
"title": "Environment Name",
"type": "string"
},
"owner": {
"description": "Account owner of the repository (user or organization); not case-sensitive.",
"examples": [
"octocat",
"my-organization",
"user123"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch, starting from 1.",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page, with a maximum of 100.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "Name of the repository, without the `.git` extension; not case-sensitive.",
"examples": [
"my-app",
"web-platform",
"DataProcessor"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"environment_name",
"repo",
"owner"
],
"title": "ListEnvironmentCustomDeploymentRulesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Retrieves all deployment environments for a specified repository, which are used to configure protection rules and secrets for different software lifecycle stages.",
"name": "GITHUB_LIST_ENVIRONMENTS",
"parameters": {
"description": "Request schema for retrieving all deployment environments for a repository.",
"properties": {
"owner": {
"description": "The username or organization name that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number of the results to retrieve. Starts from 1.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of results to return per page. Maximum value is 100.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"hello-world",
"my-action-repo"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListEnvironmentsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists the names and metadata (not values) of secrets for a specified, existing environment within an existing GitHub repository.",
"name": "GITHUB_LIST_ENVIRONMENT_SECRETS",
"parameters": {
"description": "Request schema for `ListEnvironmentSecrets`",
"properties": {
"environment_name": {
"description": "Name of the environment; URL-encode if it contains special characters (e.g., '/' becomes '%2F').",
"examples": [
"production",
"staging%2Fapp-server"
],
"title": "Environment Name",
"type": "string"
},
"owner": {
"description": "The account owner's username (case-insensitive).",
"examples": [
"octocat",
"my-organization"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number for results (1-indexed).",
"examples": [
"1",
"2"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of secrets per page (maximum 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "Repository name, without the `.git` extension (case-insensitive).",
"examples": [
"hello-world",
"my-awesome-project"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"environment_name"
],
"title": "ListEnvironmentSecretsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all environment variables, which are plaintext key-value pairs for GitHub Actions workflows, for a specified environment within a GitHub repository.",
"name": "GITHUB_LIST_ENVIRONMENT_VARIABLES",
"parameters": {
"description": "Request schema for listing environment variables in a repository's environment.",
"properties": {
"environment_name": {
"description": "The name of the environment. The name must be URL-encoded. For example, any slashes `/` in the name must be replaced with `%2F`. ",
"examples": [
"production",
"development",
"staging%2Fv1"
],
"title": "Environment Name",
"type": "string"
},
"owner": {
"description": "The account owner of the repository (e.g., a user or organization). This name is not case-sensitive.",
"examples": [
"octocat",
"github"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"examples": [
"1",
"2"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 10,
"description": "Number of results per page (maximum 30).",
"examples": [
"10",
"25",
"30"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This name is not case-sensitive. ",
"examples": [
"hello-world",
"linguist"
],
"title": "Repo",
"type": "string"
}
},
"required": [
"owner",
"repo",
"environment_name"
],
"title": "ListEnvironmentVariablesRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists public events for the specified GitHub user, or private events if authenticated as that user, in reverse chronological order.",
"name": "GITHUB_LIST_EVENTS_FOR_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Request schema for listing events for a specified GitHub user.",
"properties": {
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of events to return per page (maximum 100).",
"title": "Per Page",
"type": "integer"
},
"username": {
"description": "The GitHub username for whom to list events. For example, 'octocat' or 'torvalds'.",
"examples": [
"octocat",
"torvalds"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username"
],
"title": "ListEventsForTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists events a specific GitHub user received from followed users and watched repositories; returns private events if authenticated for `username`, otherwise public.",
"name": "GITHUB_LIST_EVENTS_RECEIVED_BY_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Request schema for listing events received by a GitHub user.",
"properties": {
"page": {
"default": 1,
"description": "Indicates the page number of the results to fetch. For more information, see GitHub's REST API pagination guide.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Specifies the number of events to return per page (maximum 100). For more information, see GitHub's REST API pagination guide.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"username": {
"description": "The GitHub username for whom to fetch received events.",
"examples": [
"octocat",
"torvalds"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username"
],
"title": "ListEventsReceivedByTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists followers for a specified, existing GitHub user.",
"name": "GITHUB_LIST_FOLLOWERS_OF_A_USER",
"parameters": {
"description": "Request schema for listing the followers of a specified GitHub user.",
"properties": {
"page": {
"default": 1,
"description": "Page number for pagination of results (starts at 1).",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100). Used for pagination.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"username": {
"description": "The GitHub username (e.g., 'octocat', 'torvalds').",
"examples": [
"octocat",
"torvalds"
],
"title": "Username",
"type": "string"
}
},
"required": [
"username"
],
"title": "ListFollowersOfAUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists users following the authenticated GitHub user, returning an empty list if the user has no followers.",
"name": "GITHUB_LIST_FOLLOWERS_OF_THE_AUTHENTICATED_USER",
"parameters": {
"description": "Request model for listing followers of the authenticated user, allowing pagination.",
"properties": {
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"title": "ListFollowersOfTheAuthenticatedUserRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists forks for a specified repository, which must exist, with options for sorting and pagination.",
"name": "GITHUB_LIST_FORKS",
"parameters": {
"description": "Parameters for listing repository forks.",
"properties": {
"owner": {
"description": "The username of the account that owns the repository. This field is not case-sensitive.",
"examples": [
"octocat",
"microsoft"
],
"title": "Owner",
"type": "string"
},
"page": {
"default": 1,
"description": "The page number of the results to retrieve, used for pagination. Defaults to 1.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "The number of fork results to return per page. Maximum value is 100. Defaults to 30.",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
},
"repo": {
"description": "The name of the repository, without the `.git` extension. This field is not case-sensitive.",
"examples": [
"Spoon-Knife",
"vscode"
],
"title": "Repo",
"type": "string"
},
"sort": {
"default": "newest",
"description": "The sort order for the returned forks. `stargazers` sorts by the number of stars. Defaults to `newest`.",
"enum": [
"newest",
"oldest",
"stargazers",
"watchers"
],
"examples": [
"newest",
"oldest",
"stargazers",
"watchers"
],
"title": "Sort",
"type": "string"
}
},
"required": [
"owner",
"repo"
],
"title": "ListForksRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists comments for a specified GitHub Gist.",
"name": "GITHUB_LIST_GIST_COMMENTS",
"parameters": {
"description": "Request parameters to list comments on a GitHub Gist.",
"properties": {
"gist_id": {
"description": "The unique identifier of the Gist for which comments are to be listed.",
"examples": [
"039c1767462645fe28f1489919486795"
],
"title": "Gist Id",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"examples": [
"1",
"2",
"5"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of comments to return per page (max 100).",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"gist_id"
],
"title": "ListGistCommentsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all commits for a specified gist.",
"name": "GITHUB_LIST_GIST_COMMITS",
"parameters": {
"description": "Request schema for `ListGistCommits`",
"properties": {
"gist_id": {
"description": "The unique identifier of the gist.",
"examples": [
"aa5a315d61ae9438b18d"
],
"title": "Gist Id",
"type": "string"
},
"page": {
"default": 1,
"description": "Page number of the results to fetch.",
"examples": [
1,
2,
3
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "Number of results per page (maximum 100).",
"examples": [
30,
50,
100
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"gist_id"
],
"title": "ListGistCommitsRequest",
"type": "object"
}
},
"type": "function"
},
{
"function": {
"description": "Lists all forks for a given GitHub gist ID.",
"name": "GITHUB_LIST_GIST_FORKS",
"parameters": {
"description": "Request schema for listing forks of a GitHub gist.",
"properties": {
"gist_id": {
"description": "The unique identifier (ID) of the gist for which to list forks.",
"examples": [
"aa5a315d61ae9438b18d",
"gist_identifier_123"
],
"title": "Gist Id",
"type": "string"
},
"page": {
"default": 1,
"description": "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).\"",
"examples": [
"1",
"2",
"10"
],
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 30,
"description": "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).\"",
"examples": [
"30",
"50",
"100"
],
"title": "Per Page",
"type": "integer"
}
},
"required": [
"gist_id"
],
"title": "ListGistForksRequest",
"type": "object"
}
},
"type": "function"
}
]