GitHub Copilot · Arazzo Workflow

GitHub Copilot Provision Seats for Teams

Version 1.0.0

Confirm organization billing capacity, assign Copilot seats to whole teams, and read back the updated seat breakdown.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub AgentsArtificial IntelligenceCode GenerationCode ReviewCoding AgentsCustom InstructionsDeveloper ToolsExtensionsIDEMachine-LearningMCPMetricsProductivityArazzoWorkflows

Provider

github-copilot

Workflows

provision-teams
Confirm billing, assign Copilot seats to teams, and re-read the breakdown.
Reads org Copilot billing, branches to abort when seat management is disabled, adds seats for all members of the supplied team slugs, then reads billing again to observe the updated seat breakdown.
3 steps inputs: org, selectedTeams outputs: seatsCreated, totalSeatsAfter, totalSeatsBefore
1
getBilling
Read the organization's Copilot billing information to confirm seat management is enabled before purchasing seats for teams.
2
addTeams
Purchase Copilot seats for all members of the supplied teams. Billing is applied per the organization's plan. Responds 201 with the number of new seats created.
3
confirmBilling
Re-read the organization's Copilot billing information to observe the updated seat breakdown after the team seats were purchased.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: GitHub Copilot Provision Seats for Teams
  summary: Confirm organization billing capacity, assign Copilot seats to whole teams, and read back the updated seat breakdown.
  description: >-
    A team-level seat provisioning flow for GitHub Copilot. The workflow reads
    the organization's Copilot billing to confirm seat management is active,
    branches to abort when management is disabled, purchases seats for every
    member of the supplied teams, and re-reads billing to confirm the updated
    seat breakdown. Every step spells out its request inline so the flow can be
    read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-4240.40
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-4240.40
      capability_name: Subscription Modification
      spec: github-copilot-copilot-user-management-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: copilotBillingApi
  url: ../openapi/github-copilot-copilot-billing-api-openapi.yml
  type: openapi
- name: copilotUserManagementApi
  url: ../openapi/github-copilot-copilot-user-management-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-teams
  summary: Confirm billing, assign Copilot seats to teams, and re-read the breakdown.
  description: >-
    Reads org Copilot billing, branches to abort when seat management is
    disabled, adds seats for all members of the supplied team slugs, then reads
    billing again to observe the updated seat breakdown.
  inputs:
    type: object
    required:
    - org
    - selectedTeams
    properties:
      org:
        type: string
        description: The organization name (case-insensitive).
      selectedTeams:
        type: array
        items:
          type: string
        description: Team slugs within the organization to assign Copilot seats to.
  steps:
  - stepId: getBilling
    description: >-
      Read the organization's Copilot billing information to confirm seat
      management is enabled before purchasing seats for teams.
    operationId: getCopilotBillingForOrganization
    parameters:
    - name: org
      in: path
      value: $inputs.org
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      seatManagementSetting: $response.body#/seat_management_setting
      totalSeatsBefore: $response.body#/seat_breakdown/total
    onSuccess:
    - name: seatManagementEnabled
      type: goto
      stepId: addTeams
      criteria:
      - context: $response.body
        condition: $.seat_management_setting != 'disabled'
        type: jsonpath
    - name: seatManagementDisabled
      type: end
      criteria:
      - context: $response.body
        condition: $.seat_management_setting == 'disabled'
        type: jsonpath
  - stepId: addTeams
    description: >-
      Purchase Copilot seats for all members of the supplied teams. Billing is
      applied per the organization's plan. Responds 201 with the number of new
      seats created.
    operationId: addTeamsToCopilotSubscription
    parameters:
    - name: org
      in: path
      value: $inputs.org
    requestBody:
      contentType: application/json
      payload:
        selected_teams: $inputs.selectedTeams
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      seatsCreated: $response.body#/seats_created
  - stepId: confirmBilling
    description: >-
      Re-read the organization's Copilot billing information to observe the
      updated seat breakdown after the team seats were purchased.
    operationId: getCopilotBillingForOrganization
    parameters:
    - name: org
      in: path
      value: $inputs.org
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      totalSeatsAfter: $response.body#/seat_breakdown/total
      addedThisCycle: $response.body#/seat_breakdown/added_this_cycle
      pendingInvitation: $response.body#/seat_breakdown/pending_invitation
  outputs:
    seatsCreated: $steps.addTeams.outputs.seatsCreated
    totalSeatsBefore: $steps.getBilling.outputs.totalSeatsBefore
    totalSeatsAfter: $steps.confirmBilling.outputs.totalSeatsAfter

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/github-copilot-provision-teams-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.