---
title: GitHub Copilot API Integration on Truto
slug: githubcopilot
category: Application Development
canonical: "https://truto.one/integrations/detail/githubcopilot/"
---

# GitHub Copilot API Integration on Truto



**Category:** Application Development  
**Status:** Generally available

## MCP-ready AI tools

Truto exposes 32 tools for GitHub Copilot that AI agents can call directly.

- **get_single_git_hub_copilot_seat_by_id** — Get Copilot seat assignment details for a single organization member. Returns the seat record including created_at, last_activity_at, plan_type, assignee, and assigning_team. Required: org and id (the member's username handle).
- **list_all_git_hub_copilot_seats** — List all Copilot seat assignments for an organization with a Copilot Business or Copilot Enterprise subscription. Returns seat records including created_at, updated_at, last_activity_at, plan_type, and assignee. Required: org.
- **list_all_git_hub_copilot_content_exclusions** — Get the Copilot content exclusion path rules configured for a GitHub Copilot organization. Returns an object mapping each repository name to its array of excluded paths (e.g. {"octo-repo": ["/src/some-dir/kernel.rs"]}); comments are never returned and only the last occurrence of a duplicate key is kept. Required: org.
- **git_hub_copilot_content_exclusions_bulk_update** — Set Copilot content exclusion path rules for an organization, replacing all existing rules. The request body is a map of repository name (or "*" for all repositories) to an array of excluded paths, e.g. {"octo-repo": ["/src/some-dir/kernel.rs"]}. Returns the saved rules in the same shape. Required: org, plus the body map. Comments and duplicate keys are unsupported; 413 if the payload is too large. Requires Copilot Business or Enterprise on the organization. Because the body keys are dynamic repository names, call this through the Truto proxy API rather than as a fixed-parameter tool.
- **git_hub_copilot_enterprise_coding_agent_policies_bulk_delete** — Remove organizations from the enterprise coding agent policy in GitHub Copilot, disabling Copilot cloud agent for the specified organizations. Targets the organizations either by login or via custom property filters; the enterprise policy must be set to enabled_for_selected_orgs first. Returns an empty 204 response on success. Required: enterprise…
- **create_a_git_hub_copilot_enterprise_coding_agent_policy** — Add organizations to the enterprise coding agent policy in GitHub Copilot, enabling Copilot cloud agent for the specified organizations by login or custom property filters. The enterprise policy must be set to enabled_for_selected_orgs before using this endpoint. Returns an empty 204 response on success. Required: enterprise (supply organizations…
- **git_hub_copilot_enterprise_coding_agent_policies_bulk_update** — Set the coding agent policy for an enterprise in GitHub Copilot, controlling whether Copilot cloud agent is enabled for all organizations, disabled for all, configured by organization admins, or enabled for selected organizations only. Returns an empty 204 response on success. Required: enterprise and policy_state.
- **list_all_git_hub_copilot_billing** — Get Copilot seat information and settings for a GitHub organization, including its subscription's seat breakdown and feature policies. Returns: seat_breakdown, seat_management_setting, ide_chat, platform_chat, cli, public_code_suggestions, plan_type. Required: org. Endpoint is in public preview and subject to change.
- **git_hub_copilot_seat_teams_bulk_delete** — Remove teams from the GitHub Copilot subscription for an organization, revoking Copilot access for all users in each named team. Returns: seats_cancelled. Required: org, selected_teams.
- **create_a_git_hub_copilot_seat_team** — Add teams to the GitHub Copilot subscription for an organization, purchasing a Copilot seat for every user within each specified team. Returns: seats_created. Required: org, selected_teams.
- **git_hub_copilot_seat_users_bulk_delete** — Remove organization members from the GitHub Copilot subscription for an org, revoking their Copilot access and cancelling their seats. Returns: seats_cancelled. Required: org, selected_usernames. Public preview endpoint.
- **create_a_git_hub_copilot_seat_user** — Add organization members to the GitHub Copilot subscription for an org, purchasing and billing a Copilot seat for each listed username. Returns: seats_created. Required: org, selected_usernames. Public preview endpoint.
- **list_all_git_hub_copilot_coding_agent_permissions** — Get the Copilot cloud agent permissions for a GitHub organization — whether the agent is enabled for all, selected, or no repositories. Returns: enabled_repositories, selected_repositories_url. Required: org. This endpoint is in public preview and subject to change.
- **git_hub_copilot_coding_agent_permissions_bulk_update** — Set the Copilot cloud agent policy for a GitHub organization: whether the agent is enabled for all repositories, selected repositories, or none. Returns an empty 204 response on success. Requires org and enabled_repositories. This endpoint is in public preview and subject to change.
- **git_hub_copilot_coding_agent_repositories_bulk_update** — Replace the selected repositories enabled for Copilot cloud agent in a GitHub organization with the given list. Returns an empty 204 response on success. Required: org, selected_repository_ids. The coding agent repository policy must be set to selected; the previous selection is replaced wholesale.
- **delete_a_git_hub_copilot_coding_agent_repository_by_id** — Disable a repository for Copilot cloud agent in a GitHub organization by removing it from the selected list. Returns an empty 204 response on success. Required: id (repository_id) and org.
- **list_all_git_hub_copilot_coding_agent_repositories** — List repositories enabled for Copilot cloud agent in a GitHub organization when the coding agent repository policy is set to selected. Returns each repository with id, node_id, name, full_name, visibility, and created_at. Required: org.
- **update_a_git_hub_copilot_coding_agent_repository_by_id** — Enable a repository for Copilot cloud agent in a GitHub organization by adding it to the selected list. Returns an empty 204 response on success. Required: id (repository_id) and org. Only callable when the coding agent repository policy is set to selected.
- **list_all_git_hub_copilot_enterprise_repository_reports_daily** — Retrieve download links for a GitHub Copilot enterprise repository report for a specific day, covering per-repository pull request metrics with CCA and CCR breakdowns. Returns: download_links, report_start_day, report_end_day. Required: enterprise, day. Signed URLs expire after a limited time.
- **list_all_git_hub_copilot_enterprise_usage_reports_daily** — Get the GitHub Copilot enterprise usage metrics report for a specific day. Returns: download_links, report_day. Required: enterprise, day (YYYY-MM-DD).
- **list_all_git_hub_copilot_enterprise_usage_reports_latest** — Get the latest Copilot enterprise usage metrics report for a 28-day period in GitHub. Returns: download_links, report_start_day, report_end_day. Required: enterprise.
- **list_all_git_hub_copilot_enterprise_user_reports_daily** — Retrieve download links for the GitHub Copilot enterprise users report for a specific day. Returns: download_links, report_day. Reports are generated daily and cover a complete day of processed usage data. Required: enterprise, day (YYYY-MM-DD).
- **list_all_git_hub_copilot_enterprise_user_reports_latest** — Get the latest 28-day Copilot users usage metrics report for an enterprise. Returns download links to NDJSON report files plus the report period. Returns: download_links, report_start_day, report_end_day. Required: enterprise.
- **list_all_git_hub_copilot_enterprise_user_team_reports_daily** — Get download links for the GitHub Copilot enterprise user-teams report for a specific day, with one entry per user-team pair. Returns: download_links, report_day. Required: enterprise, day. Download URLs are signed and expire after a limited time.
- **list_all_git_hub_copilot_org_repository_reports_daily** — Get download links for the GitHub Copilot organization repository report for a specific day. Returns: download_links, report_day. Required: org, day (YYYY-MM-DD). Returns 204 when no report data exists for the day.
- **list_all_git_hub_copilot_org_usage_reports_daily** — Get download links for the GitHub Copilot organization usage metrics report for a specific day, with aggregated Copilot feature usage and engagement data in downloadable NDJSON files. Returns: download_links, report_start_day, report_end_day. Required: org, day (YYYY-MM-DD).
- **list_all_git_hub_copilot_org_usage_reports_latest** — Get the latest 28-day Copilot usage report for a GitHub organization. Returns: download_links, report_start_day, report_end_day. Required: org.
- **list_all_git_hub_copilot_org_user_reports_daily** — Get download links for the GitHub Copilot organization users usage metrics report for a specific day. Required: org, day. Signed URLs have limited expiration; 204 when no data exists for the day.
- **list_all_git_hub_copilot_org_user_reports_latest** — Get download links for the latest 28-day GitHub Copilot user usage metrics report for an organization, covering user-level engagement and feature adoption over the trailing 28 days. Returns: download_links, report_start_day, report_end_day. Required: org. Download links are signed and expire after a limited time.
- **list_all_git_hub_copilot_org_user_team_reports_daily** — Retrieve the GitHub Copilot user-teams report for a specific day for an organization. Returns signed download_links to the report files and the report_day they cover. Required: org, day (YYYY-MM-DD). Responds 204 when no data has been processed for that day.
- **list_all_git_hub_copilot_cloud_agent_configurations** — Get the Copilot cloud agent configuration for a GitHub repository, including MCP server, review tool, workflow approval, and firewall settings. Returns: mcp_configuration, enabled_tools, require_actions_workflow_approval, is_firewall_enabled, custom_allowlist, and 3 more. Required: owner, repo. Public preview; subject to change.
- **list_all_git_hub_copilot_organizations** — List the GitHub organizations the authenticated user is a member of. Use the returned login as the org value for every Copilot organization tool (billing, seats, content exclusions, coding agent, usage reports). Returns: login, id, node_id, url, description. Only organizations the token can see are returned (classic PATs need read:org).

## How it works

1. **Link your customer's GitHub Copilot account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach GitHub Copilot.** The Proxy API is a 1-to-1 mapping of the GitHub Copilot API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Prove Copilot ROI to engineering leaders** — Engineering analytics platforms can pull daily usage and user reports to correlate Copilot adoption with PR cycle time and deployment velocity, giving VPs of Engineering hard numbers on their AI spend.
- **Automate Copilot seat lifecycle management** — IT provisioning and SaaS spend management tools can create, list, and revoke Copilot seats based on employee status or activity, eliminating unused licenses and tightening offboarding workflows.
- **Enforce IP protection and content exclusions** — DevSecOps platforms can programmatically push content exclusion rules and remove sensitive repositories from the coding agent, ensuring Copilot never ingests regulated or proprietary code.
- **Govern Copilot coding agent policies at scale** — Security posture and governance tools can bulk-manage coding agent permissions, repositories, and enterprise policies, letting admins enforce consistent AI rules across hundreds of orgs and repos.
- **Surface Copilot telemetry inside your product** — Developer experience and platform engineering SaaS can embed native Copilot dashboards showing acceptance rates, active users, and language breakdowns, so customers don't bounce out to GitHub admin screens.

## What you can build

- **Copilot adoption dashboard** — Ingest daily enterprise and org usage reports to visualize DAU/WAU, acceptance rates, and per-language metrics inside your product.
- **Just-in-time seat deprovisioning** — Monitor seat activity via single-seat lookups and bulk-delete inactive users to automatically reclaim unused Copilot Business or Enterprise licenses.
- **Repository-level IP guardrails** — Let customers define sensitive paths in your UI and push them to GitHub via bulk content exclusion updates, with full audit history.
- **Coding agent policy manager** — Build a control panel for enterprise coding agent policies and permissions, including bulk create, update, and delete across repositories.
- **Team-level Copilot analytics** — Combine daily user-team reports with your HRIS data to show Copilot impact broken down by squad, cost center, or business unit.
- **MCP and cloud agent configuration viewer** — List cloud agent configurations and coding agent repositories so admins can audit which MCP servers, tools, and repos are enabled for Copilot across the enterprise.

## FAQs

### How do end users authenticate their GitHub Copilot account?

Truto handles the GitHub OAuth and token exchange flow on your behalf. Your users connect through a hosted or embedded flow, and Truto manages token storage, refresh, and scoping to Copilot admin endpoints.

### What Copilot data can I read through this integration?

You can access seats, billing, content exclusions, coding agent permissions and repositories, enterprise coding agent policies, cloud agent configurations, organizations, and the full set of enterprise and org usage, user, user-team, and repository reports (daily and latest).

### How are the usage reports delivered?

GitHub exposes Copilot usage telemetry as NDJSON files behind signed, time-limited download links. Truto surfaces these via the list endpoints so you can fetch and parse the daily enterprise or org-level reports in your pipeline.

### Can I manage seats and teams in bulk?

Yes. Truto exposes create and bulk delete operations for both Copilot seat users and seat teams, so you can provision or revoke access for large groups in a single call.

### Can I programmatically control what code Copilot can see?

Yes. The content exclusions bulk update endpoint lets you push a JSON map of repositories and file paths that Copilot must ignore, and coding agent repositories can be added, updated, or deleted individually.

### Does this support both Copilot Business and Copilot Enterprise?

Yes. The available tools cover org-level resources (seats, billing, org usage and user reports) as well as enterprise-level resources (enterprise usage, user, user-team, repository reports, and enterprise coding agent policies).

### How does Truto handle GitHub API rate limits and pagination?

Truto normalizes pagination across list endpoints and manages retries and backoff against GitHub's rate limits, so you don't have to implement per-endpoint quirks in your own code.
