رفتن به محتوا

شروع سریع

از دریافت کلید API تا اولین فراخوانی در کمتر از ۵ دقیقه

مستندات

دریافت کلید API

API هیبانا سازگار با OpenAI است

نیازی به کتابخانهٔ اختصاصی نیست. همان SDK رسمی OpenAI را نصب کنید و فقط آدرس پایه (base URL) و کلید API را عوض کنید، بقیهٔ کد شما دست‌نخورده کار می‌کند.

  1. به داشبورد کلیدهای API بروید.
  2. روی دکمه "کلیدهای وب‌سرویس" کلیک کنید.
  3. روی دکمه "ایجاد کلید جدید" کلیک کنید.
  4. یک نام برای کلید انتخاب کنید.
  5. کلید API را کپی کنید

کلید فقط یک‌بار نمایش داده می‌شود؛ آن را جایی امن ذخیره کنید. جزئیات نگهداری و چرخاندن کلید در صفحهٔ احراز هویت آمده است.

آدرس پایه و هدرها

هر درخواست به سه چیز نیاز دارد: آدرس پایه، کلید API در هدر Authorization، و کد مدلی که می‌خواهید صدا بزنید. آدرس پایه این است:

https://api-ai.hibanacloud.ir/v1
مقادیری که در کد خود جایگذاری می‌کنید
موردمقدارتوضیح
Base URLhttps://api-ai.hibanacloud.ir/v1همان چیزی که در SDK به آن base_url یا baseURL می‌گویند.
AuthorizationBearer YOUR_API_KEYکلید API شما، با پیشوند Bearer و یک فاصله.
Content-Typeapplication/jsonبرای هر درخواستی که بدنهٔ JSON دارد.
modelgpt-5-nanoکد مدل. فهرست کامل در صفحهٔ لیست مدل‌ها.

اولین فراخوانی

کوتاه‌ترین چیزی که کار می‌کند، کلید خود را جایگزین کنید و همین را در ترمینال اجرا کنید:

curl https://api-ai.hibanacloud.ir/v1/chat/completions \  -H "Authorization: Bearer YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5-nano",    "messages": [{"role": "user", "content": "سلام!"}]  }'

همان درخواست، این‌بار با کتابخانهٔ زبان دلخواه شما:

نصب کتابخانه:

pip install openai

کد نمونه:

from openai import OpenAI client = OpenAI(    base_url="https://api-ai.hibanacloud.ir/v1",    api_key="YOUR_API_KEY") response = client.chat.completions.create(    model="gpt-5-nano",    messages=[        {"role": "system", "content": "You are a helpful assistant."},        {"role": "user", "content": "سلام! چطوری؟"}    ]) print(response.choices[0].message.content)

پاسخ مورد انتظار

{  "id": "chatcmpl-abc123",  "object": "chat.completion",  "created": 1677652288,  "model": "gpt-5-nano",  "choices": [{    "index": 0,    "message": {      "role": "assistant",      "content": "سلام! من خوبم، ممنون که پرسیدی. تو چطوری؟"    },    "finish_reason": "stop"  }],  "usage": {    "prompt_tokens": 20,    "completion_tokens": 15,    "total_tokens": 35,    "cost_rial": 150  }}

متن پاسخ در choices[0].message.content است. فیلد usage.cost_rial هزینهٔ همین درخواست به ریال است؛ نحوهٔ محاسبهٔ آن در قیمت‌گذاری و صورت‌حساب توضیح داده شده است.

اگر به‌جای این پاسخ خطا گرفتید: خطای 401 یعنی هدر Authorization درست نیست، 402 یعنی موجودی کافی نیست و 429 یعنی به سقف نرخ درخواست رسیده‌اید. هر سه در مدیریت خطاها و حل مشکلات با راه‌حل آمده‌اند.

گام‌های بعدی