GitHub Models API key setup
Run AI models directly in GitHub via a unified API. Free tier with rate limits, paid usage beyond.
Get your key
- Open the GitHub Models API keys page: github.com/settings/tokens
- Create an account and generate an API key.
- Paste it into the Dracon BYOK provider keys, stored encrypted (AES-256-GCM), used browser-direct, works in every Dracon tool.
Use your key in every tab
Two free extensions take the key you just set up. Both read the page you are on and use your own provider key: free, no account, nothing stored on a server we run.
AI Auto Form Filler
Complete a web form from a short description, using a model you bring yourself.
All extensions · last checked 2026-10-22.
Get the key and test it
- Open the GitHub Models API keys page: github.com/settings/tokens Create a key and copy the secret straight away.
- Point your client at this provider's base URL:
https://models.github.ai/inferenceIt speaks the OpenAI-compatible shape, so an OpenAI SDK client works against it with no adapter: only the base URL and the key change. - Prove the endpoint answers before you trust it. Send one call
with no
Authorizationheader: a live endpoint answers401 Unauthorized, because it is waiting for a bearer key. The wording of that error differs by provider (some sayinvalid_api_key, othersincorrect_api_keyorToken is invalid), so read the 401 as the signal, not the error text. - Paste the key into the Dracon BYOK provider keys ; stored encrypted, used browser-direct, no relay.
- Compare other provider plans when this subscription does not match your usage or budget.
Test the key
Both examples read the key from the GITHUB_TOKEN environment
variable, so the key stays out of the command line.
export GITHUB_TOKEN="<YOUR_API_KEY>"
curl https://models.github.ai/inference/chat/completions \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-4o-mini","messages":[{"role":"user","content":"hi"}]}' import os
from openai import OpenAI
# export GITHUB_TOKEN="<YOUR_API_KEY>" first
client = OpenAI(
api_key=os.environ["GITHUB_TOKEN"],
base_url="https://models.github.ai/inference",
)
resp = client.chat.completions.create(
model="openai/gpt-4o-mini",
messages=[{"role": "user", "content": "hi"}],
)
print(resp.choices[0].message.content)Free tier
No recurring free tier advertised as of the last check (2026-10-27). Usage is billed per the provider's listed pricing. You pay them directly, no Dracon markup.
Rate limits: Service retired; see Azure AI Foundry for new projects.
Paid plans compared
Every tier GitHub Models publishes, with the price and the limit as the vendor states them, last checked 2026-10-27. Confirm with the provider before you buy. You pay them directly, no Dracon markup.
| Plan | Price | Usage limit | What you get |
|---|---|---|---|
| Free | no monthly fee | Free model experiments with GitHub Models rate limits; github.com/marketplace/models returns 404 on 2026-10-27; Free $0 row kept with GitHub Models docs as source. |
|
Official plan source: docs.github.com/en/github-models
Connection details
- Base URL
https://models.github.ai/inference- API shape
- OpenAI-compatible
- Env var
GITHUB_TOKEN- Models
- openai/gpt-4o-mini, openai/gpt-4o, meta/Llama-3.3-70B-Instruct
- Model lineup
- GPT-4o, GPT-4o mini, Claude 3.5 Sonnet, Llama 3.3, DeepSeek V3
Gotchas
Browser-direct chat is not available for this provider: GitHub retired GitHub Models inference on 2026-07-30. Use Azure AI Foundry or another provider.. Dracon provider keys still cover it for tools that run elsewhere (for example a LiteLLM chain from the Dracon Router builder).
Our verdicts on this kind of provider
Independent comparisons we keep current as pricing and free tiers shift. A guide is setup; a verdict is whether it's worth setting up.