راهنمای وبسرویس RailBot
اپهای ثبتشدهت رو در ابزارهای خودت استفاده کن. از موجودی کیف پول تا دریافت اطلاعات اپ، همهٔ مسیرها اینجان.
اولین درخواستشروع و احراز هویت
- از منوی ربات، پنل حساب رو باز کن و یک کلید API بساز.
- برای درخواست پولی، از بخش کیف پول در پنل وب اعتبار بها بگیر.
- کلید رو در هدر Authorization بفرست و فقط سمت سرور نگهش دار.
Authorization: Bearer $KEY
Accept: application/json
موجودی کیف پول
/api/v1/walletموجودی تتر، تعرفهٔ هر پاسخ موفق و مصرف کلیدی که فرستادی رو برمیگردونه. رایگانه.
{
"data": {
"balance": "10.00",
"currency": "USDT",
"request_price": "0.05",
"token": {
"used": 0,
"quota": 100
}
}
}
فهرست اپها
/api/v1/apps?page=1هر صفحه تا ۲۵ اپ از حساب خودت با شناسهٔ RailBot، اسم و کد کشور برمیگردونه. رایگانه.
{
"data": {
"apps": [
{"id": 17,
"label": "My app",
"country": "IR"}
],
"page": 1,
"has_more": false
}
}
دریافت اطلاعات اپ
/api/v1/apps/{id}/credentialsشناسهٔ اپ رو از فهرست بگیر. هر پاسخ موفق جدید، یک واحد از سقف کلید و تعرفهٔ اعلامشده از موجودی کم میکنه.
برای هر درخواست تازه، یک Idempotency-Key یکتا (۸ تا ۱۲۸ کاراکتر ASCII شامل حرف، عدد یا . _ : -) بفرست. اگر ارتباط قطع شد همون مقدار رو دوباره بفرست تا دوباره هزینه کم نشه.
در مثال، BASE آدرس RailBot و KEY کلید وبسرویس خودته.
curl -X POST \
-H "Authorization: Bearer $KEY" \
-H 'Idempotency-Key: read-17-0001' \
"$BASE/api/v1/apps/17/credentials"
{
"data": {
"app_id": 17,
"api_id": 12345,
"api_hash":
"0123456789abcdef0123456789abcdef",
"charged": "0.05",
"currency": "USDT",
"balance_after": "9.95"
}
}
پاسخ تکراری با هدر Idempotent-Replay: true مشخص میشه. موجودی داخل پاسخ، موجودی زمان ثبت همون تراکنشه.
کدهای خطا
برای مدیریت خطا از error.code استفاده کن. درخواست ناموفق از موجودی یا سقف کلید کم نمیکنه.
| HTTP | کد | معنی |
|---|---|---|
401 | invalid_token | کلید اشتباهه یا لغو شده. |
402 | insufficient_balance | اعتبار کافی نیست. |
403 | account_blocked | دسترسی حساب محدود شده. |
404 | app_not_found | اپ در حساب پیدا نشد. |
409 | idempotency_conflict | Idempotency-Key قبلاً برای اپ دیگری استفاده شده. |
409 | app_changed | اطلاعات اپ تغییر کرده. Idempotency-Key تازه بفرست. |
422 | invalid_idempotency_key | هدر Idempotency-Key خالی یا نامعتبره. |
429 | token_quota_exhausted | سقف درخواستهای موفق این کلید پر شده. |
429 | rate_limited | درخواستها زیاده. بعداً دوباره تلاش کن. |
500 | server_error | خطای سرور. با همان Idempotency-Key دوباره تلاش کن. |