# SERVICE_UNAVAILABLE

- Surface: API
- HTTP status: 503
- Details: `{ retryAfterMs: number }`

## Cause

The edge returned HTTP 503: Provider configuration could not be resolved. This is retryable and does not mean your Flag is misconfigured.

## Fix

Retry after `details.retryAfterMs`. In the SDK this surfaces as `errorCode: "SERVICE_UNAVAILABLE"` with `reason: "ERROR"` and your `defaultValue` — never as a pretended Variant. Client-side transport failures (local throw, timeout, unparseable body) use distinct `SDK_TRANSPORT_*` codes instead of this one.

## Related

- [RATE_LIMITED](https://splitch.dev/docs/error/RATE_LIMITED)
- [INTERNAL_SERVER_ERROR](https://splitch.dev/docs/error/INTERNAL_SERVER_ERROR)
- [SDK_TRANSPORT_NETWORK](https://splitch.dev/docs/error/SDK_TRANSPORT_NETWORK)
- [SDK_TRANSPORT_TIMEOUT](https://splitch.dev/docs/error/SDK_TRANSPORT_TIMEOUT)
- [SDK_TRANSPORT_PARSE](https://splitch.dev/docs/error/SDK_TRANSPORT_PARSE)

Source: https://splitch.dev/docs/error/SERVICE_UNAVAILABLE