GitHub Copilot API (api.githubcopilot.com) returns a limited model list for OAuth Apps, even though premium models are enabled on my account #206143
Replies: 1 comment 1 reply
|
Hi there. This is a known architectural limitation with how GitHub handles Copilot API access for custom integrations. You mentioned seeing models like GPT-4.1 and GPT-5 in your IDE but only getting a limited list like gpt-4o and gpt-3.5-turbo when querying the API. The short answer is yes, model availability for third party OAuth apps is governed entirely separately from the models enabled for first party Copilot Chat surfaces. First party surfaces like IntelliJ use specific, internal client IDs that GitHub recognizes. These official clients receive access to premium or preview models based on your user and organization entitlements. When you authenticate via a custom OAuth App using the copilot scope, you are routed to a standard API tier. GitHub restricts this token tier to a specific whitelist of stable models. They do this to manage backend costs and prevent rate limit abuse from automated custom scripts. To answer the specific questions in your post:
If this is blocking a production tool for your team, relying on the undocumented api.githubcopilot.com endpoint is risky because the token scopes and routing can change without notice. The best path forward is to build a proper GitHub App configured as a Copilot Extension. You can find the official guides on the GitHub Developer documentation portal. While you might still be restricted to stable models like GPT-4o for now, it is the only officially supported path and will be the first place GitHub officially rolls out newer models for third party use. |
Uh oh!
There was an error while loading. Please reload this page.
🏷️ Discussion Type
Question
💬 Feature/Topic Area
API
Body
Hi team,
I have a GitHub Copilot premium subscription and can see multiple premium models (GPT-4.1, GPT-5, GPT-5.1, etc.) available in my IDE (IntelliJ) Copilot Chat model picker, which I use regularly.
I've built a custom internal application that authenticates via a GitHub OAuth App (scope=copilot) to call the Copilot chat completions API on behalf of the signed-in user. When I query the model catalog with that token:
GET https://api.githubcopilot.com/models
Authorization: Bearer <user's copilot token>
Copilot-Integration-Id:
...the response only includes these models, regardless of what's enabled in my personal Copilot settings:
gpt-4o-mini-2024-07-18, gpt-4o-2024-11-20, gpt-4o-2024-08-06,
gpt-3.5-turbo-0613, gpt-3.5-turbo, gpt-4o-mini, gpt-4o
To confirm this isn't a naming/config mismatch on my end, I explicitly requested a premium model (e.g. GPT-5.5) directly in a /chat/completions call — it was rejected with the same limited list above, unchanged.
My question: Is model availability for third-party OAuth Apps / Copilot integrations governed separately from the models enabled for a user's first-party Copilot Chat surfaces (IDE, github.com)? If so:
Is this gated by something on my OAuth App's configuration (e.g. needing formal registration/review as a Copilot Extension), or is it an account/org policy setting?
Where can I request or enable access to the newer models (GPT-4.1, GPT-5.x) for this integration?
This is blocking a production tool for my team, so any pointers — even just confirming which of the above is the cause — would help a lot. Happy to share more request/response details if useful.
Thanks!
All reactions