API عمومی
هر کاری که داشبورد، CLI و سرور MCP میکنند یک درخواست به همین API است. این صفحه مبانی را میگوید؛ همهٔ مسیرها، یکییکی، در بخشهای پایین آمدهاند و مستقیم از فایل OpenAPI ایجاد میشوند.
آدرس#
export KEY=chk_live_…
curl -H "Authorization: Bearer $KEY" https://api.ibel.ai/v1/whoamiهمهٔ مسیرها زیر https://api.ibel.ai/v1 هستند، جز سرور MCP در /mcp. درخواست و پاسخ JSON است، جز جایی که مسیر چیز دیگری بگوید (آپلود فایل و بیلد، لاگ زنده). فیلدهای ناشناخته نادیده گرفته میشوند.
اعتبارنامه#
| اعتبارنامه | شکل | از کجا | اعتبار |
|---|---|---|---|
| کلید API | chk_live_<id>_<secret> · chk_test_… | داشبورد، cloudhost keys create، cloudhost login | تا باطل شدن یا انقضا؛ یک بار نشان داده میشود |
| نشست | chs_<id>_<secret> | ورود به داشبورد | ۱۲ ساعت بیکاری، حداکثر ۳۰ روز |
اعتبارنامه را به شکل Authorization: Bearer … بفرستید. هر دو نوع روی همهٔ مسیرها کار میکنند، جز مسیرهایی که فقط نشست میخواهند (403 session_only). اعتبارنامهٔ ناقص، نامعتبر، منقضی یا باطل 401 unauthorized میگیرد.
نقشها و تایید دوم#
هر کلید و هر عضو تیم یک نقش دارد: owner، admin، developer، billing یا viewer؛ جدولش در تیمها و نقشها. هر مسیر در مرجع میگوید چه نقشهایی میتوانند صدایش بزنند.
مسیرهای حساس با نشست داشبورد عامل دومی میخواهند که در ۱۰ دقیقهٔ اخیر تایید شده باشد؛ وگرنه 403 step_up_required میدهند. کلیدهای API از این مرحله رد میشوند.
خطاها#
{"error": {"code": "not_found", "message": "no function named shop"}}code ثابت است و برای برنامهها؛ message برای آدمهاست و ممکن است عوض شود. منابع تیمهای دیگر هرگز نشان داده نمیشوند: 404 not_found، انگار وجود ندارند.
| وضعیت | کد | کی |
|---|---|---|
| 400 | bad_json · bad_param · bad_input | بدنه JSON نیست، پارامتر کوئری بد است یا مقداری نادرست |
| 401 | unauthorized | اعتبارنامه نیست یا معتبر نیست |
| 403 | forbidden · session_only · step_up_required | نقش اجازه نمیدهد، نشست لازم است، یا تایید دوم |
| 404 | not_found | چنین مسیر یا منبعی در این تیم نیست |
| 405 | method | مسیر هست، این متد نه |
| 413 | too_large | بدنه از حد مسیر بزرگتر است |
| 429 | rate_limited · resend_wait | بیش از حد درخواست (ورود، تایید دوم، دعوت، ورود CLI) |
| 500 | internal | خطای پیشبینینشده |
پول، زمان و دوره#
- همهٔ مبلغها ریالاند، به عدد صحیح (
currency: "IRR"). هر تومان ۱۰ ریال است. - زمانها ISO 8601 به UTCاند (
2026-11-04T09:30:00.000Z). - دورههای صورتحساب ماه شمسیاند،
YYYY-MM(مثلاً1405-08)، از نیمهشب به وقت تهران روز اول ماه. - هر پاسخ هدر
cloudhost-versionبا نسخهٔ API را دارد.
فهرستها و محدودیتها#
فهرستها هنوز صفحهبندی با cursor ندارند: همه را برمیگردانند یا جدیدترینها را تا یک تعداد ثابت.
| فهرست | برمیگرداند |
|---|---|
| نسخهها | ۱۰۰ تای آخر |
| بیلدها | ۵۰ تای آخر |
| لاگ بیلد | ۱۰۰۰ خط در هر درخواست؛ برای بقیه after |
| لاگ | limit ۱ تا ۱۰۰۰ (پیشفرض ۱۰۰) |
| گزارش تغییرها | limit ۱ تا ۵۰۰ (پیشفرض ۱۰۰) |
| تراکنشهای کیف پول | ۲۰۰ تای آخر |
| رویدادهای هشدار | ۵۰ تای آخر |
نامها و آدرسها#
نام فانکشن، برنامه، دیتابیس، کش و شاخه یک برچسب DNS است: حروف کوچک لاتین، رقم و خط تیره، ۱ تا ۶۳ کاراکتر، با حرف یا رقم در ابتدا و انتها، و بدون -- (که شاخه را از نام جدا میکند). باکتها همینطورند با ۳ تا ۶۳ کاراکتر. نامها در کل پلتفرم یکتا هستند؛ نامی که تیم دیگری دارد 409 name_taken میگیرد.
| منبع | آدرس |
|---|---|
| فانکشن | https://<name>.fn.trustpage.ir |
| برنامه | https://<name>.app.trustpage.ir |
| پیشنمایش | https://<branch>--<name>.app.trustpage.ir (or .fn.trustpage.ir) |
| دیتابیس | <db>.database.trustpage.ir:5432، کاربر app، دیتابیس <db>؛ شاخه: <branch>--<db> |
| کش | <name>.cache.trustpage.ir:6379 و https://<name>.cache.trustpage.ir |
| فضای ذخیرهسازی | https://storage.trustpage.ir، ناحیهٔ us-east-1 |
بخشهای مرجع
- حساب و کلیدها۹ مسیراعتبارنامهٔ درخواست، کلیدهای API و گزارش تغییرها.
- ورود و نشستها۳۳ مسیرورود بدون رمز، ثبتنام، نشستها، عامل دوم، تایید دوم و ورود CLI.
- تیمها۲۲ مسیراعضا، نقشها، دعوتها و تیمهای مشترک.
- شروع کار۱۱ مسیرمراحل راهاندازی پس از ثبتنام، قدمهای شروع کار تیم و فهرست آمادگی پروداکشن هر پروژه.
- فانکشنها۶۳ مسیرفانکشنهای استاندارد وب. همان مسیرهای برنامهها.
- برنامهها۵۸ مسیرسایت استاتیک با فانکشن اختیاری. همان مسیرهای فانکشنها، بهعلاوهٔ فایلهای استاتیک.
- دامنهها۵ مسیردامنهٔ خودتان روی برنامه یا فانکشن، با HTTPS خودکار، ریدایرکت و پیشنمایش شاخه.
- دیتابیس۱۰ مسیردیتابیس SQL بدون سرور با شاخه و بازگردانی به یک لحظه.
- کش۱۶ مسیرکش بدون سرور برای هر کلاینت کش و HTTP.
- فضای ذخیرهسازی۶ مسیرباکت برای هر کلاینت ذخیرهسازی، و کلید ذخیرهٔ تیم.
- هشدارها۴ مسیرقاعدهٔ هشدار روی شاخصهای برنامه و فانکشن.
- پشتیبانی۷ مسیردرخواست از تیم پشتیبانی و پیگیری پاسخها.
- اعلانها۶ مسیرمرکز اعلانها و تنظیمات اعلان هر شخص.
- صورتحساب۱۵ مسیرپلنها، کیف پول ریالی، شارژ، مصرف، فاکتورها و اطلاعات مالیاتی. مبلغها به ریال.
- MCP۲ مسیرسرور MCP برای دستیارهای هوش مصنوعی.
- صف۲۵ مسیرصف و کار پسزمینه: ارسال، مصرف دستهای، تلاش دوباره و صف مرده.
- ریپازیتوریهای Git۱۹ مسیراتصال GitHub و GitLab، متصل کردن پروژه به ریپازیتوری، بیلد با هر push و وبهوکهای Git.
- وبهوک۱۱ مسیررویدادهای امضاشده به آدرس شما. قابلیت پلن حرفهای.
- خروجی لاگ۸ مسیرلاگها به آدرس شما: HTTPS یا syslog روی TLS. پلن حرفهای.
- ردیابی۲ مسیرمسیر یک درخواست: فانکشن، دیتابیس، کش و fetch.
- تغییر اندازهٔ تصویر۵ مسیرتنظیمات تغییر اندازهٔ تصویر هر برنامه: منبعهای مجاز، اندازهها، کش و مصرف.
- فیچر فلگها۵۹ مسیرفلگ برای هر پروژه با مقدار هر محیط و شاخه، قانونهای هدفگیری، انتشار تدریجی، کلید قطع اضطراری و تاریخچه با بازگشت.
- محافظت و انتشار۳۶ مسیرمحافظت پیشنمایش و پروداکشن، لینک اشتراک، ارتقا، انتشار تدریجی و همخوانی نسخهها.
- تحلیل بازدید و سرعت صفحه۱۳ مسیربازدیدکنندگان، بازدید صفحه، پرتکرارترینها و سرعت صفحه از بازدیدکنندگان واقعی، بدون کوکی و بدون نگهداشتن دادههای شخصی.
- سکرتها۳۱ مسیرپروژههای سکرت با محیط، نسخه و بازگشت، توکن پروژه، دسترسی، گزارش، مصرف و اتصال به فانکشن و برنامه.
- فایروال۱۸ مسیرفایروال هر پروژه: محافظتهای همیشه روشن، و قاعدههای رد، اجازه، ثبت و محدودیت درخواست بر اساس آدرس، کشور، مسیر، میزبان و هدر.
- وضعیت سرویسها۹ مسیروضعیت خود پلتفرم، نه پروژههای شما: هر بخش، دسترسپذیری ۹۰ روز، رخدادها، نگهداریها و اشتراک خبرها؛ بدون کلید.
- گروههای دسترسی۱۷ مسیرمحدود کردن اعضا به پروژههای برگزیده و نقش دادن با گروه.