# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for GitHub Actions Secrets API version: 1.0.0 extends: openapi/github-actions-secrets-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 13 - target: $.paths['/repos/{owner}/{repo}/actions/secrets'].get update: x-apievangelist-phrasing: intent: List a repository's own Actions secrets effect: read questions: - What secrets are defined directly on my repository for workflows to use? - Can I see the names of my repo's secrets without exposing their values? instructions: - text: List the repository-level secrets defined in {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Show the names and update dates of secrets stored on {owner}/{repo} itself. slots: owner: path.owner repo: path.repo method: generated generated: '2026-09-26' - target: $.paths['/repos/{owner}/{repo}/actions/secrets/public-key'].get update: x-apievangelist-phrasing: intent: Get the key for encrypting a repository secret effect: read questions: - Which public key do I encrypt a new repository secret with before uploading it? - Where do I get the key_id to send along with an encrypted repo secret? instructions: - text: Get the secret-encryption public key for repository {owner}/{repo}. slots: owner: path.owner repo: path.repo - text: Fetch the repo public key and key ID I need to encrypt a secret for {repo}. slots: repo: path.repo method: generated generated: '2026-09-26' - target: $.paths['/repos/{owner}/{repo}/actions/secrets/{secret_name}'].get update: x-apievangelist-phrasing: intent: Look up one repository secret's metadata effect: read questions: - When was a particular repository secret last updated? - Does my repository have a secret with a given name? instructions: - text: Get the repository secret {secret_name} in {owner}/{repo}. slots: secret_name: path.secret_name owner: path.owner repo: path.repo - text: Check when repo secret {secret_name} was created and last changed. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/repos/{owner}/{repo}/actions/secrets/{secret_name}'].put update: x-apievangelist-phrasing: intent: Create or update a repository secret effect: write questions: - How do I add a new secret to my repository for workflows to read? - Can I rotate the value of an existing repository secret? instructions: - text: Save repository secret {secret_name} in {owner}/{repo} with encrypted value {encrypted_value} and key {key_id}. slots: secret_name: path.secret_name owner: path.owner repo: path.repo encrypted_value: requestBody.encrypted_value key_id: requestBody.key_id - text: Rotate the repo secret {secret_name} to a newly encrypted value. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/repos/{owner}/{repo}/actions/secrets/{secret_name}'].delete update: x-apievangelist-phrasing: intent: Delete a repository secret effect: destructive questions: - How do I remove a secret from a single repository? - Can I delete a leaked repository secret by name? instructions: - text: Delete repository secret {secret_name} from {owner}/{repo}. slots: secret_name: path.secret_name owner: path.owner repo: path.repo - text: Remove the repo-level secret {secret_name}. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/repos/{owner}/{repo}/actions/organization-secrets'].get update: x-apievangelist-phrasing: intent: List organization secrets shared with a repository effect: read questions: - Which organization-level secrets can my repository's workflows access? - What org secrets have been shared into this repo? instructions: - text: List the organization secrets that {owner}/{repo} has access to. slots: owner: path.owner repo: path.repo - text: Show which inherited org secrets are available in {repo}. slots: repo: path.repo method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets'].get update: x-apievangelist-phrasing: intent: List all of an organization's Actions secrets effect: read questions: - What Actions secrets are defined at the organization level? - Can I see every org secret along with its visibility setting? instructions: - text: List every organization secret defined in {org}. slots: org: path.org - text: Show the names and visibility of all org-level secrets in {org}. slots: org: path.org method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/public-key'].get update: x-apievangelist-phrasing: intent: Get the key for encrypting an organization secret effect: read questions: - Which public key do I use to encrypt an organization-level secret? - Where do I find the org key_id to send with an encrypted org secret? instructions: - text: Get the organization public key for encrypting secrets in {org}. slots: org: path.org - text: Fetch the org-level encryption key and key ID for {org}. slots: org: path.org method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/{secret_name}'].get update: x-apievangelist-phrasing: intent: Look up one organization secret's metadata effect: read questions: - What visibility does a particular organization secret have? - When was an org secret last updated? instructions: - text: Get the organization secret {secret_name} in {org}. slots: secret_name: path.secret_name org: path.org - text: Check the visibility and last update of org secret {secret_name}. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/{secret_name}'].put update: x-apievangelist-phrasing: intent: Create or update an organization secret effect: write questions: - How do I create a secret once at the organization level for many repositories to use? - Can I make an org secret visible to all, private, or only selected repositories? instructions: - text: Save org secret {secret_name} in {org} with encrypted value {encrypted_value} and key {key_id}. slots: secret_name: path.secret_name org: path.org encrypted_value: requestBody.encrypted_value key_id: requestBody.key_id - text: Set the visibility of org secret {secret_name} to {visibility}. slots: secret_name: path.secret_name visibility: requestBody.visibility method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/{secret_name}'].delete update: x-apievangelist-phrasing: intent: Delete an organization secret effect: destructive questions: - How do I delete a secret from my whole organization? - Can I remove an org-level secret that several repos were sharing? instructions: - text: Delete organization secret {secret_name} from {org}. slots: secret_name: path.secret_name org: path.org - text: Remove the org-wide secret {secret_name}. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/{secret_name}/repositories'].get update: x-apievangelist-phrasing: intent: List repositories selected for an org secret effect: read questions: - Which repositories are allowed to use an organization secret with selected visibility? - What repos currently have access to a specific org secret? instructions: - text: List the repositories selected for org secret {secret_name} in {org}. slots: secret_name: path.secret_name org: path.org - text: Show which repos can read the {secret_name} organization secret. slots: secret_name: path.secret_name method: generated generated: '2026-09-26' - target: $.paths['/orgs/{org}/actions/secrets/{secret_name}/repositories'].put update: x-apievangelist-phrasing: intent: Replace the repositories that can use an org secret effect: write questions: - How do I change which repositories get access to an organization secret? - Can I replace the whole list of repos for a selected-visibility org secret at once? instructions: - text: Grant org secret {secret_name} in {org} to exactly repositories {selected_repository_ids}. slots: secret_name: path.secret_name org: path.org selected_repository_ids: requestBody.selected_repository_ids - text: Replace the repository access list for secret {secret_name} with {selected_repository_ids}. slots: secret_name: path.secret_name selected_repository_ids: requestBody.selected_repository_ids method: generated generated: '2026-09-26'