GitHub · Capability

GitHub Teams API — Teams

GitHub Teams API — Teams. 60 operations. Lead operation: GitHub Update Ldap Mapping for Team. Self-contained Naftiko capability covering one Github business surface.

Run with Naftiko GithubTeams

What You Can Do

PATCH
Updateldapmappingforteam — GitHub Update Ldap Mapping for Team
/v1/admin/ldap/teams/{team-id}/mapping
POST
Syncldapmappingforteam — GitHub Sync Ldap Mapping for Team
/v1/admin/ldap/teams/{team-id}/sync
PUT
Addsecuritymanagerteam — GitHub Add Security Manager Team
/v1/orgs/{org}/security-managers/teams/{team-slug}
DELETE
Removesecuritymanagerteam — GitHub Remove Security Manager Team
/v1/orgs/{org}/security-managers/teams/{team-slug}
GET
Listteams — GitHub List Teams
/v1/orgs/{org}/teams
POST
Createteam — GitHub Create Team
/v1/orgs/{org}/teams
GET
Getteambyname — GitHub Get Team by Name
/v1/orgs/{org}/teams/{team-slug}
PATCH
Updateteam — GitHub Update Team
/v1/orgs/{org}/teams/{team-slug}
DELETE
Deleteteam — GitHub Delete Team
/v1/orgs/{org}/teams/{team-slug}
GET
Listreactionsforteamdiscussioncomment — GitHub List Reactions for Team Discussion Comment
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/comments/{comment-number}/reactions
POST
Createreactionforteamdiscussioncomment — GitHub Create Reaction for Team Discussion Comment
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/comments/{comment-number}/reactions
DELETE
Deleteteamdiscussioncommentreaction — GitHub Delete Team Discussion Comment Reaction
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/comments/{comment-number}/reactions/{reaction-id}
GET
Listreactionsforteamdiscussion — GitHub List Reactions for Team Discussion
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/reactions
POST
Createreactionforteamdiscussion — GitHub Create Reaction for Team Discussion
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/reactions
DELETE
Deleteteamdiscussionreaction — GitHub Delete Team Discussion Reaction
/v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/reactions/{reaction-id}
GET
Listconnectionbetweenanexternalgroupandteam — GitHub List Connection Between an External Group and Team
/v1/orgs/{org}/teams/{team-slug}/external-groups
PATCH
Updatetheconnectionbetweenanexternalgroupandteam — GitHub Update the Connection Between an External Group and Team
/v1/orgs/{org}/teams/{team-slug}/external-groups
DELETE
Removetheconnectionbetweenanexternalgroupandteam — GitHub Remove the Connection Between an External Group and Team
/v1/orgs/{org}/teams/{team-slug}/external-groups
GET
Listteammembers — GitHub List Team Members
/v1/orgs/{org}/teams/{team-slug}/members
GET
Getteammembershipforuser — GitHub Get Team Membership for User
/v1/orgs/{org}/teams/{team-slug}/memberships/{username}
PUT
Addorupdateteammembershipforuser — GitHub Add or Update Team Membership for User
/v1/orgs/{org}/teams/{team-slug}/memberships/{username}
DELETE
Removeteammembershipforuser — GitHub Remove Team Membership for User
/v1/orgs/{org}/teams/{team-slug}/memberships/{username}
GET
Listteamprojects — GitHub List Team Projects
/v1/orgs/{org}/teams/{team-slug}/projects
GET
Checkteampermissionsforproject — GitHub Check Team Permissions for Project
/v1/orgs/{org}/teams/{team-slug}/projects/{project-id}
PUT
Addorupdateteamprojectpermissions — GitHub Add or Update Team Project Permissions
/v1/orgs/{org}/teams/{team-slug}/projects/{project-id}
DELETE
Removeprojectfromteam — GitHub Remove Project from Team
/v1/orgs/{org}/teams/{team-slug}/projects/{project-id}
GET
Listteamrepositories — GitHub List Team Repositories
/v1/orgs/{org}/teams/{team-slug}/repos
GET
Checkteampermissionsforrepository — GitHub Check Team Permissions for Repository
/v1/orgs/{org}/teams/{team-slug}/repos/{owner}/{repo}
PUT
Addorupdateteamrepositorypermissions — GitHub Add or Update Team Repository Permissions
/v1/orgs/{org}/teams/{team-slug}/repos/{owner}/{repo}
DELETE
Removerepositoryfromteam — GitHub Remove Repository from Team
/v1/orgs/{org}/teams/{team-slug}/repos/{owner}/{repo}
GET
Listchildteams — GitHub List Child Teams
/v1/orgs/{org}/teams/{team-slug}/teams
GET
Getteamswithaccesstotheprotectedbranch — GitHub Get Teams with Access to the Protected Branch
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
POST
Addteamaccessrestrictions — GitHub Add Team Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
PUT
Setteamaccessrestrictions — GitHub Set Team Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
DELETE
Removeteamaccessrestrictions — GitHub Remove Team Access Restrictions
/v1/repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
GET
Listrepositoryteams — GitHub List Repository Teams
/v1/repos/{owner}/{repo}/teams
GET
Getteamlegacy — GitHub Get Team (legacy)
/v1/teams/{team-id}
PATCH
Updateteamlegacy — GitHub Update Team (legacy)
/v1/teams/{team-id}
DELETE
Deleteteamlegacy — GitHub Delete Team (legacy)
/v1/teams/{team-id}
GET
Listreactionsforteamdiscussioncommentlegacy — GitHub List Reactions for Team Discussion Comment (legacy)
/v1/teams/{team-id}/discussions/{discussion-number}/comments/{comment-number}/reactions
POST
Createreactionforteamdiscussioncommentlegacy — GitHub Create Reaction for Team Discussion Comment (legacy)
/v1/teams/{team-id}/discussions/{discussion-number}/comments/{comment-number}/reactions
GET
Listreactionsforteamdiscussionlegacy — GitHub List Reactions for Team Discussion (legacy)
/v1/teams/{team-id}/discussions/{discussion-number}/reactions
POST
Createreactionforteamdiscussionlegacy — GitHub Create Reaction for Team Discussion (legacy)
/v1/teams/{team-id}/discussions/{discussion-number}/reactions
GET
Listteammemberslegacy — GitHub List Team Members (legacy)
/v1/teams/{team-id}/members
GET
Getteammemberlegacy — GitHub Get Team Member (legacy)
/v1/teams/{team-id}/members/{username}
PUT
Addteammemberlegacy — GitHub Add Team Member (legacy)
/v1/teams/{team-id}/members/{username}
DELETE
Removeteammemberlegacy — GitHub Remove Team Member (legacy)
/v1/teams/{team-id}/members/{username}
GET
Getteammembershipforuserlegacy — GitHub Get Team Membership for User (legacy)
/v1/teams/{team-id}/memberships/{username}
PUT
Addorupdateteammembershipforuserlegacy — GitHub Add or Update Team Membership for User (legacy)
/v1/teams/{team-id}/memberships/{username}
DELETE
Removeteammembershipforuserlegacy — GitHub Remove Team Membership for User (legacy)
/v1/teams/{team-id}/memberships/{username}
GET
Listteamprojectslegacy — GitHub List Team Projects (legacy)
/v1/teams/{team-id}/projects
GET
Checkteampermissionsforprojectlegacy — GitHub Check Team Permissions for Project (legacy)
/v1/teams/{team-id}/projects/{project-id}
PUT
Addorupdateteamprojectpermissionslegacy — GitHub Add or Update Team Project Permissions (legacy)
/v1/teams/{team-id}/projects/{project-id}
DELETE
Removeprojectfromteamlegacy — GitHub Remove Project from Team (legacy)
/v1/teams/{team-id}/projects/{project-id}
GET
Listteamrepositorieslegacy — GitHub List Team Repositories (legacy)
/v1/teams/{team-id}/repos
GET
Checkteampermissionsforrepositorylegacy — GitHub Check Team Permissions for Repository (legacy)
/v1/teams/{team-id}/repos/{owner}/{repo}
PUT
Addorupdateteamrepositorypermissionslegacy — GitHub Add or Update Team Repository Permissions (legacy)
/v1/teams/{team-id}/repos/{owner}/{repo}
DELETE
Removerepositoryfromteamlegacy — GitHub Remove Repository from Team (legacy)
/v1/teams/{team-id}/repos/{owner}/{repo}
GET
Listchildteamslegacy — GitHub List Child Teams (legacy)
/v1/teams/{team-id}/teams
GET
Listteamsfortheauthenticateduser — GitHub List Teams for the Authenticated User
/v1/user/teams

MCP Tools

github-update-ldap-mapping-team

GitHub Update Ldap Mapping for Team

idempotent
github-sync-ldap-mapping-team

GitHub Sync Ldap Mapping for Team

github-add-security-manager-team

GitHub Add Security Manager Team

idempotent
github-remove-security-manager-team

GitHub Remove Security Manager Team

idempotent
github-list-teams

GitHub List Teams

read-only idempotent
github-create-team

GitHub Create Team

github-get-team-name

GitHub Get Team by Name

read-only idempotent
github-update-team

GitHub Update Team

idempotent
github-delete-team

GitHub Delete Team

idempotent
github-list-reactions-team-discussion

GitHub List Reactions for Team Discussion Comment

read-only idempotent
github-create-reaction-team-discussion

GitHub Create Reaction for Team Discussion Comment

github-delete-team-discussion-comment

GitHub Delete Team Discussion Comment Reaction

idempotent
github-list-reactions-team-discussion-2

GitHub List Reactions for Team Discussion

read-only idempotent
github-create-reaction-team-discussion-2

GitHub Create Reaction for Team Discussion

github-delete-team-discussion-reaction

GitHub Delete Team Discussion Reaction

idempotent
github-list-connection-between-external

GitHub List Connection Between an External Group and Team

read-only idempotent
github-update-connection-between-external

GitHub Update the Connection Between an External Group and Team

idempotent
github-remove-connection-between-external

GitHub Remove the Connection Between an External Group and Team

idempotent
github-list-team-members

GitHub List Team Members

read-only idempotent
github-get-team-membership-user

GitHub Get Team Membership for User

read-only idempotent
github-add-update-team-membership

GitHub Add or Update Team Membership for User

idempotent
github-remove-team-membership-user

GitHub Remove Team Membership for User

idempotent
github-list-team-projects

GitHub List Team Projects

read-only idempotent
github-check-team-permissions-project

GitHub Check Team Permissions for Project

read-only idempotent
github-add-update-team-project

GitHub Add or Update Team Project Permissions

idempotent
github-remove-project-team

GitHub Remove Project from Team

idempotent
github-list-team-repositories

GitHub List Team Repositories

read-only idempotent
github-check-team-permissions-repository

GitHub Check Team Permissions for Repository

read-only idempotent
github-add-update-team-repository

GitHub Add or Update Team Repository Permissions

idempotent
github-remove-repository-team

GitHub Remove Repository from Team

idempotent
github-list-child-teams

GitHub List Child Teams

read-only idempotent
github-get-teams-access-protected

GitHub Get Teams with Access to the Protected Branch

read-only idempotent
github-add-team-access-restrictions

GitHub Add Team Access Restrictions

github-set-team-access-restrictions

GitHub Set Team Access Restrictions

idempotent
github-remove-team-access-restrictions

GitHub Remove Team Access Restrictions

idempotent
github-list-repository-teams

GitHub List Repository Teams

read-only idempotent
github-get-team-legacy

GitHub Get Team (legacy)

read-only idempotent
github-update-team-legacy

GitHub Update Team (legacy)

idempotent
github-delete-team-legacy

GitHub Delete Team (legacy)

idempotent
github-list-reactions-team-discussion-3

GitHub List Reactions for Team Discussion Comment (legacy)

read-only idempotent
github-create-reaction-team-discussion-3

GitHub Create Reaction for Team Discussion Comment (legacy)

github-list-reactions-team-discussion-4

GitHub List Reactions for Team Discussion (legacy)

read-only idempotent
github-create-reaction-team-discussion-4

GitHub Create Reaction for Team Discussion (legacy)

github-list-team-members-legacy

GitHub List Team Members (legacy)

read-only idempotent
github-get-team-member-legacy

GitHub Get Team Member (legacy)

read-only idempotent
github-add-team-member-legacy

GitHub Add Team Member (legacy)

idempotent
github-remove-team-member-legacy

GitHub Remove Team Member (legacy)

idempotent
github-get-team-membership-user-2

GitHub Get Team Membership for User (legacy)

read-only idempotent
github-add-update-team-membership-2

GitHub Add or Update Team Membership for User (legacy)

idempotent
github-remove-team-membership-user-2

GitHub Remove Team Membership for User (legacy)

idempotent
github-list-team-projects-legacy

GitHub List Team Projects (legacy)

read-only idempotent
github-check-team-permissions-project-2

GitHub Check Team Permissions for Project (legacy)

read-only idempotent
github-add-update-team-project-2

GitHub Add or Update Team Project Permissions (legacy)

idempotent
github-remove-project-team-legacy

GitHub Remove Project from Team (legacy)

idempotent
github-list-team-repositories-legacy

GitHub List Team Repositories (legacy)

read-only idempotent
github-check-team-permissions-repository-2

GitHub Check Team Permissions for Repository (legacy)

read-only idempotent
github-add-update-team-repository-2

GitHub Add or Update Team Repository Permissions (legacy)

idempotent
github-remove-repository-team-legacy

GitHub Remove Repository from Team (legacy)

idempotent
github-list-child-teams-legacy

GitHub List Child Teams (legacy)

read-only idempotent
github-list-teams-authenticated-user

GitHub List Teams for the Authenticated User

read-only idempotent

Capability Spec

teams-teams.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GitHub Teams API — Teams
  description: 'GitHub Teams API — Teams. 60 operations. Lead operation: GitHub Update Ldap Mapping for Team. Self-contained
    Naftiko capability covering one Github business surface.'
  tags:
  - Github
  - Teams
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GITHUB_API_KEY: GITHUB_API_KEY
capability:
  consumes:
  - type: http
    namespace: teams-teams
    baseUri: ''
    description: GitHub Teams API — Teams business capability. Self-contained, no shared references.
    resources:
    - name: admin-ldap-teams-team_id-mapping
      path: /admin/ldap/teams/{team_id}/mapping
      operations:
      - name: updateldapmappingforteam
        method: PATCH
        description: GitHub Update Ldap Mapping for Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: admin-ldap-teams-team_id-sync
      path: /admin/ldap/teams/{team_id}/sync
      operations:
      - name: syncldapmappingforteam
        method: POST
        description: GitHub Sync Ldap Mapping for Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-security-managers-teams-team_slug
      path: /orgs/{org}/security-managers/teams/{team_slug}
      operations:
      - name: addsecuritymanagerteam
        method: PUT
        description: GitHub Add Security Manager Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: removesecuritymanagerteam
        method: DELETE
        description: GitHub Remove Security Manager Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams
      path: /orgs/{org}/teams
      operations:
      - name: listteams
        method: GET
        description: GitHub List Teams
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createteam
        method: POST
        description: GitHub Create Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-teams-team_slug
      path: /orgs/{org}/teams/{team_slug}
      operations:
      - name: getteambyname
        method: GET
        description: GitHub Get Team by Name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateteam
        method: PATCH
        description: GitHub Update Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deleteteam
        method: DELETE
        description: GitHub Delete Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-discussions-discussion_number-comments-comment_number-r
      path: /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions
      operations:
      - name: listreactionsforteamdiscussioncomment
        method: GET
        description: GitHub List Reactions for Team Discussion Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: content
          in: query
          type: string
          description: Returns a single [reaction type](https://docs.github.com/[email protected]/rest/reactions/reactions#about-reactions).
            Omit this parameter to list all reacti
      - name: createreactionforteamdiscussioncomment
        method: POST
        description: GitHub Create Reaction for Team Discussion Comment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-teams-team_slug-discussions-discussion_number-comments-comment_number-r
      path: /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}
      operations:
      - name: deleteteamdiscussioncommentreaction
        method: DELETE
        description: GitHub Delete Team Discussion Comment Reaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-discussions-discussion_number-reactions
      path: /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions
      operations:
      - name: listreactionsforteamdiscussion
        method: GET
        description: GitHub List Reactions for Team Discussion
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: content
          in: query
          type: string
          description: Returns a single [reaction type](https://docs.github.com/[email protected]/rest/reactions/reactions#about-reactions).
            Omit this parameter to list all reacti
      - name: createreactionforteamdiscussion
        method: POST
        description: GitHub Create Reaction for Team Discussion
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: orgs-org-teams-team_slug-discussions-discussion_number-reactions-reaction_id
      path: /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}
      operations:
      - name: deleteteamdiscussionreaction
        method: DELETE
        description: GitHub Delete Team Discussion Reaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-external-groups
      path: /orgs/{org}/teams/{team_slug}/external-groups
      operations:
      - name: listconnectionbetweenanexternalgroupandteam
        method: GET
        description: GitHub List Connection Between an External Group and Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatetheconnectionbetweenanexternalgroupandteam
        method: PATCH
        description: GitHub Update the Connection Between an External Group and Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: removetheconnectionbetweenanexternalgroupandteam
        method: DELETE
        description: GitHub Remove the Connection Between an External Group and Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-members
      path: /orgs/{org}/teams/{team_slug}/members
      operations:
      - name: listteammembers
        method: GET
        description: GitHub List Team Members
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: role
          in: query
          type: string
          description: Filters members returned by their role in the team.
    - name: orgs-org-teams-team_slug-memberships-username
      path: /orgs/{org}/teams/{team_slug}/memberships/{username}
      operations:
      - name: getteammembershipforuser
        method: GET
        description: GitHub Get Team Membership for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteammembershipforuser
        method: PUT
        description: GitHub Add or Update Team Membership for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removeteammembershipforuser
        method: DELETE
        description: GitHub Remove Team Membership for User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-projects
      path: /orgs/{org}/teams/{team_slug}/projects
      operations:
      - name: listteamprojects
        method: GET
        description: GitHub List Team Projects
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-projects-project_id
      path: /orgs/{org}/teams/{team_slug}/projects/{project_id}
      operations:
      - name: checkteampermissionsforproject
        method: GET
        description: GitHub Check Team Permissions for Project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteamprojectpermissions
        method: PUT
        description: GitHub Add or Update Team Project Permissions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removeprojectfromteam
        method: DELETE
        description: GitHub Remove Project from Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-repos
      path: /orgs/{org}/teams/{team_slug}/repos
      operations:
      - name: listteamrepositories
        method: GET
        description: GitHub List Team Repositories
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-repos-owner-repo
      path: /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}
      operations:
      - name: checkteampermissionsforrepository
        method: GET
        description: GitHub Check Team Permissions for Repository
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteamrepositorypermissions
        method: PUT
        description: GitHub Add or Update Team Repository Permissions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removerepositoryfromteam
        method: DELETE
        description: GitHub Remove Repository from Team
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: orgs-org-teams-team_slug-teams
      path: /orgs/{org}/teams/{team_slug}/teams
      operations:
      - name: listchildteams
        method: GET
        description: GitHub List Child Teams
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: repos-owner-repo-branches-branch-protection-restrictions-teams
      path: /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams
      operations:
      - name: getteamswithaccesstotheprotectedbranch
        method: GET
        description: GitHub Get Teams with Access to the Protected Branch
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addteamaccessrestrictions
        method: POST
        description: GitHub Add Team Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: setteamaccessrestrictions
        method: PUT
        description: GitHub Set Team Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removeteamaccessrestrictions
        method: DELETE
        description: GitHub Remove Team Access Restrictions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - 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: $.
    - name: teams-team_id
      path: /teams/{team_id}
      operations:
      - name: getteamlegacy
        method: GET
        description: GitHub Get Team (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateteamlegacy
        method: PATCH
        description: GitHub Update Team (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteteamlegacy
        method: DELETE
        description: GitHub Delete Team (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-discussions-discussion_number-comments-comment_number-reactions
      path: /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions
      operations:
      - name: listreactionsforteamdiscussioncommentlegacy
        method: GET
        description: GitHub List Reactions for Team Discussion Comment (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: content
          in: query
          type: string
          description: Returns a single [reaction type](https://docs.github.com/[email protected]/rest/reactions/reactions#about-reactions).
            Omit this parameter to list all reacti
      - name: createreactionforteamdiscussioncommentlegacy
        method: POST
        description: GitHub Create Reaction for Team Discussion Comment (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: teams-team_id-discussions-discussion_number-reactions
      path: /teams/{team_id}/discussions/{discussion_number}/reactions
      operations:
      - name: listreactionsforteamdiscussionlegacy
        method: GET
        description: GitHub List Reactions for Team Discussion (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: content
          in: query
          type: string
          description: Returns a single [reaction type](https://docs.github.com/[email protected]/rest/reactions/reactions#about-reactions).
            Omit this parameter to list all reacti
      - name: createreactionforteamdiscussionlegacy
        method: POST
        description: GitHub Create Reaction for Team Discussion (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: teams-team_id-members
      path: /teams/{team_id}/members
      operations:
      - name: listteammemberslegacy
        method: GET
        description: GitHub List Team Members (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: role
          in: query
          type: string
          description: Filters members returned by their role in the team.
    - name: teams-team_id-members-username
      path: /teams/{team_id}/members/{username}
      operations:
      - name: getteammemberlegacy
        method: GET
        description: GitHub Get Team Member (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addteammemberlegacy
        method: PUT
        description: GitHub Add Team Member (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: removeteammemberlegacy
        method: DELETE
        description: GitHub Remove Team Member (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-memberships-username
      path: /teams/{team_id}/memberships/{username}
      operations:
      - name: getteammembershipforuserlegacy
        method: GET
        description: GitHub Get Team Membership for User (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteammembershipforuserlegacy
        method: PUT
        description: GitHub Add or Update Team Membership for User (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removeteammembershipforuserlegacy
        method: DELETE
        description: GitHub Remove Team Membership for User (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-projects
      path: /teams/{team_id}/projects
      operations:
      - name: listteamprojectslegacy
        method: GET
        description: GitHub List Team Projects (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-projects-project_id
      path: /teams/{team_id}/projects/{project_id}
      operations:
      - name: checkteampermissionsforprojectlegacy
        method: GET
        description: GitHub Check Team Permissions for Project (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteamprojectpermissionslegacy
        method: PUT
        description: GitHub Add or Update Team Project Permissions (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removeprojectfromteamlegacy
        method: DELETE
        description: GitHub Remove Project from Team (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-repos
      path: /teams/{team_id}/repos
      operations:
      - name: listteamrepositorieslegacy
        method: GET
        description: GitHub List Team Repositories (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-repos-owner-repo
      path: /teams/{team_id}/repos/{owner}/{repo}
      operations:
      - name: checkteampermissionsforrepositorylegacy
        method: GET
        description: GitHub Check Team Permissions for Repository (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdateteamrepositorypermissionslegacy
        method: PUT
        description: GitHub Add or Update Team Repository Permissions (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: removerepositoryfromteamlegacy
        method: DELETE
        description: GitHub Remove Repository from Team (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: teams-team_id-teams
      path: /teams/{team_id}/teams
      operations:
      - name: listchildteamslegacy
        method: GET
        description: GitHub List Child Teams (legacy)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: user-teams
      path: /user/teams
      operations:
      - name: listteamsfortheauthenticateduser
        method: GET
        description: GitHub List Teams for the Authenticated User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      token: '{{env.GITHUB_API_KEY}}'
  exposes:
  - type: rest
    namespace: teams-teams-rest
    port: 8080
    description: REST adapter for GitHub Teams API — Teams. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/admin/ldap/teams/{team-id}/mapping
      name: admin-ldap-teams-team-id-mapping
      description: REST surface for admin-ldap-teams-team_id-mapping.
      operations:
      - method: PATCH
        name: updateldapmappingforteam
        description: GitHub Update Ldap Mapping for Team
        call: teams-teams.updateldapmappingforteam
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/admin/ldap/teams/{team-id}/sync
      name: admin-ldap-teams-team-id-sync
      description: REST surface for admin-ldap-teams-team_id-sync.
      operations:
      - method: POST
        name: syncldapmappingforteam
        description: GitHub Sync Ldap Mapping for Team
        call: teams-teams.syncldapmappingforteam
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/security-managers/teams/{team-slug}
      name: orgs-org-security-managers-teams-team-slug
      description: REST surface for orgs-org-security-managers-teams-team_slug.
      operations:
      - method: PUT
        name: addsecuritymanagerteam
        description: GitHub Add Security Manager Team
        call: teams-teams.addsecuritymanagerteam
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removesecuritymanagerteam
        description: GitHub Remove Security Manager Team
        call: teams-teams.removesecuritymanagerteam
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams
      name: orgs-org-teams
      description: REST surface for orgs-org-teams.
      operations:
      - method: GET
        name: listteams
        description: GitHub List Teams
        call: teams-teams.listteams
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createteam
        description: GitHub Create Team
        call: teams-teams.createteam
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}
      name: orgs-org-teams-team-slug
      description: REST surface for orgs-org-teams-team_slug.
      operations:
      - method: GET
        name: getteambyname
        description: GitHub Get Team by Name
        call: teams-teams.getteambyname
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateteam
        description: GitHub Update Team
        call: teams-teams.updateteam
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteteam
        description: GitHub Delete Team
        call: teams-teams.deleteteam
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/comments/{comment-number}/reactions
      name: orgs-org-teams-team-slug-discussions-discussion-number-comments-comment-number-r
      description: REST surface for orgs-org-teams-team_slug-discussions-discussion_number-comments-comment_number-r.
      operations:
      - method: GET
        name: listreactionsforteamdiscussioncomment
        description: GitHub List Reactions for Team Discussion Comment
        call: teams-teams.listreactionsforteamdiscussioncomment
        with:
          content: rest.content
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createreactionforteamdiscussioncomment
        description: GitHub Create Reaction for Team Discussion Comment
        call: teams-teams.createreactionforteamdiscussioncomment
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/comments/{comment-number}/reactions/{reaction-id}
      name: orgs-org-teams-team-slug-discussions-discussion-number-comments-comment-number-r
      description: REST surface for orgs-org-teams-team_slug-discussions-discussion_number-comments-comment_number-r.
      operations:
      - method: DELETE
        name: deleteteamdiscussioncommentreaction
        description: GitHub Delete Team Discussion Comment Reaction
        call: teams-teams.deleteteamdiscussioncommentreaction
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/reactions
      name: orgs-org-teams-team-slug-discussions-discussion-number-reactions
      description: REST surface for orgs-org-teams-team_slug-discussions-discussion_number-reactions.
      operations:
      - method: GET
        name: listreactionsforteamdiscussion
        description: GitHub List Reactions for Team Discussion
        call: teams-teams.listreactionsforteamdiscussion
        with:
          content: rest.content
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createreactionforteamdiscussion
        description: GitHub Create Reaction for Team Discussion
        call: teams-teams.createreactionforteamdiscussion
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/discussions/{discussion-number}/reactions/{reaction-id}
      name: orgs-org-teams-team-slug-discussions-discussion-number-reactions-reaction-id
      description: REST surface for orgs-org-teams-team_slug-discussions-discussion_number-reactions-reaction_id.
      operations:
      - method: DELETE
        name: deleteteamdiscussionreaction
        description: GitHub Delete Team Discussion Reaction
        call: teams-teams.deleteteamdiscussionreaction
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/external-groups
      name: orgs-org-teams-team-slug-external-groups
      description: REST surface for orgs-org-teams-team_slug-external-groups.
      operations:
      - method: GET
        name: listconnectionbetweenanexternalgroupandteam
        description: GitHub List Connection Between an External Group and Team
        call: teams-teams.listconnectionbetweenanexternalgroupandteam
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatetheconnectionbetweenanexternalgroupandteam
        description: GitHub Update the Connection Between an External Group and Team
        call: teams-teams.updatetheconnectionbetweenanexternalgroupandteam
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removetheconnectionbetweenanexternalgroupandteam
        description: GitHub Remove the Connection Between an External Group and Team
        call: teams-teams.removetheconnectionbetweenanexternalgroupandteam
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/members
      name: orgs-org-teams-team-slug-members
      description: REST surface for orgs-org-teams-team_slug-members.
      operations:
      - method: GET
        name: listteammembers
        description: GitHub List Team Members
        call: teams-teams.listteammembers
        with:
          role: rest.role
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/memberships/{username}
      name: orgs-org-teams-team-slug-memberships-username
      description: REST surface for orgs-org-teams-team_slug-memberships-username.
      operations:
      - method: GET
        name: getteammembershipforuser
        description: GitHub Get Team Membership for User
        call: teams-teams.getteammembershipforuser
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: addorupdateteammembershipforuser
        description: GitHub Add or Update Team Membership for User
        call: teams-teams.addorupdateteammembershipforuser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: removeteammembershipforuser
        description: GitHub Remove Team Membership for User
        call: teams-teams.removeteammembershipforuser
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/orgs/{org}/teams/{team-slug}/projects
      name: orgs-org-teams-team-slug-projects
      description: REST surface for orgs-org-teams-team_slug-projects.
      operations:
      - method: GET
        n

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