وب سرویس خدمات آریانت
راهنمای کامل API برای پلتفرم ابری آریانت. تمام نقاط پایانی احرازشده نیاز به توکن API دارند.
شروع سریع
1. دریافت توکن API
# با پشتیبانی تماس بگیرید یا از داشبورد برای تولید توکن استفاده کنید
# آن را در هدر درخواست به عنوان قرار دهید: Authorization: Bearer YOUR_TOKEN
2. اولین درخواست خود را ارسال کنید
curl -X GET "https://api.arianet.io/api/v1/balance" \
-H "Authorization: Bearer YOUR_TOKEN"
3. فهرست سرورهای خود
curl -X GET "https://api.arianet.io/api/v1/servers" \
-H "Authorization: Bearer YOUR_TOKEN"
مرور احراز هویت
API آریانت از احراز هویت توکن Bearer استفاده میکند. توکن API خود را در هدر Authorization قرار دهید:
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
دریافت توکن شما
- وارد داشبورد آریانت شوید
- به تنظیمات → توکنهای API بروید
- روی تولید توکن جدید کلیک کنید
- توکن را کپی کنید و به طور ایمن ذخیره کنید (فقط یک بار نمایش داده میشود!)
بهترین روشهای امنیتی توکن
- هرگز توکنها را در کد سمت کلاینت یا کنترل نسخهای قرار ندهید
- از متغیرهای محیطی برای ذخیره توکنها در تولید استفاده کنید
- توکنها را به طور منظم تجدید کنید تا قطعابی را کاهش دهید
- توکنهای جداگانه برای برنامههای مختلف یا محیطهای مختلف ایجاد کنید
- از لیستهای IP برای محدود کردن استفاده توکن بر اساس IP منبع استفاده کنید
محدودیت نرخ
API آریانت محدودیت نرخ هوشمند را اعمال میکند تا استفاده منصفانه از منابع اطمینان حاصل کند:
| دستهبندی | حد | پنجره | نکته |
|---|---|---|---|
| عمومی | 100 درخواست | 15 دقیقه | مناطق، نقشههای قیمت، قالبهای OS (احراز هویت مورد نیاز نیست) |
| عملیات خواندن | 100 درخواست | 15 دقیقه | نقاط پایانی GET برای سرورها، موجودی، توکنها |
| عملیات نوشتن | 1000 درخواست | 15 دقیقه | POST، PUT، DELETE برای ایجاد/ویرایش منابع |
هدرهای محدودیت نرخ:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 85
X-RateLimit-Reset: 1693478400
هنگامی که محدودیت نرخ فعال شود، پاسخ 429 Too Many Requests دریافت میکنید. تعطیلهای نمایی برای تلاش مجدد پیادهسازی کنید.
مدیریت خطا
تمام خطاها از یک فرمت JSON سازگار پیروی میکنند:
{
"error": "INVALID_REQUEST",
"message": "پیام خطای تفصیلی",
"status": 400
}
کدهای وضعیت متداول
| کد | معنی | اقدام |
|---|---|---|
| 200 | موفق | درخواست با موفقیت انجام شد |
| 201 | ایجاد شد | منبع با موفقیت ایجاد شد |
| 400 | درخواست نامعتبر | فرمت درخواست و پارامترها را بررسی کنید |
| 401 | غیر مجاز | توکن API معتبر و منقضی نشده را تأیید کنید |
| 403 | ممنوع | شما اجازه دسترسی به این منبع ندارید |
| 404 | یافت نشد | منبع وجود ندارد یا حذف شد |
| 429 | درخواستهای بیش از حد | محدودیت نرخ تجاوز شد، قبل از تلاش مجدد منتظر بمانید |
| 500 | خطای سرور | بعداً دوباره امتحان کنید، اگر ادامه یافت با پشتیبانی تماس بگیرید |
اشیای رایج پاسخ
این نمونهها شکل آبجکتهایی را نشان میدهند که داخل پاسخهای API برگردانده میشوند. مرجع اصلی، نمونه پاسخ هر endpoint است.
کاربر
خروجی GET /api/v1/auth/me درون data.
{
"id": 12345,
"email": "user@example.com",
"mobile": "+1234567890",
"status": "active",
"verified": true
}
سرویس (سرور)
خروجی endpointهای فهرست و جزئیات سرور درون data.
{
"id": 98765,
"hostname": "web-server-1",
"status": "active",
"instance_status": "running",
"datacenter": {
"id": 1,
"name": "us-east-1",
"display_name": "US East (N. Virginia)"
},
"plan": {
"id": 1,
"name": "Standard 2GB"
},
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"ip_addresses": [
{
"ip": "192.168.1.10",
"type": "primary"
}
],
"protected": false,
"cycle": "monthly",
"created_at": "2024-01-15T10:30:00Z"
}
کیف پول (موجودی)
خروجی GET /api/v1/balance درون data.
{
"id": 1,
"balance": 150.5,
"primary": true,
"status": "active",
"currency": {
"id": 1,
"code": "USD",
"name": "US Dollar",
"symbol": "$"
}
}
تراکنش
خروجی GET /api/v1/balance/transactions درون data.transactions[].
{
"id": 5001,
"type": "debit",
"amount": 29.99,
"description": "Monthly server charge - web-server-1",
"created_at": "2024-01-20T08:15:00Z"
}
گروه طرح
خروجی GET /api/v1/plans/datacenter/{datacenter_id} درون data.groups[].
{
"id": 10,
"name": "Standard Plans",
"plans": [
{
"id": 1,
"name": "Standard 2GB",
"display_name": "Standard 2GB",
"recommended": false,
"cycle": "monthly",
"cpu": {
"size": 1,
"unit": "vCPU"
},
"ram": {
"size": 2,
"unit": "GB"
},
"storage": {
"size": 20,
"unit": "GB"
},
"prices": [
{
"code": "USD",
"currency": "$",
"hourly": "0.05",
"monthly": "29.99",
"yearly": "299.90"
}
]
}
]
}
طرح
خروجی GET /api/v1/plans/{id} درون data.
{
"id": 1,
"name": "Standard 2GB",
"display_name": "Standard 2GB",
"recommended": false,
"cycle": "monthly",
"cpu": {
"size": 1,
"unit": "vCPU"
},
"ram": {
"size": 2,
"unit": "GB"
},
"storage": {
"size": 20,
"unit": "GB"
},
"prices": [
{
"code": "USD",
"currency": "$",
"hourly": "0.05",
"monthly": "29.99",
"yearly": "299.90"
}
]
}
منطقه (مرکز داده)
خروجی GET /api/v1/regions درون data.regions[].
{
"id": 1,
"name": "us-east-1",
"display_name": "US East (N. Virginia)",
"country": "US"
}
الگوی سیستمعامل
خروجی GET /api/v1/os/datacenter/{datacenter_id} درون data.operating_systems[].
{
"id": 5,
"name": "Ubuntu 22.04 LTS",
"category": "Linux"
}
توکن API
خروجی GET /api/v1/auth/tokens درون data.tokens[].
{
"id": 1,
"name": "CLI Token",
"prefix": "arr_abc123...",
"last_used": "2024-01-20T15:30:00Z",
"expires": null,
"created_at": "2024-01-15T10:00:00Z"
}
کلید SSH
خروجی endpointهای کلید SSH درون data.
{
"id": 1001,
"name": "My Laptop",
"fingerprint": "SHA256:AbCd+EfG...",
"public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...",
"created_at": "2024-01-10T14:22:00Z"
}
دیوار آتش
خروجی endpointهای دیوار آتش درون data.
{
"id": 2001,
"name": "Web Server Firewall",
"protected": false,
"rules": [
{
"protocol": "tcp",
"port": 80,
"direction": "in",
"cidr": "0.0.0.0/0"
}
],
"created_at": "2024-01-12T09:45:00Z"
}
احراز هویت
دریافت اطلاعات کاربر جاری
GET /api/v1/auth/me
Authorization: Bearer {token}
دریافت اطلاعات کاربر احرازشده.
پاسخ:
{
"data": {
"id": 12345,
"email": "user@example.com",
"mobile": "+1234567890",
"status": "active",
"verified": true
}
}
فهرست توکنهای API
GET /api/v1/auth/tokens
Authorization: Bearer {token}
فهرست تمام توکنهای API کاربر احرازشده.
پاسخ:
{
"data": {
"tokens": [
{
"id": 1,
"name": "CLI Token",
"prefix": "arr_abc123...",
"last_used": "2024-01-20T15:30:00Z",
"expires": null,
"created_at": "2024-01-15T10:00:00Z"
}
]
}
}
لغو توکن
DELETE /api/v1/auth/tokens/{id}
Authorization: Bearer {token}
لغو توکن API خاص براساس شناسه.
پارامترها:
id(path، ضروری): شناسه توکن
پاسخ:
{
"data": {
"message": "توکن با موفقیت لغو شد"
}
}
خروج از حساب
DELETE /api/v1/auth/logout
Authorization: Bearer {token}
لغو توکن API جاری مورد استفاده برای احراز هویت.
پاسخ:
{
"data": {
"message": "توکن با موفقیت لغو شد"
}
}
سرورها (خدمات)
فهرست سرورها
GET /api/v1/servers?page=1&limit=15&status=active
Authorization: Bearer {token}
فهرست تمام سرورهای کاربر احرازشده.
پارامترهای Query:
page(integer، پیشفرض: 1): شماره صفحه برای paginationlimit(integer، پیشفرض: 15، حداکثر: 100): نتایج در هر صفحهstatus(string، اختیاری): فیلتر براساس وضعیت (active, suspended, creating, failed, terminated, pending)
پاسخ:
{
"data": [
{
"id": 98765,
"hostname": "web-server-1",
"status": "active",
"instance_status": "running",
"datacenter": {
"id": 1,
"name": "us-east-1",
"display_name": "US East (N. Virginia)"
},
"plan": {
"id": 1,
"name": "Standard 2GB"
},
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"ip_addresses": [
{
"ip": "192.168.1.10",
"type": "primary"
}
],
"protected": false,
"cycle": "monthly",
"created_at": "2024-01-15T10:30:00Z"
}
],
"pagination": {
"current_page": 1,
"per_page": 15,
"total": 42,
"last_page": 3
}
}
دریافت جزئیات سرور
GET /api/v1/servers/{id}
Authorization: Bearer {token}
دریافت اطلاعات تفصیلی سرور خاص.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"id": 98765,
"hostname": "web-server-1",
"status": "active",
"instance_status": "running",
"datacenter": {
"id": 1,
"name": "us-east-1",
"display_name": "US East (N. Virginia)"
},
"plan": {
"id": 1,
"name": "Standard 2GB"
},
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"ip_addresses": [
{
"ip": "192.168.1.10",
"type": "primary"
},
{
"ip": "192.168.1.11",
"type": "secondary"
}
],
"protected": false,
"cycle": "monthly",
"created_at": "2024-01-15T10:30:00Z"
}
}
دریافت وضعیت سرور
GET /api/v1/servers/{id}/status
Authorization: Bearer {token}
بررسی سریع وضعیت سرور بدون دریافت جزئیات کامل.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"id": 98765,
"status": "active",
"instance_status": "running"
}
}
ایجاد سرور
POST /api/v1/servers
Authorization: Bearer {token}
Content-Type: application/json
ایجاد سرور ابری جدید.
بدنه درخواست:
{
"datacenter_id": 1,
"plan_id": 1,
"os_id": 5,
"hostname": "web-server-1",
"project_id": null
}
پارامترها:
datacenter_id(integer، ضروری): شناسه مرکز داده/منطقهplan_id(integer، ضروری): شناسه طرح سرورos_id(integer، ضروری): شناسه الگوی سیستمعاملhostname(string، اختیاری): نام میزبان سرورproject_id(integer، اختیاری): شناسه پروژه برای سازمان
پاسخ: (201 Created)
{
"data": {
"id": 99999,
"hostname": "web-server-1",
"status": "creating",
"instance_status": "initializing",
"datacenter": {
"id": 1,
"name": "us-east-1"
},
"plan": {
"id": 1,
"name": "Standard 2GB"
},
"os": {
"id": 5,
"name": "Ubuntu 22.04 LTS"
},
"ip_addresses": [],
"protected": false,
"cycle": "monthly",
"created_at": "2024-01-21T10:30:00Z"
}
}
راهاندازی مجدد سرور
POST /api/v1/servers/{id}/restart
Authorization: Bearer {token}
اجرای بازآغازی مرتب سرور در حال اجرا.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"message": "راهاندازی مجدد سرور شروع شد"
}
}
روشن کردن سرور
POST /api/v1/servers/{id}/power-on
Authorization: Bearer {token}
روشن کردن سرور خاموش.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"message": "روشن کردن سرور شروع شد"
}
}
خاموشی سرور
POST /api/v1/servers/{id}/power-off
Authorization: Bearer {token}
خاموشی سرور در حال اجرا.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"message": "خاموشی سرور شروع شد"
}
}
تغییر نام سرور
POST /api/v1/servers/{id}/rename
Authorization: Bearer {token}
Content-Type: application/json
تغییر نام میزبان سرور.
پارامترها:
id(path، ضروری): شناسه سرور
بدنه درخواست:
{
"hostname": "new-web-server"
}
پاسخ:
{
"data": {
"message": "تغییر نام سرور شروع شد"
}
}
نصب مجدد سیستمعامل
POST /api/v1/servers/{id}/reinstall
Authorization: Bearer {token}
Content-Type: application/json
نصب مجدد سیستمعامل روی سرور. هشدار: تمام دادهها حذف خواهند شد.
پارامترها:
id(path، ضروری): شناسه سرور
بدنه درخواست:
{
"os_id": 6
}
پاسخ:
{
"data": {
"message": "نصب مجدد سیستمعامل شروع شد"
}
}
تبدیل حفاظت
POST /api/v1/servers/{id}/toggle-protection
Authorization: Bearer {token}
فعال یا غیرفعال کردن حفاظت از حذف برای سرور.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ:
{
"data": {
"protected": true,
"message": "حفاظت سرور تبدیل شد"
}
}
حذف سرور
DELETE /api/v1/servers/{id}
Authorization: Bearer {token}
حذف سرور. هشدار: این کار دائمی است و تمام دادهها حذف خواهند شد.
پارامترها:
id(path، ضروری): شناسه سرور
پاسخ: (204 No Content)
کاتالوگ (نقاط پایانی عمومی - بدون احراز هویت)
فهرست مناطق
GET /api/v1/regions
فهرست تمام مراکز داده/مناطق دسترسپذیر.
پاسخ:
{
"data": {
"regions": [
{
"id": 1,
"name": "us-east-1",
"display_name": "US East (N. Virginia)",
"country": "US"
},
{
"id": 2,
"name": "eu-west-1",
"display_name": "EU West (Ireland)",
"country": "IE"
},
{
"id": 3,
"name": "ap-southeast-1",
"display_name": "Asia Pacific (Singapore)",
"country": "SG"
}
]
}
}
فهرست طرحها براساس مرکز داده
GET /api/v1/plans/datacenter/{datacenter_id}
فهرست تمام طرحهای سرور دسترسپذیر برای مرکز داده خاص با قیمت.
پارامترها:
datacenter_id(path، ضروری): شناسه مرکز داده
پاسخ:
{
"data": {
"groups": [
{
"id": 10,
"name": "Standard Plans",
"plans": [
{
"id": 1,
"name": "Standard 2GB",
"display_name": "Standard 2GB",
"recommended": false,
"cycle": "monthly",
"cpu": {
"size": 1,
"unit": "vCPU"
},
"ram": {
"size": 2,
"unit": "GB"
},
"storage": {
"size": 20,
"unit": "GB"
},
"prices": [
{
"code": "USD",
"currency": "$",
"hourly": "0.05",
"monthly": "29.99",
"yearly": "299.90"
},
{
"code": "EUR",
"currency": "€",
"hourly": "0.045",
"monthly": "27.99",
"yearly": "279.90"
}
]
}
]
}
]
}
}
دریافت جزئیات طرح
GET /api/v1/plans/{id}
دریافت اطلاعات تفصیلی طرح خاص.
پارامترها:
id(path، ضروری): شناسه طرح
پاسخ:
{
"data": {
"id": 1,
"name": "Standard 2GB",
"display_name": "Standard 2GB",
"recommended": false,
"cycle": "monthly",
"cpu": {
"size": 1,
"unit": "vCPU"
},
"ram": {
"size": 2,
"unit": "GB"
},
"storage": {
"size": 20,
"unit": "GB"
},
"prices": [
{
"code": "USD",
"currency": "$",
"hourly": "0.05",
"monthly": "29.99",
"yearly": "299.90"
}
]
}
}
فهرست سیستمعاملها براساس مرکز داده
GET /api/v1/os/datacenter/{datacenter_id}
فهرست تمام الگوهای سیستمعامل دسترسپذیر برای مرکز داده خاص.
پارامترها:
datacenter_id(path، ضروری): شناسه مرکز داده
پاسخ:
{
"data": {
"operating_systems": [
{
"id": 5,
"name": "Ubuntu 22.04 LTS",
"category": "Linux"
},
{
"id": 6,
"name": "Debian 12",
"category": "Linux"
},
{
"id": 7,
"name": "CentOS 9",
"category": "Linux"
}
]
}
}
کلیدهای SSH
فهرست کلیدهای SSH
GET /api/v1/ssh-keys
Authorization: Bearer {token}
فهرست تمام کلیدهای SSH در حساب کاربر احرازشده.
پاسخ:
{
"data": [
{
"id": 1001,
"name": "My Laptop",
"fingerprint": "SHA256:AbCd+EfG...",
"public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...",
"created_at": "2024-01-10T14:22:00Z"
}
]
}
دریافت جزئیات کلید SSH
GET /api/v1/ssh-keys/{id}
Authorization: Bearer {token}
دریافت جزئیات کلید SSH خاص.
پارامترها:
id(path، ضروری): شناسه کلید SSH
پاسخ:
{
"data": {
"id": 1001,
"name": "My Laptop",
"fingerprint": "SHA256:AbCd+EfG...",
"public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...",
"created_at": "2024-01-10T14:22:00Z"
}
}
ایجاد کلید SSH
POST /api/v1/ssh-keys
Authorization: Bearer {token}
Content-Type: application/json
افزودن کلید SSH عمومی جدید به حساب.
بدنه درخواست:
{
"name": "Production Key",
"public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC..."
}
پاسخ: (201 Created)
{
"data": {
"id": 1004,
"name": "Production Key",
"fingerprint": "SHA256:AbCd+EfG...",
"created_at": "2024-01-20T14:45:00Z"
}
}
بروزرسانی کلید SSH
PUT /api/v1/ssh-keys/{id}
Authorization: Bearer {token}
Content-Type: application/json
بروزرسانی فراداده کلید SSH.
پارامترها:
id(path، ضروری): شناسه کلید SSH
بدنه درخواست:
{
"name": "Updated Key Name"
}
پاسخ:
{
"data": {
"id": 1001,
"name": "Updated Key Name",
"fingerprint": "SHA256:AbCd+EfG...",
"created_at": "2024-01-10T14:22:00Z"
}
}
حذف کلید SSH
DELETE /api/v1/ssh-keys/{id}
Authorization: Bearer {token}
حذف کلید SSH از حساب.
پارامترها:
id(path، ضروری): شناسه کلید SSH
پاسخ: (204 No Content)
دیوار آتش
فهرست دیوارهای آتش
GET /api/v1/firewalls
Authorization: Bearer {token}
فهرست تمام گروههای دیوار آتش در حساب.
پاسخ:
{
"data": [
{
"id": 2001,
"name": "Web Server Firewall",
"protected": false,
"rules": [
{
"protocol": "tcp",
"port": 80,
"direction": "in",
"cidr": "0.0.0.0/0"
},
{
"protocol": "tcp",
"port": 443,
"direction": "in",
"cidr": "0.0.0.0/0"
}
],
"created_at": "2024-01-12T09:45:00Z"
}
]
}
دریافت جزئیات دیوار آتش
GET /api/v1/firewalls/{id}
Authorization: Bearer {token}
دریافت جزئیات دیوار آتش خاص شامل تمام قوانین.
پارامترها:
id(path، ضروری): شناسه دیوار آتش
پاسخ:
{
"data": {
"id": 2001,
"name": "Web Server Firewall",
"protected": false,
"rules": [
{
"index": 0,
"protocol": "tcp",
"port": 80,
"direction": "in",
"cidr": "0.0.0.0/0"
},
{
"index": 1,
"protocol": "tcp",
"port": 443,
"direction": "in",
"cidr": "0.0.0.0/0"
},
{
"index": 2,
"protocol": "tcp",
"port": 22,
"direction": "in",
"cidr": "203.0.113.0/24"
}
],
"created_at": "2024-01-12T09:45:00Z"
}
}
ایجاد دیوار آتش
POST /api/v1/firewalls
Authorization: Bearer {token}
Content-Type: application/json
ایجاد گروه دیوار آتش جدید.
بدنه درخواست:
{
"name": "My Firewall"
}
پاسخ: (201 Created)
{
"data": {
"id": 2004,
"name": "My Firewall",
"protected": false,
"rules": [],
"created_at": "2024-01-20T14:45:00Z"
}
}
افزودن قانون دیوار آتش
POST /api/v1/firewalls/{id}/rules
Authorization: Bearer {token}
Content-Type: application/json
افزودن قانون جدید به دیوار آتش.
پارامترها:
id(path، ضروری): شناسه دیوار آتش
بدنه درخواست:
{
"protocol": "tcp",
"port": 80,
"direction": "in",
"cidr": "0.0.0.0/0"
}
پاسخ:
{
"data": {
"message": "قانون با موفقیت اضافه شد"
}
}
حذف قانون دیوار آتش
DELETE /api/v1/firewalls/{id}/rules/{rule_index}
Authorization: Bearer {token}
حذف قانون خاص از دیوار آتش.
پارامترها:
id(path، ضروری): شناسه دیوار آتشrule_index(path، ضروری): شاخص قانون (0-based)
پاسخ: (204 No Content)
حذف دیوار آتش
DELETE /api/v1/firewalls/{id}
Authorization: Bearer {token}
حذف تمام گروه دیوار آتش شامل تمام قوانین.
پارامترها:
id(path، ضروری): شناسه دیوار آتش
پاسخ: (204 No Content)
حساب و صورتحساب
دریافت موجودی حساب
GET /api/v1/balance
Authorization: Bearer {token}
دریافت موجودی حساب و اطلاعات اعتبار.
پاسخ:
{
"data": {
"balance": 150.50,
"currency": "USD",
"status": "active",
"used_this_month": 45.25,
"remaining": 105.25
}
}
دریافت تاریخچه تراکنشها
GET /api/v1/balance/transactions?page=1&limit=50
Authorization: Bearer {token}
مشاهده تاریخچه تراکنشهای حساب.
پارامترهای Query:
page(integer، پیشفرض: 1): شماره صفحهlimit(integer، پیشفرض: 50): نتایج در هر صفحه
پاسخ:
{
"data": [
{
"id": 5001,
"type": "debit",
"amount": 29.99,
"description": "هزینه سرور ماهانه - web-server-1",
"date": "2024-01-20T00:00:00Z"
},
{
"id": 5002,
"type": "credit",
"amount": 50.00,
"description": "اعتبار حساب اعمالشد",
"date": "2024-01-18T12:30:00Z"
}
],
"pagination": {
"current_page": 1,
"per_page": 50,
"total": 128,
"last_page": 3
}
}
مدیریت خطاها
تمام پاسخهای API از یک قالب خطا سازگار پیروی میکنند:
{
"error": {
"code": "ERROR_CODE",
"message": "پیام خطای قابلفهم توسط انسان",
"details": {
"field": "زمینه اضافی"
}
}
}
کدهای خطای رایج
| کد | وضعیت HTTP | توضیحات |
|---|---|---|
INVALID_ID | 400 | فرمت شناسه منبع نامعتبر |
VALIDATION_ERROR | 400 | تأیید درخواست ناموفق |
UNAUTHORIZED | 401 | توکن احراز هویت موجود نیست یا نامعتبر |
FORBIDDEN | 403 | مجوزهای ناکافی |
NOT_FOUND | 404 | منبع یافت نشد |
CONFLICT | 409 | تضاد منبع (مثلاً تکراری) |
RATE_LIMIT_EXCEEDED | 429 | درخواستهای بیشازحد |
INTERNAL_SERVER_ERROR | 500 | خطای سرور |
محدودکردن نرخ
نقاط پایانی عمومی محدودشده براساس IP: 100 درخواست/دقیقه نقاط پایانی احرازشده: 1000 درخواست/دقیقه عملیاتهای نوشتاری: 100 درخواست/دقیقه
اطلاعات محدودکردن نرخ در سرصحفههای پاسخ بازگردانی میشود:
X-RateLimit-Limit: حداکثر درخواستها در این پنجرهX-RateLimit-Remaining: درخواستهای باقیماندهX-RateLimit-Reset: مهرزمان Unix هنگام تعیینمجدد محدودیت