# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for GitHub v3 REST Repos API version: 1.0.0 extends: openapi/github-repos-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-24' generator: build-phrasing.py label: Generated by API Evangelist operations: 163 - target: $.paths['/orgs/{org}/repos'].get update: x-apievangelist-phrasing: intent: List an organization's repositories effect: read questions: - What repositories does my GitHub organization own? - Can I list only an org's private or forked repositories? - Which repos in our org were pushed to most recently? instructions: - text: List every repository in the {org} organization. slots: org: path.org - text: Show {type} repositories in {org}, sorted by {sort}. slots: type: query.type org: path.org sort: query.sort method: generated generated: '2026-09-24' - target: $.paths['/orgs/{org}/repos'].post update: x-apievangelist-phrasing: intent: Create a repository in an organization effect: write questions: - How do I create a new repository under my organization rather than my personal account? - Can a new org repo start with a README, a .gitignore template and a license? - Is it possible to make a new organization repository internal instead of public? instructions: - text: Create a repository named {name} in the {org} organization. slots: name: requestBody.name org: path.org - text: Create a {visibility} repo {name} in {org} with a {license_template} license. slots: visibility: requestBody.visibility name: requestBody.name org: path.org license_template: requestBody.license_template method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}'].get update: x-apievangelist-phrasing: intent: Get a repository's details effect: read questions: - Where can I see a repository's default branch, visibility and settings? - What does the API tell me about a single repo's metadata? instructions: - text: Get the details of repository {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show me the default branch and visibility of {owner}/{repo}. slots: owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}'].delete update: x-apievangelist-phrasing: intent: Delete a repository effect: destructive questions: - How do I permanently delete a GitHub repository? - What permission do I need to delete a repo I administer? instructions: - text: Delete the repository {owner}/{repo} permanently. slots: owner: path.owner repo: path.repo - text: Remove the {repo} repository owned by {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}'].patch update: x-apievangelist-phrasing: intent: Update a repository's settings effect: write questions: - Can I rename a repository or change its description through the API? - Is there a way to switch a repo's default branch or turn off its wiki? - Could I turn on delete-branch-on-merge for an existing repository? instructions: - text: Rename repository {owner}/{repo} to {name}. slots: owner: path.owner repo: path.repo name: requestBody.name - text: Change the description of {owner}/{repo} to {description}. slots: owner: path.owner repo: path.repo description: requestBody.description - text: Set the default branch of {owner}/{repo} to {default_branch}. slots: owner: path.owner repo: path.repo default_branch: requestBody.default_branch method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/autolinks'].get update: x-apievangelist-phrasing: intent: List a repository's autolinks effect: read questions: - Which autolink references are configured on my repository? - Can I see all the ticket-number autolinks a repo has set up? instructions: - text: List all autolinks configured on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the autolink references for the {repo} repo owned by {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/autolinks'].post update: x-apievangelist-phrasing: intent: Create an autolink reference effect: write questions: - How do I make ticket IDs like JIRA-123 in commits link to our tracker automatically? - Can an autolink match alphanumeric IDs or only numbers? instructions: - text: Add an autolink on {owner}/{repo} turning {key_prefix} references into links to {url_template}. slots: owner: path.owner repo: path.repo key_prefix: requestBody.key_prefix url_template: requestBody.url_template - text: Create an autolink with prefix {key_prefix} and URL template {url_template} in {owner}/{repo}, alphanumeric set to {is_alphanumeric}. slots: key_prefix: requestBody.key_prefix url_template: requestBody.url_template owner: path.owner repo: path.repo is_alphanumeric: requestBody.is_alphanumeric method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/autolinks/{autolink_id}'].get update: x-apievangelist-phrasing: intent: Get one autolink reference effect: read questions: - What URL template does a specific autolink use? - Can I look up a single autolink by its ID? instructions: - text: Get autolink {autolink_id} from {owner}/{repo}. slots: autolink_id: path.autolink_id owner: path.owner repo: path.repo - text: Show the prefix and URL template of autolink {autolink_id} on {owner}/{repo}. slots: autolink_id: path.autolink_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/autolinks/{autolink_id}'].delete update: x-apievangelist-phrasing: intent: Delete an autolink reference effect: destructive questions: - How do I stop a prefix from being auto-linked in my repository? - Can I remove an autolink I no longer need? instructions: - text: Delete autolink {autolink_id} from {owner}/{repo}. slots: autolink_id: path.autolink_id owner: path.owner repo: path.repo - text: Remove the autolink reference {autolink_id} in the {repo} repo of {owner}. slots: autolink_id: path.autolink_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches'].get update: x-apievangelist-phrasing: intent: List a repository's branches effect: read questions: - What branches exist in this repository? - Can I list only the protected branches of a repo? instructions: - text: List the branches of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show only branches in {owner}/{repo} where protected is {protected}. slots: owner: path.owner repo: path.repo protected: query.protected method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}'].get update: x-apievangelist-phrasing: intent: Get a branch effect: read questions: - Which commit is a given branch pointing at right now? - Is there a way to check if one particular branch is protected? instructions: - text: Get branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show the latest commit on the {branch} branch in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection'].get update: x-apievangelist-phrasing: intent: Get a branch's protection rules effect: read questions: - What protection rules are applied to my main branch? - Can I see the full branch protection configuration in one call? instructions: - text: Get the full protection settings for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show me every protection rule on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection'].put update: x-apievangelist-phrasing: intent: Set a branch's protection rules effect: write questions: - How do I protect a branch so it requires reviews and passing checks before merging? - Can I require a linear history and block force pushes on a branch? - Does replacing branch protection overwrite the users and teams allowed to push? instructions: - text: Protect {branch} in {owner}/{repo} with status checks {required_status_checks} and reviews {required_pull_request_reviews}. slots: branch: path.branch owner: path.owner repo: path.repo required_status_checks: requestBody.required_status_checks required_pull_request_reviews: requestBody.required_pull_request_reviews - text: 'Replace the protection on {branch} in {owner}/{repo}, enforcing it for admins: {enforce_admins}.' slots: branch: path.branch owner: path.owner repo: path.repo enforce_admins: requestBody.enforce_admins - text: Require linear history ({required_linear_history}) on {branch} of {owner}/{repo} in its protection rules. slots: required_linear_history: requestBody.required_linear_history branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection'].delete update: x-apievangelist-phrasing: intent: Remove all protection from a branch effect: destructive questions: - How do I completely unprotect a branch? - Can I drop every protection rule on a branch at once? instructions: - text: Remove all branch protection from {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Unprotect the {branch} branch of {owner}/{repo} entirely. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins'].get update: x-apievangelist-phrasing: intent: Check if admins are bound by protection effect: read questions: - Are repository admins also subject to the protection rules on this branch? - Can I tell whether enforce-for-admins is on for a protected branch? instructions: - text: Check whether admin enforcement is on for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Get the enforce_admins setting of branch {branch} on {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins'].post update: x-apievangelist-phrasing: intent: Enforce branch protection for admins effect: write questions: - How do I make repository admins follow the same branch rules as everyone else? - Can I stop admins from bypassing protection on a branch? instructions: - text: Turn on admin enforcement for branch {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Make admins of {owner}/{repo} obey the protection rules on {branch}. slots: owner: path.owner repo: path.repo branch: path.branch method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins'].delete update: x-apievangelist-phrasing: intent: Stop enforcing protection for admins effect: destructive questions: - How do I let admins bypass branch protection again? - Can I turn off enforce-for-admins on a protected branch? instructions: - text: Turn off admin enforcement on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Let admins of {owner}/{repo} bypass protection on {branch} again. slots: owner: path.owner repo: path.repo branch: path.branch method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews'].get update: x-apievangelist-phrasing: intent: Get required review settings for a branch effect: read questions: - How many approving reviews does this protected branch require? - Does the branch require code owner reviews before merging? instructions: - text: Get the required pull request review settings for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show how many approvals merging into {branch} of {owner}/{repo} needs. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews'].delete update: x-apievangelist-phrasing: intent: Stop requiring reviews on a branch effect: destructive questions: - How do I remove the required-reviews rule from a protected branch? - Can pull requests merge into a branch without any approvals after I drop this rule? instructions: - text: Remove the required pull request reviews rule from {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Stop requiring review approvals on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews'].patch update: x-apievangelist-phrasing: intent: Change required review rules on a branch effect: write questions: - Can I raise the number of required approvals on a protected branch? - Is there a way to dismiss stale reviews automatically when new commits are pushed? - Could I require approval of the most recent push by someone other than the pusher? instructions: - text: Require {required_approving_review_count} approving reviews to merge into {branch} of {owner}/{repo}. slots: required_approving_review_count: requestBody.required_approving_review_count branch: path.branch owner: path.owner repo: path.repo - text: Set require code owner reviews to {require_code_owner_reviews} on {branch} in {owner}/{repo}. slots: require_code_owner_reviews: requestBody.require_code_owner_reviews branch: path.branch owner: path.owner repo: path.repo - text: Turn dismiss stale reviews {dismiss_stale_reviews} for branch {branch} of {owner}/{repo}. slots: dismiss_stale_reviews: requestBody.dismiss_stale_reviews branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_signatures'].get update: x-apievangelist-phrasing: intent: Check if a branch requires signed commits effect: read questions: - Does this protected branch require signed commits? - Can I see whether commit signature verification is enforced on a branch? instructions: - text: Check if signed commits are required on {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Get the commit signature protection status of {branch} on {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_signatures'].post update: x-apievangelist-phrasing: intent: Require signed commits on a branch effect: write questions: - How do I force every commit on a protected branch to be signed? - Can I require GPG or SSH signed commits on main? instructions: - text: Require signed commits on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Turn on commit signature protection for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_signatures'].delete update: x-apievangelist-phrasing: intent: Stop requiring signed commits on a branch effect: destructive questions: - How do I allow unsigned commits on a protected branch again? - Can I switch off the signed-commits requirement? instructions: - text: Stop requiring signed commits on {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Turn off commit signature protection for branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks'].get update: x-apievangelist-phrasing: intent: Get required status checks for a branch effect: read questions: - Which status checks must pass before merging into this branch? - Is the branch required to be up to date before merging? instructions: - text: Get the required status checks protection for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show whether {branch} of {owner}/{repo} is strict about being up to date with required checks. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks'].delete update: x-apievangelist-phrasing: intent: Stop requiring status checks on a branch effect: destructive questions: - How do I remove the required status checks rule from a branch entirely? - Can a branch accept merges without CI passing once I drop this rule? instructions: - text: Remove the required status checks rule from {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Stop requiring any status checks to pass before merging into {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks'].patch update: x-apievangelist-phrasing: intent: Change required status check rules effect: write questions: - Can I require branches to be up to date before they merge? - Is it possible to change which CI checks are required on a protected branch? instructions: - text: Set strict up-to-date checking to {strict} on {branch} in {owner}/{repo}. slots: strict: requestBody.strict branch: path.branch owner: path.owner repo: path.repo - text: Require the checks {checks} to pass before merging into {branch} of {owner}/{repo}. slots: checks: requestBody.checks branch: path.branch owner: path.owner repo: path.repo - text: Update the required status check contexts on {branch} in {owner}/{repo} to {contexts}. slots: branch: path.branch owner: path.owner repo: path.repo contexts: requestBody.contexts method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts'].get update: x-apievangelist-phrasing: intent: List required status check contexts effect: read questions: - What are the names of the status check contexts required on this branch? - Can I get just the list of required check context names for a branch? instructions: - text: List the required status check contexts for {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show the context names required to pass on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts'].put update: x-apievangelist-phrasing: intent: Replace required status check contexts effect: write questions: - Can I overwrite the whole list of required check contexts on a branch in one go? - What happens to existing required contexts when I set a new list? instructions: - text: Replace the required status check contexts on {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Overwrite the full set of required check contexts for branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts'].post update: x-apievangelist-phrasing: intent: Add required status check contexts effect: write questions: - How do I add one more required CI check to a protected branch without touching the others? - Can I append a context to the required checks list? instructions: - text: Add required status check contexts to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Append new contexts to the required checks on branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts'].delete update: x-apievangelist-phrasing: intent: Remove required status check contexts effect: destructive questions: - Can I drop just one required check context from a branch and keep the rest? - How do I stop a retired CI job from being required on a branch? instructions: - text: Remove specific required status check contexts from {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Take a retired context off the required checks list for branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions'].get update: x-apievangelist-phrasing: intent: See who may push to a protected branch effect: read questions: - Who is allowed to push to this protected branch? - Can I see the users, teams and apps with push access on a restricted branch in one response? instructions: - text: Get the push access restrictions on {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show every user, team and app allowed to push to {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions'].delete update: x-apievangelist-phrasing: intent: Remove push restrictions from a branch effect: destructive questions: - How do I let anyone with write access push to a restricted branch again? - Can I lift all push restrictions on a protected branch at once? instructions: - text: Delete all push access restrictions on {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Lift the who-can-push restriction from branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps'].get update: x-apievangelist-phrasing: intent: List apps allowed to push to a branch effect: read questions: - Which GitHub Apps can push to this protected branch? - Does any installed app have push rights on the restricted main branch? instructions: - text: List the apps with push access to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show which GitHub Apps may push to protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps'].put update: x-apievangelist-phrasing: intent: Replace the apps allowed to push to a branch effect: write questions: - Can I swap out the entire list of apps permitted to push to a protected branch? - What happens to apps that already had push access when I set a new app list? instructions: - text: Replace the apps allowed to push to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Reset the app push allowlist on branch {branch} of {owner}/{repo} to a new set. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps'].post update: x-apievangelist-phrasing: intent: Grant an app push access to a branch effect: write questions: - How do I give an installed GitHub App permission to push to a protected branch? - Can I add an app to a branch's push allowlist without removing the others? instructions: - text: Add apps to the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Grant another GitHub App push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps'].delete update: x-apievangelist-phrasing: intent: Revoke an app's push access to a branch effect: destructive questions: - Can I stop a specific GitHub App from pushing to a protected branch? - How do I take an app off a branch's push allowlist? instructions: - text: Remove apps from the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Revoke a GitHub App's push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams'].get update: x-apievangelist-phrasing: intent: List teams allowed to push to a branch effect: read questions: - Which teams can push to this protected branch? - Is my team on the push allowlist for the release branch? instructions: - text: List the teams with push access to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show which teams may push to protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams'].put update: x-apievangelist-phrasing: intent: Replace the teams allowed to push to a branch effect: write questions: - Can I overwrite the whole list of teams that may push to a protected branch? - Does setting a new team list remove teams that could push before? instructions: - text: Replace the teams allowed to push to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Reset the team push allowlist on branch {branch} of {owner}/{repo} to a new set. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams'].post update: x-apievangelist-phrasing: intent: Grant a team push access to a branch effect: write questions: - How do I let another team push to a protected branch? - Can I add a team to a branch's push allowlist while keeping the existing teams? instructions: - text: Add teams to the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Grant one more team push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams'].delete update: x-apievangelist-phrasing: intent: Revoke a team's push access to a branch effect: destructive questions: - Can I stop one team from pushing to a protected branch? - How do I take a team off a restricted branch's push list? instructions: - text: Remove teams from the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Revoke a team's push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users'].get update: x-apievangelist-phrasing: intent: List users allowed to push to a branch effect: read questions: - Which individual people can push to this protected branch? - Am I personally on the push allowlist for a restricted branch? instructions: - text: List the users with push access to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Show which individual people may push to protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users'].put update: x-apievangelist-phrasing: intent: Replace the users allowed to push to a branch effect: write questions: - Can I overwrite the full list of people who may push to a protected branch? - If I set a new user list, do the people already allowed lose push access? instructions: - text: Replace the users allowed to push to {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Reset the individual push allowlist on branch {branch} of {owner}/{repo} to a new set of people. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users'].post update: x-apievangelist-phrasing: intent: Grant a user push access to a branch effect: write questions: - How do I let one more person push directly to a protected branch? - Can I add a user to the push allowlist without touching the existing ones? instructions: - text: Add users to the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Grant another person push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users'].delete update: x-apievangelist-phrasing: intent: Revoke a user's push access to a branch effect: destructive questions: - Can I stop a specific person from pushing to a protected branch? - How do I take someone off a restricted branch's push list? instructions: - text: Remove users from the push allowlist of {branch} in {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo - text: Revoke an individual's push access on protected branch {branch} of {owner}/{repo}. slots: branch: path.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/branches/{branch}/rename'].post update: x-apievangelist-phrasing: intent: Rename a branch effect: write questions: - How do I rename master to main in a repository? - Can I rename a branch through the API without recreating it? instructions: - text: Rename branch {branch} in {owner}/{repo} to {new_name}. slots: branch: path.branch owner: path.owner repo: path.repo new_name: requestBody.new_name - text: Change the name of the {branch} branch on {owner}/{repo} to {new_name}. slots: branch: path.branch owner: path.owner repo: path.repo new_name: requestBody.new_name method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/codeowners/errors'].get update: x-apievangelist-phrasing: intent: Find errors in a CODEOWNERS file effect: read questions: - Is my CODEOWNERS file valid, and which lines have problems? - Can I check the CODEOWNERS file on a branch other than the default? instructions: - text: List the CODEOWNERS errors in {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Check the CODEOWNERS file of {owner}/{repo} at ref {ref} for errors. slots: owner: path.owner repo: path.repo ref: query.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/collaborators'].get update: x-apievangelist-phrasing: intent: List a repository's collaborators effect: read questions: - Who has access to this repository? - Can I list only outside collaborators, or only people with admin permission? instructions: - text: List the collaborators on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show collaborators of {owner}/{repo} with {affiliation} affiliation and {permission} permission. slots: owner: path.owner repo: path.repo affiliation: query.affiliation permission: query.permission method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/collaborators/{username}'].get update: x-apievangelist-phrasing: intent: Check if a user is a collaborator effect: read questions: - Is a given person a collaborator on my repository? - Can I verify someone has access to a repo before assigning them work? instructions: - text: Check whether {username} is a collaborator on {owner}/{repo}. slots: username: path.username owner: path.owner repo: path.repo - text: Confirm that user {username} has access to the {repo} repo of {owner}. slots: username: path.username repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/collaborators/{username}'].put update: x-apievangelist-phrasing: intent: Add a collaborator to a repository effect: write questions: - How do I invite someone to collaborate on my repository? - Can I give a new collaborator only triage or maintain permission? instructions: - text: Add {username} as a collaborator on {owner}/{repo}. slots: username: path.username owner: path.owner repo: path.repo - text: Invite {username} to {owner}/{repo} with {permission} permission. slots: username: path.username owner: path.owner repo: path.repo permission: requestBody.permission method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/collaborators/{username}'].delete update: x-apievangelist-phrasing: intent: Remove a collaborator from a repository effect: destructive questions: - How do I remove someone's access to my repository? - Can I kick a collaborator off a repo through the API? instructions: - text: Remove {username} as a collaborator from {owner}/{repo}. slots: username: path.username owner: path.owner repo: path.repo - text: Revoke {username}'s collaborator access to the {repo} repository of {owner}. slots: username: path.username repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/collaborators/{username}/permission'].get update: x-apievangelist-phrasing: intent: Get a user's permission on a repository effect: read questions: - What permission level does a user have on this repository? - Does this person have admin, write or only read access to the repo? instructions: - text: Get the permission level of {username} on {owner}/{repo}. slots: username: path.username owner: path.owner repo: path.repo - text: Tell me whether {username} has write or admin access to {owner}/{repo}. slots: username: path.username owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/comments'].get update: x-apievangelist-phrasing: intent: List all commit comments in a repository effect: read questions: - Where can I see every comment left on commits across a whole repo? - Can I review all commit comments in a repository, not just one commit's? instructions: - text: List all commit comments across {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every comment left on any commit in the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/comments/{comment_id}'].get update: x-apievangelist-phrasing: intent: Get a commit comment effect: read questions: - Can I fetch one commit comment by its ID? - What did a particular commit comment say and where was it placed? instructions: - text: Get commit comment {comment_id} in {owner}/{repo}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo - text: Show the text of comment {comment_id} on a commit in {owner}/{repo}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/comments/{comment_id}'].delete update: x-apievangelist-phrasing: intent: Delete a commit comment effect: destructive questions: - How do I delete a comment I left on a commit? - Can I remove an inappropriate commit comment from a repository? instructions: - text: Delete commit comment {comment_id} from {owner}/{repo}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo - text: Remove the comment {comment_id} someone left on a commit in {owner}/{repo}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/comments/{comment_id}'].patch update: x-apievangelist-phrasing: intent: Edit a commit comment effect: write questions: - Can I edit the text of a comment I already left on a commit? - Is it possible to fix a typo in an existing commit comment? instructions: - text: Change commit comment {comment_id} in {owner}/{repo} to say {body}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo body: requestBody.body - text: Edit the existing commit comment {comment_id} on {owner}/{repo} with new text {body}. slots: comment_id: path.comment_id owner: path.owner repo: path.repo body: requestBody.body method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits'].get update: x-apievangelist-phrasing: intent: List a repository's commits effect: read questions: - What commits were made to this repo last week? - Can I list only the commits that touched a particular file path? - Which commits did a specific author push to a branch? instructions: - text: List recent commits in {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show commits in {owner}/{repo} by {author} since {since}. slots: owner: path.owner repo: path.repo author: query.author since: query.since - text: List commits on {sha} in {owner}/{repo} that changed {path}. slots: sha: query.sha owner: path.owner repo: path.repo path: query.path method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head'].get update: x-apievangelist-phrasing: intent: Find branches whose tip is a commit effect: read questions: - Which branches currently have this commit as their latest commit? - Can I find out if a commit is the HEAD of any branch? instructions: - text: List branches whose HEAD is commit {commit_sha} in {owner}/{repo}. slots: commit_sha: path.commit_sha owner: path.owner repo: path.repo - text: Find which branches of {owner}/{repo} point at {commit_sha}. slots: owner: path.owner repo: path.repo commit_sha: path.commit_sha method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{commit_sha}/comments'].get update: x-apievangelist-phrasing: intent: List comments on one commit effect: read questions: - What comments were left on a specific commit? - Can I read the review discussion attached to a single commit SHA? instructions: - text: List the comments on commit {commit_sha} in {owner}/{repo}. slots: commit_sha: path.commit_sha owner: path.owner repo: path.repo - text: Show all feedback posted on commit {commit_sha} of {owner}/{repo}. slots: commit_sha: path.commit_sha owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{commit_sha}/comments'].post update: x-apievangelist-phrasing: intent: Comment on a commit effect: write questions: - How do I leave a comment on a commit? - Can I attach a comment to a particular line of a file in a commit? instructions: - text: Comment {body} on commit {commit_sha} in {owner}/{repo}. slots: body: requestBody.body commit_sha: path.commit_sha owner: path.owner repo: path.repo - text: Add a comment {body} on line {line} of {path} in commit {commit_sha} of {owner}/{repo}. slots: body: requestBody.body line: requestBody.line path: requestBody.path commit_sha: path.commit_sha owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{commit_sha}/pulls'].get update: x-apievangelist-phrasing: intent: Find pull requests containing a commit effect: read questions: - Which pull request introduced this commit? - Can I trace a commit SHA back to the PRs it belongs to? instructions: - text: List pull requests associated with commit {commit_sha} in {owner}/{repo}. slots: commit_sha: path.commit_sha owner: path.owner repo: path.repo - text: Find the PR that brought commit {commit_sha} into {owner}/{repo}. slots: commit_sha: path.commit_sha owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{ref}'].get update: x-apievangelist-phrasing: intent: Get a commit and its changes effect: read questions: - What files and lines did a specific commit change? - Can I look up a commit by branch name or tag as well as by SHA? instructions: - text: Get commit {ref} from {owner}/{repo}. slots: ref: path.ref owner: path.owner repo: path.repo - text: Show the diff and changed files for {ref} in {owner}/{repo}. slots: ref: path.ref owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{ref}/status'].get update: x-apievangelist-phrasing: intent: Get the overall CI status of a ref effect: read questions: - Are all the status checks on this commit green? - Can I get a single success, pending or failure state for a branch's latest commit? instructions: - text: Get the combined status for {ref} in {owner}/{repo}. slots: ref: path.ref owner: path.owner repo: path.repo - text: Tell me whether all statuses on {ref} of {owner}/{repo} are passing. slots: ref: path.ref owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/commits/{ref}/statuses'].get update: x-apievangelist-phrasing: intent: List every status posted on a ref effect: read questions: - What individual statuses have been reported on this commit, newest first? - Can I see the full history of status updates for a commit, not just the summary? instructions: - text: List all commit statuses for {ref} in {owner}/{repo}. slots: ref: path.ref owner: path.owner repo: path.repo - text: Show the history of each status reported on {ref} of {owner}/{repo}. slots: ref: path.ref owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/compare/{basehead}'].get update: x-apievangelist-phrasing: intent: Compare two commits or branches effect: read questions: - What changed between two branches or tags? - How far ahead or behind is my feature branch compared with main? instructions: - text: Compare {basehead} in {owner}/{repo}. slots: basehead: path.basehead owner: path.owner repo: path.repo - text: Show the commits and file changes between the two refs in {basehead} for {owner}/{repo}. slots: basehead: path.basehead owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/contents/{path}'].get update: x-apievangelist-phrasing: intent: Read a file or directory from a repository effect: read questions: - How do I read a file's contents from a repository without cloning it? - Can I list what's inside a directory of a repo at a specific branch? instructions: - text: Get the contents of {path} in {owner}/{repo}. slots: path: path.path owner: path.owner repo: path.repo - text: Read {path} from {owner}/{repo} at ref {ref}. slots: path: path.path owner: path.owner repo: path.repo ref: query.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/contents/{path}'].put update: x-apievangelist-phrasing: intent: Create or update a file in a repository effect: write questions: - Can I commit a new file to a repository through the API? - What do I need to supply to overwrite an existing file, like its blob SHA? instructions: - text: Create {path} in {owner}/{repo} with content {content} and commit message {message}. slots: path: path.path owner: path.owner repo: path.repo content: requestBody.content message: requestBody.message - text: Update {path} on branch {branch} of {owner}/{repo} replacing blob {sha} with {content}, message {message}. slots: path: path.path branch: requestBody.branch owner: path.owner repo: path.repo sha: requestBody.sha content: requestBody.content message: requestBody.message method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/contents/{path}'].delete update: x-apievangelist-phrasing: intent: Delete a file from a repository effect: destructive questions: - How do I delete a single file from a repo with a commit? - Which blob SHA do I need to remove a file through the API? instructions: - text: Delete {path} from {owner}/{repo} with blob SHA {sha} and message {message}. slots: path: path.path owner: path.owner repo: path.repo sha: requestBody.sha message: requestBody.message - text: Remove file {path} on branch {branch} of {owner}/{repo}, blob {sha}, commit message {message}. slots: path: path.path branch: requestBody.branch owner: path.owner repo: path.repo sha: requestBody.sha message: requestBody.message method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/contributors'].get update: x-apievangelist-phrasing: intent: List a repository's contributors effect: read questions: - Who has contributed the most commits to this repository? - Can anonymous contributors be included in the contributor list? instructions: - text: List the contributors to {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: 'Show contributors of {owner}/{repo} including anonymous ones: {anon}.' slots: owner: path.owner repo: path.repo anon: query.anon method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments'].get update: x-apievangelist-phrasing: intent: List a repository's deployments effect: read questions: - Which deployments have gone out from this repository? - Can I filter deployments by environment, like only production? instructions: - text: List deployments for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show deployments of {owner}/{repo} to the {environment} environment. slots: owner: path.owner repo: path.repo environment: query.environment - text: List deployments of ref {ref} in {owner}/{repo}. slots: ref: query.ref owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments'].post update: x-apievangelist-phrasing: intent: Create a deployment effect: write questions: - How do I record a new deployment of a branch to staging? - Can a deployment be marked as production or as a transient environment? instructions: - text: Create a deployment of {ref} in {owner}/{repo}. slots: ref: requestBody.ref owner: path.owner repo: path.repo - text: Deploy {ref} of {owner}/{repo} to {environment} with description {description}. slots: ref: requestBody.ref owner: path.owner repo: path.repo environment: requestBody.environment description: requestBody.description method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments/{deployment_id}'].get update: x-apievangelist-phrasing: intent: Get a deployment effect: read questions: - What ref and environment did a particular deployment target? - Can I look up one deployment by its ID? instructions: - text: Get deployment {deployment_id} in {owner}/{repo}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo - text: Show which ref and environment deployment {deployment_id} of {owner}/{repo} used. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments/{deployment_id}'].delete update: x-apievangelist-phrasing: intent: Delete a deployment effect: destructive questions: - How do I delete an old deployment record? - Does a deployment need to be inactive before I can delete it? instructions: - text: Delete deployment {deployment_id} from {owner}/{repo}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo - text: Remove the deployment record {deployment_id} in the {repo} repository of {owner}. slots: deployment_id: path.deployment_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments/{deployment_id}/statuses'].get update: x-apievangelist-phrasing: intent: List a deployment's status history effect: read questions: - What states has a deployment gone through so far? - Can I see when a deployment went from pending to success? instructions: - text: List the statuses of deployment {deployment_id} in {owner}/{repo}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo - text: Show the status history for deployment {deployment_id} of {owner}/{repo}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments/{deployment_id}/statuses'].post update: x-apievangelist-phrasing: intent: Report a deployment's status effect: write questions: - How do I mark a deployment as succeeded or failed? - Can I attach a log URL and an environment URL when updating a deployment's state? instructions: - text: Set deployment {deployment_id} in {owner}/{repo} to {state}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo state: requestBody.state - text: Mark deployment {deployment_id} of {owner}/{repo} as {state} with logs at {log_url}. slots: deployment_id: path.deployment_id owner: path.owner repo: path.repo state: requestBody.state log_url: requestBody.log_url method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}'].get update: x-apievangelist-phrasing: intent: Get one deployment status effect: read questions: - Can I fetch a single status entry of a deployment by its ID? - What did one particular deployment status update report? instructions: - text: Get status {status_id} of deployment {deployment_id} in {owner}/{repo}. slots: status_id: path.status_id deployment_id: path.deployment_id owner: path.owner repo: path.repo - text: Show deployment status entry {status_id} for deployment {deployment_id} on {owner}/{repo}. slots: status_id: path.status_id deployment_id: path.deployment_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/dispatches'].post update: x-apievangelist-phrasing: intent: Trigger a repository dispatch event effect: write questions: - How do I trigger a workflow in a repo from an outside system? - Can I send a custom payload along with a repository_dispatch event? instructions: - text: Send a repository dispatch event of type {event_type} to {owner}/{repo}. slots: event_type: requestBody.event_type owner: path.owner repo: path.repo - text: Fire a {event_type} dispatch on {owner}/{repo} with payload {client_payload}. slots: event_type: requestBody.event_type owner: path.owner repo: path.repo client_payload: requestBody.client_payload method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments'].get update: x-apievangelist-phrasing: intent: List a repository's environments effect: read questions: - What deployment environments are defined for this repository? - Does this repo have a production environment set up? instructions: - text: List the environments of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every deployment environment configured in the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}'].get update: x-apievangelist-phrasing: intent: Get an environment's settings effect: read questions: - What protection rules and reviewers does an environment have? - Can I see the wait timer configured on the production environment? instructions: - text: Get environment {environment_name} in {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo - text: Show the reviewers and wait timer for {environment_name} on {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}'].put update: x-apievangelist-phrasing: intent: Create or update an environment effect: write questions: - How do I add a production environment that needs approval before deploying? - Can I set a wait timer before deployments to an environment proceed? instructions: - text: Create environment {environment_name} in {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo - text: Set a {wait_timer}-minute wait timer on environment {environment_name} of {owner}/{repo}. slots: wait_timer: requestBody.wait_timer environment_name: path.environment_name owner: path.owner repo: path.repo - text: Require reviewers {reviewers} for deployments to {environment_name} in {owner}/{repo}. slots: reviewers: requestBody.reviewers environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}'].delete update: x-apievangelist-phrasing: intent: Delete an environment effect: destructive questions: - How do I delete a deployment environment I no longer use? - Can I remove a staging environment from a repository? instructions: - text: Delete environment {environment_name} from {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo - text: Remove the {environment_name} deployment environment in the {repo} repo of {owner}. slots: environment_name: path.environment_name repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies'].get update: x-apievangelist-phrasing: intent: List an environment's branch policies effect: read questions: - Which branches are allowed to deploy to this environment? - Can I see the branch name patterns that gate an environment? instructions: - text: List the deployment branch policies for {environment_name} in {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo - text: Show which branch patterns may deploy to {environment_name} on {owner}/{repo}. slots: environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies'].post update: x-apievangelist-phrasing: intent: Allow a branch pattern to deploy effect: write questions: - How do I restrict deployments to an environment to release branches only? - Can I add a wildcard branch pattern to an environment's deployment rules? instructions: - text: Allow branches matching {name} to deploy to {environment_name} in {owner}/{repo}. slots: name: requestBody.name environment_name: path.environment_name owner: path.owner repo: path.repo - text: Add deployment branch policy {name} to environment {environment_name} of {owner}/{repo}. slots: name: requestBody.name environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}'].get update: x-apievangelist-phrasing: intent: Get a deployment branch policy effect: read questions: - What branch pattern does a specific deployment branch policy allow? - Can I look up one environment branch policy by ID? instructions: - text: Get deployment branch policy {branch_policy_id} of {environment_name} in {owner}/{repo}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo - text: Show the pattern of branch policy {branch_policy_id} on environment {environment_name} for {owner}/{repo}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}'].put update: x-apievangelist-phrasing: intent: Change a deployment branch policy's pattern effect: write questions: - Can I change the branch pattern of an existing environment policy? - Is it possible to edit a deployment branch rule instead of deleting it? instructions: - text: Change branch policy {branch_policy_id} on {environment_name} in {owner}/{repo} to pattern {name}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo name: requestBody.name - text: Edit existing deployment branch policy {branch_policy_id} of {environment_name}, {owner}/{repo}, to match {name}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo name: requestBody.name method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}'].delete update: x-apievangelist-phrasing: intent: Delete a deployment branch policy effect: destructive questions: - How do I remove a branch pattern from an environment's deployment rules? - Can I delete one branch policy while keeping the others? instructions: - text: Delete branch policy {branch_policy_id} from {environment_name} in {owner}/{repo}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo - text: Remove deployment branch rule {branch_policy_id} on environment {environment_name} of {owner}/{repo}. slots: branch_policy_id: path.branch_policy_id environment_name: path.environment_name owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/forks'].get update: x-apievangelist-phrasing: intent: List a repository's forks effect: read questions: - Who has forked this repository? - Can I sort a repo's forks by stargazers to find the popular ones? instructions: - text: List the forks of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show forks of {owner}/{repo} sorted by {sort}. slots: owner: path.owner repo: path.repo sort: query.sort method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/forks'].post update: x-apievangelist-phrasing: intent: Fork a repository effect: write questions: - How do I fork a repository into my organization? - Can I fork only the default branch and give the fork a different name? instructions: - text: Fork {owner}/{repo} into my account. slots: owner: path.owner repo: path.repo - text: Fork {owner}/{repo} into the {organization} organization as {name}. slots: owner: path.owner repo: path.repo organization: requestBody.organization name: requestBody.name method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks'].get update: x-apievangelist-phrasing: intent: List a repository's webhooks effect: read questions: - Which webhooks are installed on my repository? - Can I see all the hooks a repo sends events to? instructions: - text: List the webhooks on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every webhook configured for the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks'].post update: x-apievangelist-phrasing: intent: Create a repository webhook effect: write questions: - How do I get notified at my own URL whenever someone pushes to a repo? - Can a new webhook subscribe to pull request events only? instructions: - text: Create a webhook on {owner}/{repo} with config {config}. slots: owner: path.owner repo: path.repo config: requestBody.config - text: Add a webhook to {owner}/{repo} for events {events} using config {config}. slots: owner: path.owner repo: path.repo events: requestBody.events config: requestBody.config method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}'].get update: x-apievangelist-phrasing: intent: Get a repository webhook effect: read questions: - What events is a specific repository webhook subscribed to? - Is a given webhook active or disabled? instructions: - text: Get webhook {hook_id} on {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Show the events and active state of hook {hook_id} in {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}'].delete update: x-apievangelist-phrasing: intent: Delete a repository webhook effect: destructive questions: - How do I remove a webhook from my repository? - Can I stop a repo from sending events to an old endpoint by deleting its hook? instructions: - text: Delete webhook {hook_id} from {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Remove repository hook {hook_id} in the {repo} repo of {owner}. slots: hook_id: path.hook_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}'].patch update: x-apievangelist-phrasing: intent: Change a webhook's events or state effect: write questions: - Can I add or remove events on an existing webhook without recreating it? - Is there a way to deactivate a webhook temporarily? instructions: - text: Add events {add_events} to webhook {hook_id} on {owner}/{repo}. slots: add_events: requestBody.add_events hook_id: path.hook_id owner: path.owner repo: path.repo - text: Remove events {remove_events} from webhook {hook_id} on {owner}/{repo}. slots: remove_events: requestBody.remove_events hook_id: path.hook_id owner: path.owner repo: path.repo - text: Set webhook {hook_id} on {owner}/{repo} active to {active}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo active: requestBody.active method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/config'].get update: x-apievangelist-phrasing: intent: Get a webhook's delivery configuration effect: read questions: - What URL and content type does a repository webhook deliver to? - Can I check whether a hook skips SSL verification? instructions: - text: Get the delivery configuration of webhook {hook_id} on {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Show the payload URL and content type for hook {hook_id} in {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/config'].patch update: x-apievangelist-phrasing: intent: Change a webhook's URL, secret or format effect: write questions: - How do I point an existing webhook at a new URL? - Can I rotate the secret a repository webhook signs its payloads with? instructions: - text: Point webhook {hook_id} on {owner}/{repo} at {url}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo url: requestBody.url - text: Rotate the secret of hook {hook_id} in {owner}/{repo} to {secret}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo secret: requestBody.secret - text: Send webhook {hook_id} payloads on {owner}/{repo} as {content_type}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo content_type: requestBody.content_type method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/deliveries'].get update: x-apievangelist-phrasing: intent: List a webhook's recent deliveries effect: read questions: - Did my webhook deliveries succeed, and when were they sent? - Can I see only redeliveries of a repository webhook? instructions: - text: List the deliveries of webhook {hook_id} on {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Show deliveries of hook {hook_id} in {owner}/{repo} where redelivery is {redelivery}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo redelivery: query.redelivery method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}'].get update: x-apievangelist-phrasing: intent: Inspect one webhook delivery effect: read questions: - What request and response did a particular webhook delivery have? - Why did one webhook delivery fail? instructions: - text: Get delivery {delivery_id} of webhook {hook_id} on {owner}/{repo}. slots: delivery_id: path.delivery_id hook_id: path.hook_id owner: path.owner repo: path.repo - text: Show the request and response of delivery {delivery_id} for hook {hook_id} in {owner}/{repo}. slots: delivery_id: path.delivery_id hook_id: path.hook_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts'].post update: x-apievangelist-phrasing: intent: Redeliver a webhook delivery effect: write questions: - How do I resend a webhook delivery that my server missed? - Can I replay a failed repository webhook event? instructions: - text: Redeliver delivery {delivery_id} of webhook {hook_id} on {owner}/{repo}. slots: delivery_id: path.delivery_id hook_id: path.hook_id owner: path.owner repo: path.repo - text: Replay the failed webhook delivery {delivery_id} for hook {hook_id} in {owner}/{repo}. slots: delivery_id: path.delivery_id hook_id: path.hook_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/pings'].post update: x-apievangelist-phrasing: intent: Ping a repository webhook effect: write questions: - How can I check that my webhook endpoint is reachable? - Is there a way to send a ping event to a repository hook? instructions: - text: Ping webhook {hook_id} on {owner}/{repo}. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Send a ping event to hook {hook_id} in the {repo} repo of {owner}. slots: hook_id: path.hook_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/hooks/{hook_id}/tests'].post update: x-apievangelist-phrasing: intent: Test a webhook with the latest push effect: write questions: - Can I trigger a webhook with the most recent push to test it? - What happens if I test a hook that isn't subscribed to push events? instructions: - text: Test webhook {hook_id} on {owner}/{repo} with the latest push. slots: hook_id: path.hook_id owner: path.owner repo: path.repo - text: Replay the most recent push event to hook {hook_id} of {owner}/{repo} as a test. slots: hook_id: path.hook_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/invitations'].get update: x-apievangelist-phrasing: intent: List pending invitations to a repository effect: read questions: - Who has been invited to my repository but hasn't accepted yet? - Can I see all outstanding collaborator invitations on a repo? instructions: - text: List pending invitations for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show everyone with an open collaborator invitation to the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/invitations/{invitation_id}'].delete update: x-apievangelist-phrasing: intent: Cancel a repository invitation effect: destructive questions: - How do I withdraw an invitation I sent to collaborate on a repo? - Can I cancel a collaborator invite before it's accepted? instructions: - text: Delete invitation {invitation_id} on {owner}/{repo}. slots: invitation_id: path.invitation_id owner: path.owner repo: path.repo - text: Withdraw the pending collaborator invite {invitation_id} to {owner}/{repo}. slots: invitation_id: path.invitation_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/invitations/{invitation_id}'].patch update: x-apievangelist-phrasing: intent: Change a pending invitation's permission effect: write questions: - Can I change the permission on an invitation that hasn't been accepted? - Is it possible to downgrade a pending invite from admin to write? instructions: - text: Change invitation {invitation_id} on {owner}/{repo} to {permissions} permission. slots: invitation_id: path.invitation_id owner: path.owner repo: path.repo permissions: requestBody.permissions - text: Update the pending invite {invitation_id} for {owner}/{repo} so it grants {permissions}. slots: invitation_id: path.invitation_id owner: path.owner repo: path.repo permissions: requestBody.permissions method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/keys'].get update: x-apievangelist-phrasing: intent: List a repository's deploy keys effect: read questions: - Which SSH deploy keys have access to this repository? - Can I audit the deploy keys on a repo? instructions: - text: List the deploy keys on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every SSH deploy key with access to the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/keys'].post update: x-apievangelist-phrasing: intent: Add a deploy key to a repository effect: write questions: - How do I give a server read-only SSH access to one repository? - Can a deploy key be given write access? instructions: - text: Add deploy key {key} titled {title} to {owner}/{repo}. slots: key: requestBody.key title: requestBody.title owner: path.owner repo: path.repo - text: Add SSH deploy key {key} to {owner}/{repo} with read only set to {read_only}. slots: key: requestBody.key owner: path.owner repo: path.repo read_only: requestBody.read_only method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/keys/{key_id}'].get update: x-apievangelist-phrasing: intent: Get a deploy key effect: read questions: - Is a particular deploy key read-only? - Can I look up one deploy key by its ID? instructions: - text: Get deploy key {key_id} on {owner}/{repo}. slots: key_id: path.key_id owner: path.owner repo: path.repo - text: Show whether deploy key {key_id} in {owner}/{repo} is read only. slots: key_id: path.key_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/keys/{key_id}'].delete update: x-apievangelist-phrasing: intent: Remove a deploy key effect: destructive questions: - How do I revoke a deploy key from a repository? - Can I remove an SSH key a CI server used for a repo? instructions: - text: Delete deploy key {key_id} from {owner}/{repo}. slots: key_id: path.key_id owner: path.owner repo: path.repo - text: Revoke SSH deploy key {key_id} on the {repo} repository of {owner}. slots: key_id: path.key_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/languages'].get update: x-apievangelist-phrasing: intent: List a repository's languages effect: read questions: - What programming languages is this repository written in? - How many bytes of each language does a repo contain? instructions: - text: List the languages used in {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the byte count per language for the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/lfs'].put update: x-apievangelist-phrasing: intent: Enable Git LFS for a repository effect: write questions: - How do I turn on Git LFS for a repository? - Can large file storage be enabled per repository? instructions: - text: Enable Git LFS on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Turn on large file storage for the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/lfs'].delete update: x-apievangelist-phrasing: intent: Disable Git LFS for a repository effect: destructive questions: - Can I switch off Git LFS on a repository? - What's the call to stop a repo from using large file storage? instructions: - text: Disable Git LFS on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Turn off large file storage for the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/merge-upstream'].post update: x-apievangelist-phrasing: intent: Sync a fork branch with upstream effect: write questions: - How do I update my fork with the latest changes from the original repository? - Can I sync a single branch of a fork with its upstream? instructions: - text: Sync branch {branch} of my fork {owner}/{repo} with upstream. slots: branch: requestBody.branch owner: path.owner repo: path.repo - text: Pull the upstream changes into {branch} of fork {owner}/{repo}. slots: branch: requestBody.branch owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/merges'].post update: x-apievangelist-phrasing: intent: Merge one branch into another effect: write questions: - Can I merge a branch into another directly, without a pull request? - Is it possible to set the merge commit message when merging branches through the API? instructions: - text: Merge {head} into {base} in {owner}/{repo}. slots: head: requestBody.head base: requestBody.base owner: path.owner repo: path.repo - text: Merge {head} into {base} on {owner}/{repo} with message {commit_message}. slots: head: requestBody.head base: requestBody.base owner: path.owner repo: path.repo commit_message: requestBody.commit_message method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages'].get update: x-apievangelist-phrasing: intent: Get a repository's Pages site effect: read questions: - Does this repository have a Pages site, and what's its URL? - Can I see which branch and folder a Pages site builds from? instructions: - text: Get the Pages site for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the Pages URL and source branch of the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages'].put update: x-apievangelist-phrasing: intent: Update a Pages site's settings effect: write questions: - How do I set a custom domain on my Pages site? - Can I force HTTPS or change the source branch of an existing Pages site? instructions: - text: Set the custom domain of the Pages site for {owner}/{repo} to {cname}. slots: owner: path.owner repo: path.repo cname: requestBody.cname - text: Set HTTPS enforcement on the {owner}/{repo} Pages site to {https_enforced}. slots: owner: path.owner repo: path.repo https_enforced: requestBody.https_enforced - text: Change the existing Pages site of {owner}/{repo} to build from {source}. slots: owner: path.owner repo: path.repo source: requestBody.source method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages'].post update: x-apievangelist-phrasing: intent: Turn on a Pages site for a repository effect: write questions: - How do I publish a repository as a Pages site for the first time? - Can a new Pages site build with a workflow instead of from a branch? instructions: - text: Enable a Pages site for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Create a Pages site on {owner}/{repo} with build type {build_type}. slots: owner: path.owner repo: path.repo build_type: requestBody.build_type method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages'].delete update: x-apievangelist-phrasing: intent: Take down a repository's Pages site effect: destructive questions: - How do I unpublish a repository's Pages site? - Can I delete a Pages site but keep the repo? instructions: - text: Delete the Pages site for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Unpublish the Pages site of the {repo} repository owned by {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages/builds'].get update: x-apievangelist-phrasing: intent: List a Pages site's builds effect: read questions: - What's the build history of my Pages site? - Can I see past Pages builds and whether they errored? instructions: - text: List the Pages builds for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the history of Pages site builds on the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages/builds'].post update: x-apievangelist-phrasing: intent: Rebuild a Pages site effect: write questions: - How do I force my Pages site to rebuild without pushing a commit? - Can I request a fresh Pages build from the latest revision? instructions: - text: Request a new Pages build for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Trigger a rebuild of the Pages site on the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages/builds/latest'].get update: x-apievangelist-phrasing: intent: Get the latest Pages build effect: read questions: - Did the most recent Pages build succeed? - When did my Pages site last build? instructions: - text: Get the latest Pages build for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the status of the most recent Pages build on the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages/builds/{build_id}'].get update: x-apievangelist-phrasing: intent: Get a specific Pages build effect: read questions: - Can I look up one Pages build by its ID? - What error did a particular Pages build hit? instructions: - text: Get Pages build {build_id} for {owner}/{repo}. slots: build_id: path.build_id owner: path.owner repo: path.repo - text: Show the status and error of Pages build {build_id} in {owner}/{repo}. slots: build_id: path.build_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/pages/deployments'].post update: x-apievangelist-phrasing: intent: Deploy an artifact to Pages effect: write questions: - How do I publish a built artifact to Pages from a workflow? - What do I need, like an OIDC token and build version, to create a Pages deployment? instructions: - text: Deploy artifact {artifact_url} to Pages for {owner}/{repo} as build version {pages_build_version} using token {oidc_token}. slots: artifact_url: requestBody.artifact_url owner: path.owner repo: path.repo pages_build_version: requestBody.pages_build_version oidc_token: requestBody.oidc_token - text: Publish Pages version {pages_build_version} of {owner}/{repo} from {artifact_url} to {environment}, OIDC token {oidc_token}. slots: pages_build_version: requestBody.pages_build_version owner: path.owner repo: path.repo artifact_url: requestBody.artifact_url environment: requestBody.environment oidc_token: requestBody.oidc_token method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/readme'].get update: x-apievangelist-phrasing: intent: Get a repository's README effect: read questions: - How do I fetch a project's README without knowing its exact filename? - Can I read the README as it was on another branch? instructions: - text: Get the README of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Read the README for {owner}/{repo} at ref {ref}. slots: owner: path.owner repo: path.repo ref: query.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/readme/{dir}'].get update: x-apievangelist-phrasing: intent: Get the README inside a folder effect: read questions: - Can I fetch the README that lives in a subdirectory of a repo? - Which README applies to a particular folder in a monorepo? instructions: - text: Get the README in directory {dir} of {owner}/{repo}. slots: dir: path.dir owner: path.owner repo: path.repo - text: Read the {dir} folder's README in {owner}/{repo} at ref {ref}. slots: dir: path.dir owner: path.owner repo: path.repo ref: query.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases'].get update: x-apievangelist-phrasing: intent: List a repository's releases effect: read questions: - What releases has this project published? - Does the release list include drafts I can see? instructions: - text: List the releases of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every published and draft release for the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases'].post update: x-apievangelist-phrasing: intent: Publish a release effect: write questions: - How do I cut a new release from a tag? - Can release notes be generated automatically when I create a release? - Is it possible to create a draft or prerelease instead of a public release? instructions: - text: Create release {tag_name} on {owner}/{repo}. slots: tag_name: requestBody.tag_name owner: path.owner repo: path.repo - text: Create release {tag_name} named {name} on {owner}/{repo} with auto-generated notes set to {generate_release_notes}. slots: tag_name: requestBody.tag_name name: requestBody.name owner: path.owner repo: path.repo generate_release_notes: requestBody.generate_release_notes - text: Draft release {tag_name} of {owner}/{repo} from {target_commitish}, prerelease {prerelease}. slots: tag_name: requestBody.tag_name owner: path.owner repo: path.repo target_commitish: requestBody.target_commitish prerelease: requestBody.prerelease method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/assets/{asset_id}'].get update: x-apievangelist-phrasing: intent: Get a release asset effect: read questions: - Can I get the download details of one file attached to a release? - What's the size and download count of a release asset? instructions: - text: Get release asset {asset_id} from {owner}/{repo}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo - text: Show the size and download count of asset {asset_id} in {owner}/{repo}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/assets/{asset_id}'].delete update: x-apievangelist-phrasing: intent: Delete a release asset effect: destructive questions: - How do I remove a wrong binary I attached to a release? - Can I delete a single file from a release without deleting the release? instructions: - text: Delete release asset {asset_id} from {owner}/{repo}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo - text: Remove the uploaded file {asset_id} attached to a release in {owner}/{repo}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/assets/{asset_id}'].patch update: x-apievangelist-phrasing: intent: Rename or relabel a release asset effect: write questions: - Can I rename a file that's already attached to a release? - Is it possible to change the label shown for a release download? instructions: - text: Rename release asset {asset_id} in {owner}/{repo} to {name}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo name: requestBody.name - text: Set the label of release asset {asset_id} on {owner}/{repo} to {label}. slots: asset_id: path.asset_id owner: path.owner repo: path.repo label: requestBody.label method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/generate-notes'].post update: x-apievangelist-phrasing: intent: Draft release notes for a tag effect: read questions: - Can I preview auto-generated release notes before publishing a release? - What changed since the previous tag, written up as release notes? instructions: - text: Generate release notes for {tag_name} in {owner}/{repo}. slots: tag_name: requestBody.tag_name owner: path.owner repo: path.repo - text: Write release notes for {tag_name} of {owner}/{repo} covering changes since {previous_tag_name}. slots: tag_name: requestBody.tag_name owner: path.owner repo: path.repo previous_tag_name: requestBody.previous_tag_name method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/latest'].get update: x-apievangelist-phrasing: intent: Get the latest release effect: read questions: - What's the newest published release of this project? - Which version is marked as latest, ignoring drafts and prereleases? instructions: - text: Get the latest release of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Tell me the newest non-prerelease version of the {repo} project by {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/tags/{tag}'].get update: x-apievangelist-phrasing: intent: Find a release by its tag effect: read questions: - Can I look up a release using its tag name like v2.1.0? - Which release is attached to a particular tag? instructions: - text: Get the release tagged {tag} in {owner}/{repo}. slots: tag: path.tag owner: path.owner repo: path.repo - text: Find the release for tag {tag} of {owner}/{repo}. slots: tag: path.tag owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/{release_id}'].get update: x-apievangelist-phrasing: intent: Get a release by ID effect: read questions: - Can I fetch a release by its numeric ID? - Where do I get a release's upload URL for attaching assets? instructions: - text: Get release {release_id} of {owner}/{repo}. slots: release_id: path.release_id owner: path.owner repo: path.repo - text: Show the details and upload URL of release {release_id} in {owner}/{repo}. slots: release_id: path.release_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/{release_id}'].delete update: x-apievangelist-phrasing: intent: Delete a release effect: destructive questions: - How do I delete a release I published by mistake? - Does deleting a release also remove its tag? instructions: - text: Delete release {release_id} from {owner}/{repo}. slots: release_id: path.release_id owner: path.owner repo: path.repo - text: Remove the published release {release_id} in the {repo} repository of {owner}. slots: release_id: path.release_id repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/{release_id}'].patch update: x-apievangelist-phrasing: intent: Edit a release effect: write questions: - Can I publish a draft release or change its notes after creating it? - Is it possible to mark an existing release as latest? instructions: - text: Update the notes of release {release_id} in {owner}/{repo} to {body}. slots: release_id: path.release_id owner: path.owner repo: path.repo body: requestBody.body - text: Set draft to {draft} on release {release_id} of {owner}/{repo}. slots: draft: requestBody.draft release_id: path.release_id owner: path.owner repo: path.repo - text: Mark existing release {release_id} of {owner}/{repo} make_latest {make_latest}. slots: release_id: path.release_id owner: path.owner repo: path.repo make_latest: requestBody.make_latest method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/{release_id}/assets'].get update: x-apievangelist-phrasing: intent: List a release's downloadable files effect: read questions: - What binaries are attached to a release? - Can I list every asset of one release? instructions: - text: List the assets of release {release_id} in {owner}/{repo}. slots: release_id: path.release_id owner: path.owner repo: path.repo - text: Show the downloadable files attached to release {release_id} of {owner}/{repo}. slots: release_id: path.release_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/releases/{release_id}/assets'].post update: x-apievangelist-phrasing: intent: Upload a file to a release effect: write questions: - How do I attach a compiled binary to a release? - Can an uploaded release file have a display label different from its filename? instructions: - text: Upload {name} as an asset to release {release_id} in {owner}/{repo}. slots: name: query.name release_id: path.release_id owner: path.owner repo: path.repo - text: Attach file {name} labeled {label} to release {release_id} of {owner}/{repo}. slots: name: query.name label: query.label release_id: path.release_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/replicas/caches'].get update: x-apievangelist-phrasing: intent: List repository cache replica status effect: read questions: - Are the repository cache replicas up to date with the primary? - Can I see the sync status of each cache replica for a repo? instructions: - text: List cache replication status for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show each repository cache replica's sync state for the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/stats/code_frequency'].get update: x-apievangelist-phrasing: intent: Get weekly additions and deletions effect: read questions: - How many lines were added and deleted each week in this repository? - Can I chart a repo's code churn over time? instructions: - text: Get weekly code frequency stats for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show lines added and deleted per week in the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/stats/commit_activity'].get update: x-apievangelist-phrasing: intent: Get a year of commit activity effect: read questions: - How active has this repository been over the last year? - Can I get commit counts per day for each of the past 52 weeks? instructions: - text: Get the last year of commit activity for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show daily commit counts across the past 52 weeks for the {repo} project of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/stats/contributors'].get update: x-apievangelist-phrasing: intent: Get commit activity per contributor effect: read questions: - Which contributors have been most active, week by week? - Can I see each author's additions, deletions and commits over time? instructions: - text: Get per-contributor commit activity for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show each author's weekly additions, deletions and commits in the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/stats/participation'].get update: x-apievangelist-phrasing: intent: Compare owner vs everyone's commits effect: read questions: - How many weekly commits came from the owner versus everyone else? - What does the repository's participation graph look like? instructions: - text: Get weekly participation stats for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Compare the owner's weekly commit count with all contributors for the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/stats/punch_card'].get update: x-apievangelist-phrasing: intent: Get commits by hour and weekday effect: read questions: - At what hours and on which days do people usually commit to this repo? - Can I get a punch card of commit counts by hour of the week? instructions: - text: Get the hourly punch card stats for {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show commit counts for each hour of each weekday in the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/statuses/{sha}'].post update: x-apievangelist-phrasing: intent: Post a CI status on a commit effect: write questions: - How do I mark a commit as passing or failing from my own CI system? - Can I link a commit status to my build logs and give it a named context? instructions: - text: Set the status of commit {sha} in {owner}/{repo} to {state}. slots: sha: path.sha owner: path.owner repo: path.repo state: requestBody.state - text: Report {state} for context {context} on commit {sha} of {owner}/{repo} linking to {target_url}. slots: state: requestBody.state context: requestBody.context sha: path.sha owner: path.owner repo: path.repo target_url: requestBody.target_url method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/tags'].get update: x-apievangelist-phrasing: intent: List a repository's tags effect: read questions: - What tags exist in this repository? - Can I list all the version tags of a project? instructions: - text: List the tags of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every git tag in the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/tags/protection'].get update: x-apievangelist-phrasing: intent: List tag protection rules effect: read questions: - Which tag patterns are protected in this repository? - Can I see the rules that stop people from creating or deleting certain tags? instructions: - text: List the tag protection rules on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show which tag patterns are protected in the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/tags/protection'].post update: x-apievangelist-phrasing: intent: Protect tags matching a pattern effect: write questions: - How do I stop non-admins from creating or deleting release tags like v*? - Can I protect tags by a wildcard pattern? instructions: - text: Protect tags matching {pattern} in {owner}/{repo}. slots: pattern: requestBody.pattern owner: path.owner repo: path.repo - text: Add a tag protection rule for {pattern} on {owner}/{repo}. slots: pattern: requestBody.pattern owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/tags/protection/{tag_protection_id}'].delete update: x-apievangelist-phrasing: intent: Remove a tag protection rule effect: destructive questions: - How do I remove protection from a tag pattern? - Can I delete one tag protection rule by its ID? instructions: - text: Delete tag protection rule {tag_protection_id} from {owner}/{repo}. slots: tag_protection_id: path.tag_protection_id owner: path.owner repo: path.repo - text: Unprotect the tag pattern with rule {tag_protection_id} in {owner}/{repo}. slots: tag_protection_id: path.tag_protection_id owner: path.owner repo: path.repo method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/tarball/{ref}'].get update: x-apievangelist-phrasing: intent: Download a repository as a tarball effect: read questions: - How do I download a snapshot of a repo as a .tar.gz file? - Can I get a tar archive of the code at a particular tag? instructions: - text: Download a tarball of {owner}/{repo} at {ref}. slots: owner: path.owner repo: path.repo ref: path.ref - text: Get a tar.gz archive of the {repo} repo by {owner} at ref {ref}. slots: repo: path.repo owner: path.owner ref: path.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/teams'].get update: x-apievangelist-phrasing: intent: List teams with access to a repository effect: read questions: - Which teams have access to this repository? - Can I see every organization team granted permission on a repo? instructions: - text: List the teams with access to {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show every team granted permission on the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/topics'].get update: x-apievangelist-phrasing: intent: Get a repository's topics effect: read questions: - What topics is this repository tagged with? - Can I read a repo's topic labels through the API? instructions: - text: Get the topics of {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the topic labels applied to the {repo} repo of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/topics'].put update: x-apievangelist-phrasing: intent: Replace a repository's topics effect: write questions: - How do I set the topics on a repository? - Can I clear all of a repo's topics at once? instructions: - text: Set the topics of {owner}/{repo} to {names}. slots: owner: path.owner repo: path.repo names: requestBody.names - text: Replace every topic label on the {repo} repository of {owner} with {names}. slots: repo: path.repo owner: path.owner names: requestBody.names method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/transfer'].post update: x-apievangelist-phrasing: intent: Transfer a repository to a new owner effect: destructive questions: - How do I move a repository from my account to an organization? - Can I rename a repository as part of transferring it? instructions: - text: Transfer {owner}/{repo} to {new_owner}. slots: owner: path.owner repo: path.repo new_owner: requestBody.new_owner - text: Move {owner}/{repo} to {new_owner} and rename it {new_name}. slots: owner: path.owner repo: path.repo new_owner: requestBody.new_owner new_name: requestBody.new_name method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/vulnerability-alerts'].get update: x-apievangelist-phrasing: intent: Check if vulnerability alerts are on effect: read questions: - Are dependency vulnerability alerts enabled for this repository? - Can I tell whether a repo will warn me about vulnerable dependencies? instructions: - text: Check whether vulnerability alerts are enabled on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Tell me if the {repo} repository of {owner} has dependency vulnerability alerts turned on. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/vulnerability-alerts'].put update: x-apievangelist-phrasing: intent: Turn on vulnerability alerts effect: write questions: - How do I turn on alerts for vulnerable dependencies in my repo? - Can I enable dependency vulnerability alerts through the API? instructions: - text: Enable vulnerability alerts on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Start alerting on vulnerable dependencies in the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/vulnerability-alerts'].delete update: x-apievangelist-phrasing: intent: Turn off vulnerability alerts effect: destructive questions: - Can I switch off dependency vulnerability alerts for a repository? - What's the way to disable vulnerable-dependency alerts on a repo? instructions: - text: Disable vulnerability alerts on {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Stop alerting on vulnerable dependencies in the {repo} repository of {owner}. slots: repo: path.repo owner: path.owner method: generated generated: '2026-09-24' - target: $.paths['/repos/{owner}/{repo}/zipball/{ref}'].get update: x-apievangelist-phrasing: intent: Download a repository as a zip effect: read questions: - How do I download a repository as a .zip file? - Can I get a zip of the source code at a specific branch or tag? instructions: - text: Download a zip of {owner}/{repo} at {ref}. slots: owner: path.owner repo: path.repo ref: path.ref - text: Get a zipball archive of the {repo} repo by {owner} at ref {ref}. slots: repo: path.repo owner: path.owner ref: path.ref method: generated generated: '2026-09-24' - target: $.paths['/repos/{template_owner}/{template_repo}/generate'].post update: x-apievangelist-phrasing: intent: Create a repository from a template effect: write questions: - How do I start a new project from a template repository? - Can a repo generated from a template include all of the template's branches? instructions: - text: Create a repository {name} from template {template_owner}/{template_repo}. slots: name: requestBody.name template_owner: path.template_owner template_repo: path.template_repo - text: Generate {name} under {owner} from template {template_owner}/{template_repo}, private {private}. slots: name: requestBody.name owner: requestBody.owner template_owner: path.template_owner template_repo: path.template_repo private: requestBody.private method: generated generated: '2026-09-24' - target: $.paths['/repositories'].get update: x-apievangelist-phrasing: intent: Browse all public repositories effect: read questions: - Can I page through every public repository in the order they were created? - Where do I start listing public repos after a given repository ID? instructions: - text: List all public repositories. - text: List public repositories created after repository ID {since}. slots: since: query.since method: generated generated: '2026-09-24' - target: $.paths['/user/repos'].get update: x-apievangelist-phrasing: intent: List my repositories effect: read questions: - Which repositories do I have access to, including org ones? - Can I list only the repos I own, or only private ones? - What repositories have I pushed to recently? instructions: - text: List all repositories I can access. - text: Show my {visibility} repositories sorted by {sort}. slots: visibility: query.visibility sort: query.sort - text: List repos where my affiliation is {affiliation}. slots: affiliation: query.affiliation method: generated generated: '2026-09-24' - target: $.paths['/user/repos'].post update: x-apievangelist-phrasing: intent: Create a repository in my account effect: write questions: - How do I create a new personal repository? - Can a new repo in my account be private and start with a README? instructions: - text: Create a repository named {name} in my account. slots: name: requestBody.name - text: Create a private repo {name} for me with private set to {private} and auto_init {auto_init}. slots: name: requestBody.name private: requestBody.private auto_init: requestBody.auto_init method: generated generated: '2026-09-24' - target: $.paths['/user/repository_invitations'].get update: x-apievangelist-phrasing: intent: List my pending repository invitations effect: read questions: - Have I been invited to collaborate on any repositories? - Which repository invites are waiting for me to accept? instructions: - text: List my pending repository invitations. - text: Show the repo collaboration invites waiting for my response. method: generated generated: '2026-09-24' - target: $.paths['/user/repository_invitations/{invitation_id}'].delete update: x-apievangelist-phrasing: intent: Decline a repository invitation effect: destructive questions: - How do I turn down an invitation to collaborate on a repo? - Can I reject a repository invite I received? instructions: - text: Decline repository invitation {invitation_id}. slots: invitation_id: path.invitation_id - text: Reject the collaboration invite {invitation_id} sent to me. slots: invitation_id: path.invitation_id method: generated generated: '2026-09-24' - target: $.paths['/user/repository_invitations/{invitation_id}'].patch update: x-apievangelist-phrasing: intent: Accept a repository invitation effect: write questions: - How do I accept an invitation to collaborate on someone's repository? - Can I accept a repo invite through the API instead of email? instructions: - text: Accept repository invitation {invitation_id}. slots: invitation_id: path.invitation_id - text: Join the repository I was invited to via invitation {invitation_id}. slots: invitation_id: path.invitation_id method: generated generated: '2026-09-24' - target: $.paths['/users/{username}/repos'].get update: x-apievangelist-phrasing: intent: List another user's public repositories effect: read questions: - What public repositories does a particular user own? - Can I sort someone's repos by when they were last updated? instructions: - text: List the repositories of user {username}. slots: username: path.username - text: Show {type} repos belonging to {username}, sorted by {sort}. slots: type: query.type username: path.username sort: query.sort method: generated generated: '2026-09-24'