# Limits & Errors

Source: https://docs.sliplane.io/inference/limits

Request size limits, unsupported features, and error responses of the Inference API.

> **info**
>
> **Private beta:** Email [support@sliplane.io](mailto\:support@sliplane.io) to request Inference access for your team.

## Request limits

| Endpoint                   | Maximum request body                       |
| -------------------------- | ------------------------------------------ |
| `/v1/chat/completions`     | 32 MiB                                     |
| `/v1/responses`            | 32 MiB                                     |
| `/v1/embeddings`           | 4 MiB, up to 128 inputs                    |
| `/v1/audio/transcriptions` | 25 MiB, including the file and form fields |
| `/v1/systemone`            | 12,000 bytes, 1–32 questions               |

## Unsupported features

* **Responses:** stored state (`store` must be `false`), background requests, saved prompts, and uploaded file references. Send the conversation history with each request. Tools must be function or custom tools executed by your client.
* **Embeddings:** streaming and token ID inputs.
* **Transcription:** streaming and confidential keys.
* **Decisions:** images, streaming, and extra request fields.

## Errors

Errors use the OpenAI error format:

```json
{
  "error": {
    "message": "API key spend limit reached.",
    "type": "invalid_request_error",
    "param": null,
    "code": null
  }
}
```

`type` is `invalid_request_error` for `4xx` responses and `server_error` for `5xx` responses.

| Status | Meaning                                                                |
| ------ | ---------------------------------------------------------------------- |
| `400`  | The request body or parameters are invalid                             |
| `401`  | The key is missing, invalid, deleted, or lacks the `inference` scope   |
| `404`  | The model is unknown or not available on this endpoint or for this key |
| `413`  | The request body exceeds the [limit](#request-limits)                  |
| `429`  | The key reached its [spend limit](/inference/keys#spend-limits)        |
| `502`  | The model returned an invalid response                                 |
| `503`  | The service is temporarily unavailable                                 |
| `504`  | The model did not respond in time                                      |

Retry `502`, `503`, and `504` with backoff.

## Streaming errors

Once a stream has started, the HTTP status stays `200`. Errors after that point arrive as an event in the stream.
