The error
Find your scenario
Playground or UI test fails
Test requests in Playground, Prompt Studio, or Model Catalog
Completions API fails
Chat completions, embeddings, files, batches, or other inference calls
Admin API fails
Integrations, providers, users, workspaces, or API key management
Logs & analytics fail
Viewing logs, feedback, audit logs, or analytics
MCP operations fail
MCP servers or MCP integrations
Listing models fails
GET /v1/models endpoint
Something else
None of the above scenarios
Need scope reference?
Complete list of all permission scopes
Understand API key types
Before fixing the error, understand the two key types and how scopes work.Workspace API keys vs Admin API keys
- Workspace API keys
- Admin API keys
Scope: Single workspace onlySubtypes:
- User — For UI/Playground operations
- Service — For backend automations
- Completions and all data-plane operations
- Prompts, configs, providers within the workspace
- Cannot access other workspaces
Admin API keys access workspace-level resources (providers, configs, prompts, integrations) by passing
workspace_id as a query parameter (for GET/list requests) or in the request body (for POST/PUT requests). Use a workspace UUID or slug. Workspace API keys are locked to their own workspace and can’t access other workspaces.How permission scopes work
Every API key has permission scopes that control which operations it can perform. Scopes are granular —providers.list does not grant providers.read. Each action requires its own scope.
Enable the specific scopes needed when creating or editing an API key:
Workspace API key permissions
Workspace API key permissions
Admin API key permissions
Admin API key permissions
Playground and UI test requests
Most common cause of AB03. Start here if Playground, Prompt Studio, or Model Catalog test requests fail.
Why it happens
Playground, Prompt Studio, and Model Catalog test requests require a Workspace User API key. Service keys don’t work — the UI needs to authenticate your individual session.Common triggers
- Only Service API keys exist (no User key)
- User API key is missing the
completions.writescope - Multiple User API keys exist, and not all have required scopes
Fix
1
Open workspace API keys
Go to Settings > API Keys in your workspace.
2
Find or create a User API key
Look for an API key with type User. If none exists, create one.
3
Enable completions.write
Edit the User API key and enable:
- Completions >
write(required for all inference calls) - Any additional scopes needed (e.g.,
prompts.read,configs.read)
4
Refresh and retry
Refresh the page and retry your test request.
Completions API and data-plane operations
What you need to know
Thecompletions.write scope gates all data-plane endpoints — not just chat completions.
Endpoints requiring completions.write
Why it happens
Your API key is missing thecompletions.write scope, or you’re using an Admin API key (Admin keys can’t call data-plane endpoints).
Fix
1
Use a Workspace API key
Data-plane APIs require Workspace API keys (User or Service). Admin keys don’t work.
2
Enable completions.write
Create or edit a Workspace API key and enable Completions >
write.3
Update your code
Replace the API key in your application:
Listing available models
GET /v1/models requires either completions.write or virtual_keys.list.
Admin API operations
The Admin API covers integrations, providers, users, workspaces, API key management, and other management-plane operations. Each operation requires specific scopes.Integrations (providers and models)
Users, workspaces, and API key management
Resource management (prompts, configs, guardrails, providers)
“Virtual Keys” are now called Providers in the UI. API scopes still use both
virtual_keys.* and providers.* — both may be needed depending on the operation.Fix
Edit the API key and add the required scopes. When in doubt, use Select All to grant all permissions.Logs, feedback, analytics, and audit logs
- Viewing & exporting
- Ingesting & writing
MCP servers and integrations
- MCP servers (workspace)
- MCP integrations
General troubleshooting
If none of the above scenarios match, work through these checks:1. Verify API key type
1. Verify API key type
2. Check permission scopes
2. Check permission scopes
Each operation requires its own scope. Common mistakes:
- Having
listbut notread(or vice versa) - Having
readbut notwriteorcreate - Missing
completions.writefor inference calls
3. Verify user role
3. Verify user role
4. Common pitfalls
4. Common pitfalls
- Wrong key type — Using Admin key for completions, or Service key for Playground
- Stale session — Log out and back in, or clear browser cache
- Multiple User API keys — All User keys need the required scopes
Org security settings override scopes. Organisation admins can restrict members from viewing API keys, providers, or configs via Admin Settings > Security. When active, affected users get AB03 even with correct scopes and key type. Check with your org admin if everything looks correct but you still see the error.
5. Still stuck?
Contact support@portkey.ai with:- Workspace ID
- Full error response (including
request_id) - Endpoint called
- API key type (Admin / Workspace User / Workspace Service)
Complete scope reference
Admin API key — all scopes
Admin API key — all scopes
Organisation management
Workspace management
Integrations
Resources
Monitoring
Workspace API key — all scopes
Workspace API key — all scopes
Inference (data plane)
Workspace management
Integrations
Resources
Monitoring
Related
API keys (AuthN and AuthZ)
Deep dive into Admin vs Workspace API keys and all permission scopes.
User roles and permissions
Organisation and workspace role hierarchy.
Configure API key access
Control who can view and manage API keys in workspaces.
Common errors
Other the AI Gateway error codes and resolutions.

