APIs.io Engineering Platform Teams API

Interact with GitHub Teams.

Operations 63

GET /orgs/{org}/external-group/{group_id} APIs.io Engineering Platform Get an external group #
GET /orgs/{org}/external-groups APIs.io Engineering Platform List external groups in an organization #
GET /orgs/{org}/teams APIs.io Engineering Platform List teams #
POST /orgs/{org}/teams APIs.io Engineering Platform Create a team #
GET /orgs/{org}/teams/{team_slug} APIs.io Engineering Platform Get a team by name #
PATCH /orgs/{org}/teams/{team_slug} APIs.io Engineering Platform Update a team #
DELETE /orgs/{org}/teams/{team_slug} APIs.io Engineering Platform Delete a team #
GET /orgs/{org}/teams/{team_slug}/discussions APIs.io Engineering Platform List discussions #
POST /orgs/{org}/teams/{team_slug}/discussions APIs.io Engineering Platform Create a discussion #
GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} APIs.io Engineering Platform Get a discussion #
PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} APIs.io Engineering Platform Update a discussion #
DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} APIs.io Engineering Platform Delete a discussion #
GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments APIs.io Engineering Platform List discussion comments #
POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments APIs.io Engineering Platform Create a discussion comment #
GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Get a discussion comment #
PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Update a discussion comment #
DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Delete a discussion comment #
GET /orgs/{org}/teams/{team_slug}/external-groups APIs.io Engineering Platform List a connection between an external group and a team #
GET /orgs/{org}/teams/{team_slug}/members APIs.io Engineering Platform List team members #
GET /orgs/{org}/teams/{team_slug}/memberships/{username} APIs.io Engineering Platform Get team membership for a user #
PUT /orgs/{org}/teams/{team_slug}/memberships/{username} APIs.io Engineering Platform Add or update team membership for a user #
DELETE /orgs/{org}/teams/{team_slug}/memberships/{username} APIs.io Engineering Platform Remove team membership for a user #
GET /orgs/{org}/teams/{team_slug}/projects APIs.io Engineering Platform List team projects #
GET /orgs/{org}/teams/{team_slug}/projects/{project_id} APIs.io Engineering Platform Check team permissions for a project #
PUT /orgs/{org}/teams/{team_slug}/projects/{project_id} APIs.io Engineering Platform Add or update team project permissions #
DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id} APIs.io Engineering Platform Remove a project from a team #
GET /orgs/{org}/teams/{team_slug}/repos APIs.io Engineering Platform List team repositories #
GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} APIs.io Engineering Platform Check team permissions for a repository #
PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} APIs.io Engineering Platform Add or update team repository permissions #
DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} APIs.io Engineering Platform Remove a repository from a team #
GET /orgs/{org}/teams/{team_slug}/teams APIs.io Engineering Platform List child teams #
GET /teams/{team_id} APIs.io Engineering Platform Get a team (Legacy) #
PATCH /teams/{team_id} APIs.io Engineering Platform Update a team (Legacy) #
DELETE /teams/{team_id} APIs.io Engineering Platform Delete a team (Legacy) #
GET /teams/{team_id}/discussions APIs.io Engineering Platform List discussions (Legacy) #
POST /teams/{team_id}/discussions APIs.io Engineering Platform Create a discussion (Legacy) #
GET /teams/{team_id}/discussions/{discussion_number} APIs.io Engineering Platform Get a discussion (Legacy) #
PATCH /teams/{team_id}/discussions/{discussion_number} APIs.io Engineering Platform Update a discussion (Legacy) #
DELETE /teams/{team_id}/discussions/{discussion_number} APIs.io Engineering Platform Delete a discussion (Legacy) #
GET /teams/{team_id}/discussions/{discussion_number}/comments APIs.io Engineering Platform List discussion comments (Legacy) #
POST /teams/{team_id}/discussions/{discussion_number}/comments APIs.io Engineering Platform Create a discussion comment (Legacy) #
GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Get a discussion comment (Legacy) #
PATCH /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Update a discussion comment (Legacy) #
DELETE /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} APIs.io Engineering Platform Delete a discussion comment (Legacy) #
GET /teams/{team_id}/members APIs.io Engineering Platform List team members (Legacy) #
GET /teams/{team_id}/members/{username} APIs.io Engineering Platform Get team member (Legacy) #
PUT /teams/{team_id}/members/{username} APIs.io Engineering Platform Add team member (Legacy) #
DELETE /teams/{team_id}/members/{username} APIs.io Engineering Platform Remove team member (Legacy) #
GET /teams/{team_id}/memberships/{username} APIs.io Engineering Platform Get team membership for a user (Legacy) #
PUT /teams/{team_id}/memberships/{username} APIs.io Engineering Platform Add or update team membership for a user (Legacy) #
DELETE /teams/{team_id}/memberships/{username} APIs.io Engineering Platform Remove team membership for a user (Legacy) #
GET /teams/{team_id}/projects APIs.io Engineering Platform List team projects (Legacy) #
GET /teams/{team_id}/projects/{project_id} APIs.io Engineering Platform Check team permissions for a project (Legacy) #
PUT /teams/{team_id}/projects/{project_id} APIs.io Engineering Platform Add or update team project permissions (Legacy) #
DELETE /teams/{team_id}/projects/{project_id} APIs.io Engineering Platform Remove a project from a team (Legacy) #
GET /teams/{team_id}/repos APIs.io Engineering Platform List team repositories (Legacy) #
GET /teams/{team_id}/repos/{owner}/{repo} APIs.io Engineering Platform Check team permissions for a repository (Legacy) #
PUT /teams/{team_id}/repos/{owner}/{repo} APIs.io Engineering Platform Add or update team repository permissions (Legacy) #
DELETE /teams/{team_id}/repos/{owner}/{repo} APIs.io Engineering Platform Remove a repository from a team (Legacy) #
GET /teams/{team_id}/teams APIs.io Engineering Platform List child teams (Legacy) #
GET /user/teams APIs.io Engineering Platform List teams for the authenticated user #

Documentation

Specifications

Other Resources

🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1ab188a6-cc1f-490d-9413-9c6da20918d0?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-0e94f581-cbc1-48e0-b594-1f6b3d07a328?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4517d93a-e7f7-4dc2-b572-06762bbe14de?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-88f9ddbb-3115-47dc-b6e5-7fc6f1d2a190?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-3a12caae-4945-4df4-8ab9-bb6219ba7a9f?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-863b18f0-c2f2-4e32-a5fa-0d1e6ccf77a9?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-189876d1-f207-49a2-a4bc-5c67ae78cd19?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c1e74fd9-3f84-4d95-943d-d645d6cb82f7?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b002164d-6e8a-4b6d-b409-4929476e7818?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-508660fd-30b8-4c9c-aede-8edbac8a514d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-da35e0ba-f1a9-42fe-a77a-56ff0a47e341?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1d4df7d0-9c92-4fa8-946f-2110c2b3b48d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-2af6f54f-d259-46c0-8f86-78856f5885cd?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-cc203f31-e7f6-42ec-ad34-c5c4cde58904?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-f19285da-48dd-4691-bbdf-f7d6bec157a3?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa69cacc-4bbf-4724-a1d4-78cdad57fee8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-a5858f86-04d3-4e15-ae11-b42c7516688b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c2052341-766c-43c7-b1dc-ed4985e4606b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa777c90-8271-4809-8eac-3ec39a9a899c?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4d5957dc-df05-4216-a5fc-d46b3ba811d8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-28d97617-fdba-46a5-ac3e-40f3d2e0fa57?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-7429b451-d812-4abc-b497-b763372cf5c5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b0eafdd0-adaa-48a2-a855-6a31beb86d83?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-209f34ef-13c1-400c-bca8-fcddb304aff5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-fb2bbbb8-d4cc-48b1-a660-c8e158bfbbea?action=share&creator=35240

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/engineering-platform-teams-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

engineering-platform-teams-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.1.4
  title: APIs.io Engineering Platform GitHub v3 REST Teams API
  description: GitHub's v3 REST API.
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT
  termsOfService: https://docs.github.com/articles/github-terms-of-service
  contact:
    name: Support
    url: https://support.github.com/contact?tags=dotcom-rest-api
  x-github-plan: ghes
  x-github-release: 3.9
servers:
- url: '{protocol}://{hostname}/api/v3'
  variables:
    hostname:
      description: Self-hosted Enterprise Server hostname
      default: HOSTNAME
    protocol:
      description: Self-hosted Enterprise Server protocol
      default: http
tags:
- name: Teams
  description: Interact with GitHub Teams.
paths:
  /orgs/{org}/external-group/{group_id}:
    get:
      summary: APIs.io Engineering Platform Get an external group
      description: 'Displays information about the specific group''s usage.  Provides a list of the group''s external members as well as a list of teams that this group is connected to.


        You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub''s products](https://docs.github.com/enterprise-server@3.9/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.'
      tags:
      - Teams
      operationId: teams/external-idp-group-info-for-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/external-groups#get-an-external-group
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/group-id'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external-group'
              examples:
                default:
                  $ref: '#/components/examples/external-group'
      x-github:
        githubCloudOnly: true
        enabledForGitHubApps: true
        category: teams
        subcategory: external-groups
  /orgs/{org}/external-groups:
    get:
      summary: APIs.io Engineering Platform List external groups in an organization
      description: 'Lists external groups available in an organization. You can query the groups using the `display_name` parameter, only groups with a `group_name` containing the text provided in the `display_name` parameter will be returned.  You can also limit your page results using the `per_page` parameter. GitHub Enterprise Server generates a url-encoded `page` token using a cursor value for where the next page begins. For more information on cursor pagination, see "[Offset and Cursor Pagination explained](https://dev.to/jackmarchant/offset-and-cursor-pagination-explained-b89)."


        You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub''s products](https://docs.github.com/enterprise-server@3.9/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.'
      tags:
      - Teams
      operationId: teams/list-external-idp-groups-for-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/external-groups#list-external-groups-in-an-organization
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/per-page'
      - name: page
        description: Page token
        in: query
        schema:
          type: integer
      - name: display_name
        description: Limits the list to groups containing the text in the group name
        in: query
        schema:
          type: string
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external-groups'
              examples:
                default:
                  $ref: '#/components/examples/external-groups'
          headers:
            Link:
              example: <https://api.github.com/resource?per_page=2&page=url-encoded-next-page-token>; rel="next"
              schema:
                type: string
      x-github:
        githubCloudOnly: true
        enabledForGitHubApps: true
        category: teams
        subcategory: external-groups
  /orgs/{org}/teams:
    get:
      summary: APIs.io Engineering Platform List teams
      description: Lists all teams in an organization that are visible to the authenticated user.
      tags:
      - Teams
      operationId: teams/list
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/teams#list-teams
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/per-page'
      - $ref: '#/components/parameters/page'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/team'
              examples:
                default:
                  $ref: '#/components/examples/team-items'
          headers:
            Link:
              $ref: '#/components/headers/link'
        '403':
          $ref: '#/components/responses/forbidden'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: teams
    post:
      summary: APIs.io Engineering Platform Create a team
      description: 'To create a team, the authenticated user must be a member or owner of `{org}`. By default, organization members can create teams. Organization owners can limit team creation to organization owners. For more information, see "[Setting team creation permissions](https://docs.github.com/enterprise-server@3.9/articles/setting-team-creation-permissions-in-your-organization)."


        When you create a new team, you automatically become a team maintainer without explicitly adding yourself to the optional array of `maintainers`. For more information, see "[About teams](https://docs.github.com/enterprise-server@3.9/github/setting-up-and-managing-organizations-and-teams/about-teams)".'
      tags:
      - Teams
      operationId: teams/create
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/teams#create-a-team
      parameters:
      - $ref: '#/components/parameters/org'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: The name of the team.
                description:
                  type: string
                  description: The description of the team.
                maintainers:
                  type: array
                  description: List GitHub IDs for organization members who will become team maintainers.
                  items:
                    type: string
                repo_names:
                  type: array
                  description: The full name (e.g., "organization-name/repository-name") of repositories to add the team to.
                  items:
                    type: string
                privacy:
                  type: string
                  description: "The level of privacy this team should have. The options are:  \n**For a non-nested team:**  \n * `secret` - only visible to organization owners and members of this team.  \n * `closed` - visible to all members of this organization.  \nDefault: `secret`  \n**For a parent or child team:**  \n * `closed` - visible to all members of this organization.  \nDefault for child team: `closed`"
                  enum:
                  - secret
                  - closed
                permission:
                  type: string
                  description: '**Deprecated**. The permission that new repositories will be added to the team with when none is specified.'
                  enum:
                  - pull
                  - push
                  default: pull
                parent_team_id:
                  type: integer
                  description: The ID of a team to set as the parent team.
                ldap_dn:
                  type: string
                  description: The [distinguished name](https://www.ldap.com/ldap-dns-and-rdns) (DN) of the LDAP entry to map to a team. LDAP synchronization must be enabled to map LDAP entries to a team. Use the "[Update LDAP mapping for a team](https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-team)" endpoint to change the LDAP DN. For more information, see "[Using LDAP](https://docs.github.com/enterprise-server@3.9/admin/identity-and-access-management/authenticating-users-for-your-github-enterprise-server-instance/using-ldap#enabling-ldap-sync)."
              required:
              - name
            examples:
              default:
                value:
                  name: Justice League
                  description: A great team
                  permission: push
                  privacy: closed
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-full'
              examples:
                default:
                  $ref: '#/components/examples/team-full'
        '422':
          $ref: '#/components/responses/validation_failed'
        '403':
          $ref: '#/components/responses/forbidden'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: teams
  /orgs/{org}/teams/{team_slug}:
    get:
      summary: APIs.io Engineering Platform Get a team by name
      description: 'Gets a team using the team''s `slug`. To create the `slug`, GitHub Enterprise Server replaces special characters in the `name` string, changes all words to lowercase, and replaces spaces with a `-` separator. For example, `"My TEam Näme"` would become `my-team-name`.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}`.'
      tags:
      - Teams
      operationId: teams/get-by-name
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/teams#get-a-team-by-name
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-full'
              examples:
                default:
                  $ref: '#/components/examples/team-full'
        '404':
          $ref: '#/components/responses/not_found'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: teams
    patch:
      summary: APIs.io Engineering Platform Update a team
      description: 'To edit a team, the authenticated user must either be an organization owner or a team maintainer.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}`.'
      tags:
      - Teams
      operationId: teams/update-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/teams#update-a-team
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: The name of the team.
                description:
                  type: string
                  description: The description of the team.
                privacy:
                  type: string
                  description: "The level of privacy this team should have. Editing teams without specifying this parameter leaves `privacy` intact. When a team is nested, the `privacy` for parent teams cannot be `secret`. The options are:  \n**For a non-nested team:**  \n * `secret` - only visible to organization owners and members of this team.  \n * `closed` - visible to all members of this organization.  \n**For a parent or child team:**  \n * `closed` - visible to all members of this organization."
                  enum:
                  - secret
                  - closed
                permission:
                  type: string
                  description: '**Deprecated**. The permission that new repositories will be added to the team with when none is specified.'
                  enum:
                  - pull
                  - push
                  - admin
                  default: pull
                parent_team_id:
                  type:
                  - integer
                  - 'null'
                  description: The ID of a team to set as the parent team.
            examples:
              default:
                value:
                  name: new team name
                  description: new team description
                  privacy: closed
      responses:
        '200':
          description: Response when the updated information already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-full'
              examples:
                default:
                  $ref: '#/components/examples/team-full'
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-full'
              examples:
                default:
                  $ref: '#/components/examples/team-full'
        '404':
          $ref: '#/components/responses/not_found'
        '422':
          $ref: '#/components/responses/validation_failed'
        '403':
          $ref: '#/components/responses/forbidden'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: teams
    delete:
      summary: APIs.io Engineering Platform Delete a team
      description: 'To delete a team, the authenticated user must be an organization owner or team maintainer.


        If you are an organization owner, deleting a parent team will delete all of its child teams as well.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}`.'
      tags:
      - Teams
      operationId: teams/delete-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/teams#delete-a-team
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      responses:
        '204':
          description: Response
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: teams
  /orgs/{org}/teams/{team_slug}/discussions:
    get:
      summary: APIs.io Engineering Platform List discussions
      description: 'List all discussions on a team''s page.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions`.


        OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/list-discussions-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussions#list-discussions
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/direction'
      - $ref: '#/components/parameters/per-page'
      - $ref: '#/components/parameters/page'
      - name: pinned
        in: query
        required: false
        description: Pinned discussions only filter
        schema:
          type: string
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/team-discussion'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-items'
          headers:
            Link:
              $ref: '#/components/headers/link'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussions
    post:
      summary: APIs.io Engineering Platform Create a discussion
      description: 'Creates a new discussion post on a team''s page.


        This endpoint triggers [notifications](https://docs.github.com/enterprise-server@3.9/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/enterprise-server@3.9/rest/guides/best-practices-for-using-the-rest-api)."


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/create-discussion-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussions#create-a-discussion
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  description: The discussion post's title.
                body:
                  type: string
                  description: The discussion post's body text.
                private:
                  type: boolean
                  description: Private posts are only visible to team members, organization owners, and team maintainers. Public posts are visible to all members of the organization. Set to `true` to create a private post.
                  default: false
              required:
              - title
              - body
            examples:
              default:
                value:
                  title: Our first team post
                  body: Hi! This is an area for us to collaborate as a team.
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion'
      x-github:
        triggersNotification: true
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussions
  /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}:
    get:
      summary: APIs.io Engineering Platform Get a discussion
      description: 'Get a specific discussion on a team''s page.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.


        OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/get-discussion-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussions#get-a-discussion
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussions
    patch:
      summary: APIs.io Engineering Platform Update a discussion
      description: 'Edits the title and body text of a discussion post. Only the parameters you provide are updated.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/update-discussion-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussions#update-a-discussion
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  description: The discussion post's title.
                body:
                  type: string
                  description: The discussion post's body text.
            examples:
              default:
                value:
                  title: Welcome to our first team post
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-2'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussions
    delete:
      summary: APIs.io Engineering Platform Delete a discussion
      description: 'Delete a discussion from a team''s page.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/delete-discussion-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussions#delete-a-discussion
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      responses:
        '204':
          description: Response
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussions
  /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments:
    get:
      summary: APIs.io Engineering Platform List discussion comments
      description: 'List all comments on a team discussion.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.


        OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/list-discussion-comments-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussion-comments#list-discussion-comments
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      - $ref: '#/components/parameters/direction'
      - $ref: '#/components/parameters/per-page'
      - $ref: '#/components/parameters/page'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/team-discussion-comment'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-comment-items'
          headers:
            Link:
              $ref: '#/components/headers/link'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussion-comments
    post:
      summary: APIs.io Engineering Platform Create a discussion comment
      description: 'Creates a new comment on a team discussion.


        This endpoint triggers [notifications](https://docs.github.com/enterprise-server@3.9/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see "[Rate limits for the API](https://docs.github.com/enterprise-server@3.9/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)" and "[Best practices for using the REST API](https://docs.github.com/enterprise-server@3.9/rest/guides/best-practices-for-using-the-rest-api)."


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/create-discussion-comment-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussion-comments#create-a-discussion-comment
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                body:
                  type: string
                  description: The discussion comment's body text.
              required:
              - body
            examples:
              default:
                value:
                  body: Do you like apples?
      responses:
        '201':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion-comment'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-comment'
      x-github:
        triggersNotification: true
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussion-comments
  /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}:
    get:
      summary: APIs.io Engineering Platform Get a discussion comment
      description: 'Get a specific comment on a team discussion.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.


        OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/get-discussion-comment-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussion-comments#get-a-discussion-comment
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      - $ref: '#/components/parameters/comment-number'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion-comment'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-comment'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussion-comments
    patch:
      summary: APIs.io Engineering Platform Update a discussion comment
      description: 'Edits the body text of a discussion comment.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/update-discussion-comment-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussion-comments#update-a-discussion-comment
      parameters:
      - $ref: '#/components/parameters/org'
      - $ref: '#/components/parameters/team-slug'
      - $ref: '#/components/parameters/discussion-number'
      - $ref: '#/components/parameters/comment-number'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                body:
                  type: string
                  description: The discussion comment's body text.
              required:
              - body
            examples:
              default:
                value:
                  body: Do you like pineapples?
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/team-discussion-comment'
              examples:
                default:
                  $ref: '#/components/examples/team-discussion-comment-2'
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: true
        category: teams
        subcategory: discussion-comments
    delete:
      summary: APIs.io Engineering Platform Delete a discussion comment
      description: 'Deletes a comment on a team discussion.


        **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.


        OAuth app tokens and personal access tokens (classic) need the `write:discussion` scope to use this endpoint.'
      tags:
      - Teams
      operationId: teams/delete-discussion-comment-in-org
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/teams/discussion-comments#delete-a-discussion-comment
      parameters:
      - $r

# --- truncated at 32 KB (221 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/engineering-platform/refs/heads/main/openapi/engineering-platform-teams-api-openapi.yml