/playgroundThis is the part of the feature where a wrong state is a security incident, not a cosmetic bug. Every failure below has one non-negotiable property: it never falls back to production. A sandbox that is unavailable produces an error, never a live call.
2 problems. id is not allowed — the service mints entity ids
(additionalProperties: false). slug is required and missing.
Limit reached.
Daily sandbox quota reached
You have used all 500 sandbox requests for today. The proxy returned
429 with Retry-After: 22320. Your quota resets at
00:00 UTC (in 6h 12m). Reading the catalog
and specs is unaffected.
The sandbox target isn't responding
The mock server for app-registry-service v1.4.0
(mock://app-registry-service@v1.4.0) did not answer within 10s. This is an
infrastructure problem on our side, not a problem with your request.
Your request was not sent anywhere else. There is no fallback to the service's production
servers: entry — by design, an unavailable sandbox fails the call rather than escalating it to
a live system.
This operation can't be tried yet
portal-service's current spec is not valid enough to generate a mock, and the repo
has not declared an x-fuzefront-sandbox-url. Absence of an opt-in means "mock only", never
"call production" — so there is nothing safe to target.
You don't have sandbox access
The Playground needs DevPortalPlayground:use on the platform root organization.
Your account can read the catalog but not send sandbox requests — either provisioning hasn't finished, or
fuzefront.devportal.enabled is off for your account. Catalog and spec viewing keep working.
The sandbox proxy failed
Request id req_01j9k5r8w2n4qd7cyv3h0tefam
— quote this if you report it. The call was not forwarded anywhere; no quota was consumed.
{
"error": "slug_already_registered",
"message": "An application with slug 'fuzepicker' already exists."
}
A 409 from the target is the API behaving
correctly and is rendered as a response, not as a portal failure callout. Only the portal's own
failures (c, d, f, g) use StatusCallout. Confusing the two is how a playground trains developers
to ignore errors.
Test hooks: [data-frame='08-playground-states'] · [data-state='sending'] ·
[data-state='request-invalid'] · [data-error='request-invalid'] ·
[data-state='quota-exceeded'] · [data-http='429'] ·
[data-error='quota-exceeded'] · [data-quota-state='exceeded'] ·
[data-state='target-unavailable'] · [data-error='sandbox-target-unavailable'] ·
[data-safety-note='no-prod-fallback'] · [data-state='no-sandbox'] ·
[data-error='sandbox-not-available'] · [data-state='forbidden'] ·
[data-http='403'] · [data-state='error'] · [data-error='proxy-error'] ·
[data-state='target-error-response'] · [data-response-status='409'].