---
title: محدودیت‌ها
description: محدودیت‌های نرخ درخواست و نحوه مدیریت خطای 429 در API دانا
---

API دانا برای هر کلید محدودیت نرخ درخواست دارد تا پایداری سرویس برای همه کاربران تضمین شود.

## محدودیت پیش‌فرض

| بازه | حداکثر درخواست |
|---|---|
| در دقیقه | ۶۰ درخواست |

این مقدار برای کلیدهای live اعمال می‌شود. کلیدهای test محدودیت‌های کمتری دارند.

## خطای 429

وقتی از حد مجاز بیشتر شوید، API با کد `429` پاسخ می‌دهد:

```json
{
  "error": {
    "message": "Rate limit exceeded.",
    "type": "rate_limit_error",
    "param": null,
    "code": "rate_limit_exceeded"
  }
}
```

## مدیریت خطا

با exponential backoff تلاش مجدد کنید:

```python
import time
import httpx

def call_with_retry(payload, max_retries=3):
    for attempt in range(max_retries):
        response = httpx.post(
            "https://api.dana.expert/v1/chat/completions",
            headers={"Authorization": f"Bearer {DANA_API_KEY}"},
            json=payload,
        )
        if response.status_code == 429:
            wait = 2 ** attempt  # 1s, 2s, 4s
            time.sleep(wait)
            continue
        response.raise_for_status()
        return response.json()
    raise Exception("Rate limit exceeded after retries")
```

## تنظیم محدودیت

از [کنسول دانا](https://console.dana.expert/keys) می‌توانید برای هر کلید حد سقف جداگانه تعریف کنید.

## نکته‌ها

- درخواست‌های ناموفق (4xx/5xx) هم در شمارش محدودیت محاسبه می‌شوند.
- streaming و non-streaming هر کدام یک درخواست حساب می‌شوند.
- برای حجم بالا با پشتیبانی دانا تماس بگیرید.
