Public preview : This API is in public preview. Endpoints, schemas, and limits may change before general availability.
API
Authentication
Issuing, using, rotating, and revoking API keys.
Every request to /v1 must include an API key. Authentication uses the standard Authorization: Bearer … header.
The header#
POST /v1/responses HTTP/1.1
Host: api.eugpt.ai
Authorization: Bearer eugpt_AbCdEf01234567890_redacted
Content-Type: application/json
API keys are always prefixed with eugpt_. The prefix is the easiest way to spot a leaked key in logs and scanners.
Issuing keys#
Keys are managed in the EU GPT web app:
- Sign in at chat.eugpt.ai.
- Open Settings → API Keys.
- Click Create key. Give it a descriptive name: the key list is what you will see when something breaks at 2 a.m.
- Copy the value. It is shown once. After you close the dialog the full key is gone; only the prefix remains visible.
A key is bound to the user that issued it. The key inherits that user’s organisation membership, projects, and license plan.
Rate limits & quotas#
When creating a key you will optionally be able to set a requests-per-minute rate limit and a monthly usage cap; both default to unlimited (not yet available, see Usage limits & billing).
Rotating keys#
There is no built-in expiry. Rotate by:
- Issuing a new key in the web app.
- Deploying the new key into your application.
- Revoking the old key once you have confirmed the new one is working.
Plan rotations on a cadence that matches your security posture: quarterly is a reasonable default for most teams.
Revoking keys#
In Settings → API Keys, click Revoke on the row you want to disable. Revocation is immediate. Subsequent requests with that key will receive 401 Unauthorized within seconds.
Scoping#
API keys carry the same license plan as the user that issued them. That means:
- Tool availability follows the plan: for example, advanced web search is gated on
Individual Maxand above. - Project membership is enforced: passing a
project_idfor a project you cannot access returns403.
Common errors#
| Status | What it means | Fix |
|---|---|---|
401 | Missing, malformed, or revoked key. | Re-issue or check the Authorization header is being sent. |
402 | (Planned) The wallet backing this key’s billing subject has insufficient funds. | Top up the wallet, or ask an admin to raise the organisation’s spending cap. |
403 | Key is valid but the requested operation is not permitted (e.g. project not yours, plan does not allow it). | Check project membership and license plan. |
429 | Usage limit hit: the account-level limit, or (once per-key limits ship) a key’s rate_limit_exceeded / monthly_quota_exceeded. | Back off, retry later, or raise the key’s limit. |
The full error reference is in Errors.