GitHub · Capability

github-repos-api — Repositories

github-repos-api — Repositories. 40 operations. Lead operation: GitHub Get Repository. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubRepositories

What You Can Do

GET
Getrepository — GitHub Get Repository
/v1/repos/{owner}/{repo}
PATCH
Updaterepository — GitHub Update Repository
/v1/repos/{owner}/{repo}
DELETE
Deleterepository — GitHub Delete Repository
/v1/repos/{owner}/{repo}
PATCH
Updaterepositorypreferencesforchecksuites — GitHub Update Repository Preferences for Check Suites
/v1/repos/{owner}/{repo}/check-suites/preferences
GET
Listcommitcommentsforrepository — GitHub List Commit Comments for Repository
/v1/repos/{owner}/{repo}/comments
GET
Getrepositorycontent — GitHub Get Repository Content
/v1/repos/{owner}/{repo}/contents/{path}
GET
Listrepositorycontributors — GitHub List Repository Contributors
/v1/repos/{owner}/{repo}/contributors
GET
Exportsoftwarebillofmaterialssbomforrepository — GitHub Export Software Bill of Materials (sbom) for Repository.
/v1/repos/{owner}/{repo}/dependency-graph/sbom
POST
Createsnapshotofdependenciesforrepository — GitHub Create Snapshot of Dependencies for Repository
/v1/repos/{owner}/{repo}/dependency-graph/snapshots
POST
Createrepositorydispatchevent — GitHub Create Repository Dispatch Event
/v1/repos/{owner}/{repo}/dispatches
GET
Listrepositoryevents — GitHub List Repository Events
/v1/repos/{owner}/{repo}/events
GET
Getrepositoryinstallationfortheauthenticatedapp — GitHub Get Repository Installation for the Authenticated App
/v1/repos/{owner}/{repo}/installation
GET
Listlabelsforrepository — GitHub List Labels for Repository
/v1/repos/{owner}/{repo}/labels
GET
Listrepositorylanguages — GitHub List Repository Languages
/v1/repos/{owner}/{repo}/languages
PUT
Enablegitlfsforrepository — GitHub Enable Git Lfs for Repository
/v1/repos/{owner}/{repo}/lfs
DELETE
Disablegitlfsforrepository — GitHub Disable Git Lfs for Repository
/v1/repos/{owner}/{repo}/lfs
GET
Getthelicenseforrepository — GitHub Get the License for Repository
/v1/repos/{owner}/{repo}/license
POST
Syncforkbranchwiththeupstreamrepository — GitHub Sync Fork Branch with the Upstream Repository
/v1/repos/{owner}/{repo}/merge-upstream
GET
Listrepositorynotificationsfortheauthenticateduser — GitHub List Repository Notifications for the Authenticated User
/v1/repos/{owner}/{repo}/notifications
PUT
Markrepositorynotificationsasread — GitHub Mark Repository Notifications as Read
/v1/repos/{owner}/{repo}/notifications
GET
Getrepositoryreadme — GitHub Get Repository Readme
/v1/repos/{owner}/{repo}/readme
GET
Getrepositoryreadmefordirectory — GitHub Get Repository Readme for Directory
/v1/repos/{owner}/{repo}/readme/{dir}
GET
Listrepositorycachereplicationstatus — GitHub List Repository Cache Replication Status
/v1/repos/{owner}/{repo}/replicas/caches
GET
Listsecretscanningalertsforrepository — GitHub List Secret Scanning Alerts for Repository
/v1/repos/{owner}/{repo}/secret-scanning/alerts
GET
Getrepositorysubscription — GitHub Get Repository Subscription
/v1/repos/{owner}/{repo}/subscription
PUT
Setrepositorysubscription — GitHub Set Repository Subscription
/v1/repos/{owner}/{repo}/subscription
DELETE
Deleterepositorysubscription — GitHub Delete Repository Subscription
/v1/repos/{owner}/{repo}/subscription
GET
Listrepositorytags — GitHub List Repository Tags
/v1/repos/{owner}/{repo}/tags
GET
Listtagprotectionstatesforrepository — GitHub List Tag Protection States for Repository
/v1/repos/{owner}/{repo}/tags/protection
POST
Createtagprotectionstateforrepository — GitHub Create Tag Protection State for Repository
/v1/repos/{owner}/{repo}/tags/protection
DELETE
Deletetagprotectionstateforrepository — GitHub Delete Tag Protection State for Repository
/v1/repos/{owner}/{repo}/tags/protection/{tag-protection-id}
GET
Downloadrepositoryarchivetar — GitHub Download Repository Archive (tar)
/v1/repos/{owner}/{repo}/tarball/{ref}
GET
Listrepositoryteams — GitHub List Repository Teams
/v1/repos/{owner}/{repo}/teams
GET
Getallrepositorytopics — GitHub Get All Repository Topics
/v1/repos/{owner}/{repo}/topics
PUT
Replaceallrepositorytopics — GitHub Replace All Repository Topics
/v1/repos/{owner}/{repo}/topics
POST
Transferrepository — GitHub Transfer Repository
/v1/repos/{owner}/{repo}/transfer
GET
Checkifvulnerabilityalertsareenabledforrepository — GitHub Check if Vulnerability Alerts Are Enabled for Repository
/v1/repos/{owner}/{repo}/vulnerability-alerts
POST
Createrepositoryusingtemplate — GitHub Create Repository Using Template
/v1/repos/{template-owner}/{template-repo}/generate
GET
Listpublicrepositories — GitHub List Public Repositories
/v1/repositories
GET
Searchrepositories — GitHub Search Repositories
/v1/search/repositories

MCP Tools

github-get-repository

GitHub Get Repository

read-only idempotent
github-update-repository

GitHub Update Repository

idempotent
github-delete-repository

GitHub Delete Repository

idempotent
github-update-repository-preferences-check

GitHub Update Repository Preferences for Check Suites

idempotent
github-list-commit-comments-repository

GitHub List Commit Comments for Repository

read-only idempotent
github-get-repository-content

GitHub Get Repository Content

read-only idempotent
github-list-repository-contributors

GitHub List Repository Contributors

read-only idempotent
github-export-software-bill-materials

GitHub Export Software Bill of Materials (sbom) for Repository.

read-only idempotent
github-create-snapshot-dependencies-repository

GitHub Create Snapshot of Dependencies for Repository

github-create-repository-dispatch-event

GitHub Create Repository Dispatch Event

github-list-repository-events

GitHub List Repository Events

read-only idempotent
github-get-repository-installation-authenticated

GitHub Get Repository Installation for the Authenticated App

read-only idempotent
github-list-labels-repository

GitHub List Labels for Repository

read-only idempotent
github-list-repository-languages

GitHub List Repository Languages

read-only idempotent
github-enable-git-lfs-repository

GitHub Enable Git Lfs for Repository

idempotent
github-disable-git-lfs-repository

GitHub Disable Git Lfs for Repository

idempotent
github-get-license-repository

GitHub Get the License for Repository

read-only idempotent
github-sync-fork-branch-upstream

GitHub Sync Fork Branch with the Upstream Repository

github-list-repository-notifications-authenticated

GitHub List Repository Notifications for the Authenticated User

read-only idempotent
github-mark-repository-notifications-read

GitHub Mark Repository Notifications as Read

idempotent
github-get-repository-readme

GitHub Get Repository Readme

read-only idempotent
github-get-repository-readme-directory

GitHub Get Repository Readme for Directory

read-only idempotent
github-list-repository-cache-replication

GitHub List Repository Cache Replication Status

read-only idempotent
github-list-secret-scanning-alerts

GitHub List Secret Scanning Alerts for Repository

read-only idempotent
github-get-repository-subscription

GitHub Get Repository Subscription

read-only idempotent
github-set-repository-subscription

GitHub Set Repository Subscription

idempotent
github-delete-repository-subscription

GitHub Delete Repository Subscription

idempotent
github-list-repository-tags

GitHub List Repository Tags

read-only idempotent
github-list-tag-protection-states

GitHub List Tag Protection States for Repository

read-only idempotent
github-create-tag-protection-state

GitHub Create Tag Protection State for Repository

github-delete-tag-protection-state

GitHub Delete Tag Protection State for Repository

idempotent
github-download-repository-archive-tar

GitHub Download Repository Archive (tar)

read-only idempotent
github-list-repository-teams

GitHub List Repository Teams

read-only idempotent
github-get-all-repository-topics

GitHub Get All Repository Topics

read-only idempotent
github-replace-all-repository-topics

GitHub Replace All Repository Topics

idempotent
github-transfer-repository

GitHub Transfer Repository

github-check-if-vulnerability-alerts

GitHub Check if Vulnerability Alerts Are Enabled for Repository

read-only idempotent
github-create-repository-using-template

GitHub Create Repository Using Template

github-list-public-repositories

GitHub List Public Repositories

read-only idempotent
github-search-repositories

GitHub Search Repositories

read-only idempotent

Capability Spec

repo-tags-repositories.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: github-repos-api — Repositories
  description: 'github-repos-api — Repositories. 40 operations. Lead operation: GitHub Get Repository. Self-contained Naftiko
    capability covering one Github business surface.'
  tags:
  - Github
  - Repositories
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: repo-tags-repositories
    baseUri: ''
    description: github-repos-api — Repositories business capability. Self-contained, no shared references.
    resources:
    - name: repos-owner-repo
      path: /repos/{owner}/{repo}
      operations:
      - name: getrepository
        method: GET
        description: GitHub Get Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: updaterepository
        method: PATCH
        description: GitHub Update Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deleterepository
        method: DELETE
        description: GitHub Delete Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-check-suites-preferences
      path: /repos/{owner}/{repo}/check-suites/preferences
      operations:
      - name: updaterepositorypreferencesforchecksuites
        method: PATCH
        description: GitHub Update Repository Preferences for Check Suites
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-comments
      path: /repos/{owner}/{repo}/comments
      operations:
      - name: listcommitcommentsforrepository
        method: GET
        description: GitHub List Commit Comments for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-contents-path
      path: /repos/{owner}/{repo}/contents/{path}
      operations:
      - name: getrepositorycontent
        method: GET
        description: GitHub Get Repository Content
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: path
          in: path
          type: string
          description: path parameter
          required: true
        - name: ref
          in: query
          type: string
          description: 'The name of the commit/branch/tag. Default: the repositorys default branch.'
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-contributors
      path: /repos/{owner}/{repo}/contributors
      operations:
      - name: listrepositorycontributors
        method: GET
        description: GitHub List Repository Contributors
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: anon
          in: query
          type: string
          description: Set to `1` or `true` to include anonymous contributors in results.
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-dependency-graph-sbom
      path: /repos/{owner}/{repo}/dependency-graph/sbom
      operations:
      - name: exportsoftwarebillofmaterialssbomforrepository
        method: GET
        description: GitHub Export Software Bill of Materials (sbom) for Repository.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-dependency-graph-snapshots
      path: /repos/{owner}/{repo}/dependency-graph/snapshots
      operations:
      - name: createsnapshotofdependenciesforrepository
        method: POST
        description: GitHub Create Snapshot of Dependencies for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-dispatches
      path: /repos/{owner}/{repo}/dispatches
      operations:
      - name: createrepositorydispatchevent
        method: POST
        description: GitHub Create Repository Dispatch Event
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-events
      path: /repos/{owner}/{repo}/events
      operations:
      - name: listrepositoryevents
        method: GET
        description: GitHub List Repository Events
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-installation
      path: /repos/{owner}/{repo}/installation
      operations:
      - name: getrepositoryinstallationfortheauthenticatedapp
        method: GET
        description: GitHub Get Repository Installation for the Authenticated App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-labels
      path: /repos/{owner}/{repo}/labels
      operations:
      - name: listlabelsforrepository
        method: GET
        description: GitHub List Labels for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-languages
      path: /repos/{owner}/{repo}/languages
      operations:
      - name: listrepositorylanguages
        method: GET
        description: GitHub List Repository Languages
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-lfs
      path: /repos/{owner}/{repo}/lfs
      operations:
      - name: enablegitlfsforrepository
        method: PUT
        description: GitHub Enable Git Lfs for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: disablegitlfsforrepository
        method: DELETE
        description: GitHub Disable Git Lfs for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-license
      path: /repos/{owner}/{repo}/license
      operations:
      - name: getthelicenseforrepository
        method: GET
        description: GitHub Get the License for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-merge-upstream
      path: /repos/{owner}/{repo}/merge-upstream
      operations:
      - name: syncforkbranchwiththeupstreamrepository
        method: POST
        description: GitHub Sync Fork Branch with the Upstream Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-notifications
      path: /repos/{owner}/{repo}/notifications
      operations:
      - name: listrepositorynotificationsfortheauthenticateduser
        method: GET
        description: GitHub List Repository Notifications for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: markrepositorynotificationsasread
        method: PUT
        description: GitHub Mark Repository Notifications as Read
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: repos-owner-repo-readme
      path: /repos/{owner}/{repo}/readme
      operations:
      - name: getrepositoryreadme
        method: GET
        description: GitHub Get Repository Readme
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ref
          in: query
          type: string
          description: 'The name of the commit/branch/tag. Default: the repositorys default branch.'
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-readme-dir
      path: /repos/{owner}/{repo}/readme/{dir}
      operations:
      - name: getrepositoryreadmefordirectory
        method: GET
        description: GitHub Get Repository Readme for Directory
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: dir
          in: path
          type: string
          description: The alternate path to look for a README file
          required: true
        - name: ref
          in: query
          type: string
          description: 'The name of the commit/branch/tag. Default: the repositorys default branch.'
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-replicas-caches
      path: /repos/{owner}/{repo}/replicas/caches
      operations:
      - name: listrepositorycachereplicationstatus
        method: GET
        description: GitHub List Repository Cache Replication Status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-secret-scanning-alerts
      path: /repos/{owner}/{repo}/secret-scanning/alerts
      operations:
      - name: listsecretscanningalertsforrepository
        method: GET
        description: GitHub List Secret Scanning Alerts for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-subscription
      path: /repos/{owner}/{repo}/subscription
      operations:
      - name: getrepositorysubscription
        method: GET
        description: GitHub Get Repository Subscription
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: setrepositorysubscription
        method: PUT
        description: GitHub Set Repository Subscription
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deleterepositorysubscription
        method: DELETE
        description: GitHub Delete Repository Subscription
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-tags
      path: /repos/{owner}/{repo}/tags
      operations:
      - name: listrepositorytags
        method: GET
        description: GitHub List Repository Tags
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-tags-protection
      path: /repos/{owner}/{repo}/tags/protection
      operations:
      - name: listtagprotectionstatesforrepository
        method: GET
        description: GitHub List Tag Protection States for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: createtagprotectionstateforrepository
        method: POST
        description: GitHub Create Tag Protection State for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-tags-protection-tag_protection_id
      path: /repos/{owner}/{repo}/tags/protection/{tag_protection_id}
      operations:
      - name: deletetagprotectionstateforrepository
        method: DELETE
        description: GitHub Delete Tag Protection State for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-tarball-ref
      path: /repos/{owner}/{repo}/tarball/{ref}
      operations:
      - name: downloadrepositoryarchivetar
        method: GET
        description: GitHub Download Repository Archive (tar)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ref
          in: path
          type: string
          required: true
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-teams
      path: /repos/{owner}/{repo}/teams
      operations:
      - name: listrepositoryteams
        method: GET
        description: GitHub List Repository Teams
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-owner-repo-topics
      path: /repos/{owner}/{repo}/topics
      operations:
      - name: getallrepositorytopics
        method: GET
        description: GitHub Get All Repository Topics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
      - name: replaceallrepositorytopics
        method: PUT
        description: GitHub Replace All Repository Topics
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-transfer
      path: /repos/{owner}/{repo}/transfer
      operations:
      - name: transferrepository
        method: POST
        description: GitHub Transfer Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repos-owner-repo-vulnerability-alerts
      path: /repos/{owner}/{repo}/vulnerability-alerts
      operations:
      - name: checkifvulnerabilityalertsareenabledforrepository
        method: GET
        description: GitHub Check if Vulnerability Alerts Are Enabled for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: repos-template_owner-template_repo-generate
      path: /repos/{template_owner}/{template_repo}/generate
      operations:
      - name: createrepositoryusingtemplate
        method: POST
        description: GitHub Create Repository Using Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: template_owner
          in: path
          type: string
          description: The account owner of the template repository. The name is not case sensitive.
          required: true
        - name: template_repo
          in: path
          type: string
          description: The name of the template repository without the `.git` extension. The name is not case sensitive.
          required: true
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: repositories
      path: /repositories
      operations:
      - name: listpublicrepositories
        method: GET
        description: GitHub List Public Repositories
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: visibility
          in: query
          type: string
          description: Specifies the types of repositories to return. This endpoint will only list repositories available
            to all users on the enterprise.
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    - name: search-repositories
      path: /search/repositories
      operations:
      - name: searchrepositories
        method: GET
        description: GitHub Search Repositories
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: q
          in: query
          type: string
          description: The query contains one or more search keywords and qualifiers. Qualifiers allow you to limit your search
            to specific areas of GitHub Enterprise Server. The REST
          required: true
        - name: sort
          in: query
          type: string
          description: 'Sorts the results of your query by number of `stars`, `forks`, or `help-wanted-issues` or how recently
            the items were `updated`. Default: [best match](https://d'
        - name: Authorization
          in: header
          type: string
        - name: X-GitHub-Api-Version
          in: header
          type: string
        - name: Accept
          in: header
          type: string
    authentication:
      type: bearer
      token: '{{env.GITHUB_API_KEY}}'
  exposes:
  - type: rest
    namespace: repo-tags-repositories-rest
    port: 8080
    description: REST adapter for github-repos-api — Repositories. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/repos/{owner}/{repo}
      name: repos-owner-repo
      description: REST surface for repos-owner-repo.
      operations:
      - method: GET
        name: getrepository
        description: GitHub Get Repository
        call: repo-tags-repositories.getrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updaterepository
        description: GitHub Update Repository
        call: repo-tags-repositories.updaterepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleterepository
        description: GitHub Delete Repository
        call: repo-tags-repositories.deleterepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/check-suites/preferences
      name: repos-owner-repo-check-suites-preferences
      description: REST surface for repos-owner-repo-check-suites-preferences.
      operations:
      - method: PATCH
        name: updaterepositorypreferencesforchecksuites
        description: GitHub Update Repository Preferences for Check Suites
        call: repo-tags-repositories.updaterepositorypreferencesforchecksuites
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/comments
      name: repos-owner-repo-comments
      description: REST surface for repos-owner-repo-comments.
      operations:
      - method: GET
        name: listcommitcommentsforrepository
        description: GitHub List Commit Comments for Repository
        call: repo-tags-repositories.listcommitcommentsforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/contents/{path}
      name: repos-owner-repo-contents-path
      description: REST surface for repos-owner-repo-contents-path.
      operations:
      - method: GET
        name: getrepositorycontent
        description: GitHub Get Repository Content
        call: repo-tags-repositories.getrepositorycontent
        with:
          path: rest.path
          ref: rest.ref
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/contributors
      name: repos-owner-repo-contributors
      description: REST surface for repos-owner-repo-contributors.
      operations:
      - method: GET
        name: listrepositorycontributors
        description: GitHub List Repository Contributors
        call: repo-tags-repositories.listrepositorycontributors
        with:
          anon: rest.anon
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/dependency-graph/sbom
      name: repos-owner-repo-dependency-graph-sbom
      description: REST surface for repos-owner-repo-dependency-graph-sbom.
      operations:
      - method: GET
        name: exportsoftwarebillofmaterialssbomforrepository
        description: GitHub Export Software Bill of Materials (sbom) for Repository.
        call: repo-tags-repositories.exportsoftwarebillofmaterialssbomforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-GitHub-Api-Version
          Accept: rest.Accept
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/repos/{owner}/{repo}/dependency-graph/snapshots
      name: repos-owner-repo-dependency-graph-snapshots
      description: REST surface for repos-owner-repo-dependency-graph-snapshots.
      operations:
      - method: POST
        name: createsnapshotofdependenciesforrepository
        description: GitHub Create Snapshot of Dependencies for Repository
        call: repo-tags-repositories.createsnapshotofdependenciesforrepository
        with:
          Authorization: rest.Authorization
          X-GitHub-Api-Version: rest.X-G

# --- truncated at 32 KB (68 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/github/refs/heads/main/capabilities/repo-tags-repositories.yaml