Rasel / Docs
AR
GET/api/v2/account

بيانات الحساب

اسم الحساب والرصيد والباقة الحالية ورصيد الرسائل المجانية. لا يُعاد أي سر أو رمز دخول.

متى تستخدمه. لوحة حالة في نظامك أو قبل الإرسال للتحقق من canSend والرصيد.

مثال الطلب

مثال صحيح: لقطة صحيحة

curl --location 'https://raselsms.com/api/v2/account' \--header 'X-API-Key: YOUR_API_KEY'

مثال خاطئ: خطأ: بدون مفتاح

curl --location 'https://raselsms.com/api/v2/account' \--header 'X-API-Key: YOUR_API_KEY'

يتطلب api_keys:read.

مثال الاستجابة

200 — لقطة صحيحة

{  "success": true,  "data": {    "profile": {      "id": "6800user123def4567890ffff",      "name": "Acme Co",      "email": "ops@acme.example",      "phone": "+963912345678",      "avatar": null,      "phoneVerified": true,      "businessName": "Acme",      "appName": "Acme App",      "businessNameVerified": true,      "appNameVerified": true,      "ownerId": null,      "memberPermissions": null,      "createdAt": "2026-01-10T08:00:00.000Z"    },    "wallet": {      "balance": 4.88,      "availableBalance": 4.88,      "currency": "USD"    },    "subscription": {      "access": {        "canSend": true,        "reason": "ok",        "poolExhausted": false,        "effectiveLimit": 1000,        "remainingSegments": 800,        "usageCount": 200      },      "active": {        "planName": "Growth",        "status": "active",        "startAt": "2026-07-01T00:00:00.000Z",        "endAt": "2026-08-01T00:00:00.000Z",        "isTrial": false,        "billingCycleMonths": 1      },      "pool": {        "hasActivePlan": true,        "poolSuppressed": false,        "effectiveLimit": 1000,        "usedSegments": 200,        "remainingSegments": 800,        "poolExhausted": false,        "planName": "Growth"      }    },    "freeMessageGrants": {      "summary": {        "totals": {          "granted": 100,          "consumed": 10,          "reserved": 0,          "withdrawn": 0,          "remaining": 90,          "activeRemaining": 90        },        "activeGrantCount": 1,        "grantCount": 1,        "byScope": [          {            "channel": "sms_local",            "providerKey": null,            "messageType": "all",            "remaining": 90,            "grantCount": 1          }        ]      },      "grants": [        {          "id": "6800abc123def4567890fedc",          "channel": "sms_local",          "remainingQuantity": 90,          "status": "active",          "reason": "admin_gift"        }      ]    }  }}

401 — خطأ: بدون مفتاح

{  "success": false,  "requestId": "msgreq_1739012345678_abc123",  "code": "UNAUTHORIZED",  "error": "Missing or invalid API key"}

يتطلب api_keys:read.

403 — الهاتف غير موثّق أو الصلاحية غير كافية (غالباً messages:create أو api_keys:read).

{  "success": false,  "requestId": "msgreq_1739012345678_abc123",  "code": "FORBIDDEN",  "error": "Phone not verified or missing permission"}

429 — تم تجاوز حد الطلبات. انتظر Retry-After إن وُجد.

{  "success": false,  "requestId": "msgreq_1739012345678_abc123",  "code": "RATE_LIMITED",  "error": "Rate limit exceeded",  "retryAfterSeconds": 30}

طلب HTTP

GET /api/v2/account

ترويسات الطلب

الترويسةالنوعالوصف
X-API-Keystringمفتاح Rasel API. أرسله في كل طلب موثّق ما عدا الويب هوك الوارد. *

حقول الاستجابة

الحقلالنوعالوصفمثال
successbooleanصحيح عندما ينجح الإجراء، أو عندما ينجح مستلم واحد على الأقل في الدفعة.
dataobjectالبيانات الأساسية في مسارات القوائم وملخص الحساب.
data.profileobjectبيانات الحساب الظاهرة. لا تُعاد كلمات المرور ولا مفاتيح API.
data.profile.idstringمعرّف المورد.
data.profile.namestringالاسم الظاهر أو معرّف القالب الإنجليزي الصغير، حسب المسار.
data.profile.emailstringبريد الحساب.
data.profile.phonestringهاتف الحساب أو جهة الاتصال بالصيغة الدولية.
data.profile.avatarstringرابط صورة الملف عندما تكون موجودة.
data.profile.phoneVerifiedbooleanصحيح عندما يكون هاتف الحساب موثّقاً.
data.profile.businessNamestringاسم النشاط التجاري المحفوظ على الحساب.
data.profile.appNamestringاسم التطبيق المضبوط لهذا الحساب.
data.profile.businessNameVerifiedbooleanصحيح عندما يكون اسم النشاط موثّقاً.
data.profile.appNameVerifiedbooleanصحيح عندما يكون اسم التطبيق موثّقاً.
data.profile.ownerIdstringمعرّف مستخدم مالك الحساب.
data.profile.memberPermissionsstring-listصلاحيات عضو الفريق الحالي. لا تُعاد للمالك.
data.profile.createdAtstringوقت الإنشاء.
data.walletobjectرصيد المحفظة الحالي والرصيد المتاح.
data.wallet.balancenumberرصيد المحفظة بعد آخر حركة، أو الرصيد الظاهر الآن.
data.wallet.availableBalancenumberالرصيد القابل للصرف الآن بعد الحجوزات.
data.wallet.currencystringرمز عملة المحفظة حسب ISO، مثل USD.
data.subscriptionobjectصلاحية الخطة النشطة والفترة وملخص الحصة.
data.subscription.accessobjectهل يستطيع هذا الحساب الإرسال في فترة الباقة الحالية.
data.subscription.access.canSendbooleanصحيح عندما يكون الإرسال مسموحاً الآن.
data.subscription.access.reasonstringسبب السماح بالإرسال أو منعه.
data.subscription.access.poolExhaustedbooleanصحيح عندما تُستنفد حصة رسائل الباقة.
data.subscription.access.effectiveLimitnumberالرسائل المسموحة في هذه الفترة، بما فيها رسائل المكافأة.
data.subscription.access.periodMessageLimitnumberحد الباقة لهذه الفترة قبل رسائل المكافأة.
data.subscription.access.bonusMessagesGrantednumberرسائل إضافية فوق حد الباقة.
data.subscription.access.remainingSegmentsnumberالرسائل المتبقية في الفترة الحالية.
data.subscription.access.usageCountnumberالرسائل المحتسبة في هذه الفترة.
data.subscription.access.usageByChanneljsonالاستهلاك مقسوماً حسب القناة.
data.subscription.access.channelLimitsjsonحدود كل قناة في الفترة الحالية.
data.subscription.access.cycleStartstringبداية فترة الفوترة الحالية بصيغة ISO 8601.
data.subscription.access.cycleEndstringنهاية فترة الفوترة الحالية بصيغة ISO 8601.
data.subscription.activeobjectفترة الاشتراك السارية الآن.
data.subscription.active.planNamestringاسم الباقة السارية.
data.subscription.active.statusstringحالة التسليم أو السجل. في الإرسال: sent أو queued أو scheduled. في الموارد الأخرى هي فلتر الحالة أو قيمتها.
data.subscription.active.startAtstringوقت بداية فترة الاشتراك.
data.subscription.active.endAtstringوقت نهاية فترة الاشتراك.
data.subscription.active.isTrialbooleanصحيح عندما تكون الفترة السارية تجربة.
data.subscription.active.billingCycleMonthsnumberطول دورة الفوترة بالأشهر.
data.subscription.poolobjectحصة رسائل الباقة للفترة الحالية.
data.subscription.pool.hasActivePlanbooleanصحيح عندما توجد فترة باقة سارية.
data.subscription.pool.poolSuppressedbooleanصحيح عندما يكون استهلاك الحصة موقوفاً لهذا الحساب.
data.subscription.pool.effectiveLimitnumberالرسائل المسموحة في هذه الفترة، بما فيها رسائل المكافأة.
data.subscription.pool.periodMessageLimitnumberحد الباقة لهذه الفترة قبل رسائل المكافأة.
data.subscription.pool.bonusMessagesGrantednumberرسائل إضافية فوق حد الباقة.
data.subscription.pool.usedSegmentsnumberالمقاطع المستهلكة من الحصة.
data.subscription.pool.remainingSegmentsnumberالمقاطع المتبقية في الحصة.
data.subscription.pool.usedMessagesnumberالرسائل المستهلكة من الحصة.
data.subscription.pool.usageByChanneljsonاستهلاك الحصة مقسوماً حسب القناة.
data.subscription.pool.channelLimitsjsonحدود الحصة لكل قناة.
data.subscription.pool.cycleStartstringبداية فترة الحصة بصيغة ISO 8601.
data.subscription.pool.cycleEndstringنهاية فترة الحصة بصيغة ISO 8601.
data.subscription.pool.poolExhaustedbooleanصحيح عندما تُستنفد الحصة.
data.subscription.pool.planNamestringاسم الباقة التي تملك هذه الحصة.
data.freeMessageGrantsobjectمنح الرسائل المجانية من الإدارة.
data.freeMessageGrants.summaryobjectمجاميع منح الرسائل المجانية على هذا الحساب.
data.freeMessageGrants.summary.totalsobjectالرسائل الممنوحة والمستهلكة والمحجوزة والمسحوبة والمتبقية.
data.freeMessageGrants.summary.totals.grantednumberالرسائل المجانية التي مُنحت.
data.freeMessageGrants.summary.totals.consumednumberالرسائل المجانية التي استُخدمت.
data.freeMessageGrants.summary.totals.reservednumberالرسائل المجانية المحجوزة لإرسال لم يكتمل.
data.freeMessageGrants.summary.totals.withdrawnnumberالرسائل المجانية التي سحبها المشرف.
data.freeMessageGrants.summary.totals.remainingnumberالرسائل المجانية التي لم تُستخدم بعد.
data.freeMessageGrants.summary.totals.activeRemainingnumberالمتبقي في المنح التي ما زالت سارية.
data.freeMessageGrants.summary.activeGrantCountintegerعدد المنح التي ما زالت سارية.
data.freeMessageGrants.summary.grantCountintegerعدد المنح كله، بما فيها غير السارية.
data.freeMessageGrants.summary.byScopejsonالرسائل المجانية المتبقية مجمّعة حسب القناة أو النطاق.
data.freeMessageGrants.grantsjsonمنح الرسائل المجانية كل واحدة على حدة.

رموز الحالة

الحالةالوصف
200نجاح.
401مفتاح API مفقود أو غير صالح.
403الهاتف غير موثّق، أو الصلاحية ناقصة، أو الحساب لا يستطيع تنفيذ هذا الإجراء.
429تم تجاوز حد المعدل، أو وصل عدد محاولات التحقق إلى الحد الأقصى.

جرّب الطلب

الطلب

GET /api/v2/account

الاستجابة

نفّذ طلباً لعرض الاستجابة.