# Fix 503 model_unavailable and "No available channels"

> What 503 model_unavailable, "No available channels" and overloaded_error mean on BigModel.io, how long they last, and how to fall back to another model automatically.

Web version: https://bigmodel.io/docs/error-model-unavailable · Updated 2026-10-27

The model exists, but it cannot take requests right now:

```json
{ "code": "model_unavailable", "message": "The model `X` is temporarily unavailable. Please retry shortly.", "error": { "message": "The model `X` is temporarily unavailable. Please retry shortly.", "type": "api_error", "code": "model_unavailable" } }
```

## What it means

| Message | Cause | Retry? |
|---|---|---|
| `model_unavailable` "temporarily unavailable" | The model has no capacity at the moment | Yes, after a short wait |
| `api_error` "No available channels" | The model is briefly not on sale | Later, or use another model |
| `overloaded_error` | The model service is overloaded | Yes, with backoff |
| `billing_service_error` | The billing check failed | Yes |

None of these are charged.

## How to fix it

1. **Retry with backoff**, starting at a few seconds. Most cases clear within minutes.
2. **Fall back to another model.** Send a list of models; the first one that is available answers:

```json
{ "model": "glm-5.3", "models": ["glm-5.3", "deepseek-v4-pro", "kimi-k3"], "messages": [{ "role": "user", "content": "Hello" }] }
```

The fallback list is used when a model is unknown, retired or unavailable. It does not retry after a 429 or 502.

3. Check the [model catalog](https://bigmodel.io/models) for a model with the same endpoint and similar price.
4. If one model stays unavailable for a long time, contact [Support](https://bigmodel.io/support) with the `X-Request-ID`.

## Troubleshooting

**Only streaming requests fail.** A stream that fails after it starts ends with an `error` event instead of a 503. See [Upstream request failed](https://bigmodel.io/docs/error-upstream-request-failed).

**An image or video task stays queued.** Media tasks run asynchronously. Poll the task instead of retrying the create call. See [Media tasks](https://bigmodel.io/docs/api-media-tasks).

## Related

- [Migrate from OpenRouter](https://bigmodel.io/docs/migrate-from-openrouter)
- [Error codes and responses](https://bigmodel.io/docs/errors)
- [Upstream request failed (502)](https://bigmodel.io/docs/error-upstream-request-failed)
