مستندات API · MyAIHub
با استفاده از این API میتوانید با یک API Key به چند مدل مختلف هوش مصنوعی (بر اساس پلنی که خریدهاید) متصل شوید و پاسخ متنی دریافت کنید.
1. Endpoint و متد
در محیط لوکال: آدرس شما چیزی مثل https://myaihub.ir/api/chat.php خواهد بود.
2. احراز هویت (Authentication)
برای هر درخواست باید API Key خود را که در بخش My Account → License Keys دریافت میکنید در بدنه (JSON) ارسال کنید.
{
"api_key": "YOUR_LICENSE_KEY",
"prompt": "متن سوال یا درخواست شما"
}
برای امنیت بیشتر، API Key را فقط در سمت سرور (Backend) نگه دارید و مستقیم در فرانتاند مرورگر نمایش ندهید.
3. بدنه درخواست (Request Body)
| فیلد | نوع | اجباری؟ | توضیح |
|---|---|---|---|
api_key |
string | بله | کلید لایسنس شما که پس از خرید پلن دریافت میکنید. |
prompt |
string | بله | متن سوال یا درخواستی که میخواهید به مدل ارسال شود. |
model |
string | اختیاری | نام مدل موردنظر. اگر ارسال نکنید، برای هر پلن یک مدل پیشفرض استفاده میشود. |
مثال بدنه درخواست
{
"api_key": "YOUR_LICENSE_KEY",
"prompt": "سلام، لطفاً در دو جمله توضیح بده هوش مصنوعی چیست.",
"model": "deepseek/deepseek-chat"
}
4. پلنها و مدلهای قابل دسترسی
مدلی که میتوانید استفاده کنید به پلنی که خریدهاید بستگی دارد:
| پلن | مدلهای نمونه | محدودیت روزانه (تقریبی) |
|---|---|---|
| BASIC | qwen/qwen-2.5-7b-instruct google/gemma-2-9b-it mistralai/mistral-7b-instruct |
حدود ۱۵۰ درخواست در روز |
| PRO | deepseek/deepseek-chat qwen/qwen-2.5-14b-instruct google/gemma-2-27b-it |
حدود ۷۵۰ درخواست در روز |
| VIP | deepseek/deepseek-chat meta-llama/llama-3.1-70b-instruct qwen/qwen-2.5-72b-instruct mistralai/mixtral-8x7b-instruct |
حدود ۲۵۰۰ درخواست در روز |
اگر مدلی را انتخاب کنید که در پلن شما مجاز نیست، API خطای
Selected model is not allowed for your plan.
برمیگرداند.
5. ساختار پاسخ (Response)
در صورت موفقیت، پاسخ کلی به شکل زیر است:
{
"error": false,
"plan": "pro",
"model": "deepseek/deepseek-chat",
"reply": "متن پاسخ مدل...",
"usage": {
"date": "2025-01-01",
"count": 12,
"dailyLimit": 750
}
}
فیلد usage نشان میدهد امروز چند درخواست استفاده کردهاید
و سقف پلن شما چقدر است.
6. خطاهای متداول
6.1. مدل مجاز نیست
{
"error": true,
"message": "Selected model is not allowed for your plan.",
"plan": "basic",
"allowed_models": [
"qwen/qwen-2.5-7b-instruct",
"google/gemma-2-9b-it",
"mistralai/mistral-7b-instruct"
]
}
6.2. رسیدن به سقف مصرف روزانه
{
"error": true,
"message": "You have reached today's usage limit for this API Key.",
"plan": "pro",
"usage": {
"date": "2025-01-01",
"count": 750,
"dailyLimit": 750
}
}
6.3. فیلدهای ناقص
{
"error": true,
"message": "API Key required."
}
7. مثال سریع · JavaScript (Fetch)
fetch("https://myaihub.com/api/chat.php", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
api_key: "YOUR_LICENSE_KEY",
prompt: "سلام، خودت را در یک جمله معرفی کن.",
model: "deepseek/deepseek-chat"
})
})
.then(res => res.json())
.then(data => {
if (data.error) {
console.error("API Error:", data.message);
} else {
console.log("Reply:", data.reply);
}
})
.catch(err => console.error("Network Error:", err));
8. مثال سریع · PHP (cURL)
<?php
$payload = [
"api_key" => "YOUR_LICENSE_KEY",
"prompt" => "یک متن انگیزشی کوتاه بنویس.",
"model" => "qwen/qwen-2.5-7b-instruct"
];
$ch = curl_init("https://myaihub.com/api/chat.php");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
print_r($data);