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-Key | string | مفتاح Rasel API. أرسله في كل طلب موثّق ما عدا الويب هوك الوارد. * |
حقول الاستجابة
| الحقل | النوع | الوصف | مثال |
|---|---|---|---|
| success | boolean | صحيح عندما ينجح الإجراء، أو عندما ينجح مستلم واحد على الأقل في الدفعة. | |
| data | object | البيانات الأساسية في مسارات القوائم وملخص الحساب. | |
| data.profile | object | بيانات الحساب الظاهرة. لا تُعاد كلمات المرور ولا مفاتيح API. | |
| data.profile.id | string | معرّف المورد. | |
| data.profile.name | string | الاسم الظاهر أو معرّف القالب الإنجليزي الصغير، حسب المسار. | |
| data.profile.email | string | بريد الحساب. | |
| data.profile.phone | string | هاتف الحساب أو جهة الاتصال بالصيغة الدولية. | |
| data.profile.avatar | string | رابط صورة الملف عندما تكون موجودة. | |
| data.profile.phoneVerified | boolean | صحيح عندما يكون هاتف الحساب موثّقاً. | |
| data.profile.businessName | string | اسم النشاط التجاري المحفوظ على الحساب. | |
| data.profile.appName | string | اسم التطبيق المضبوط لهذا الحساب. | |
| data.profile.businessNameVerified | boolean | صحيح عندما يكون اسم النشاط موثّقاً. | |
| data.profile.appNameVerified | boolean | صحيح عندما يكون اسم التطبيق موثّقاً. | |
| data.profile.ownerId | string | معرّف مستخدم مالك الحساب. | |
| data.profile.memberPermissions | string-list | صلاحيات عضو الفريق الحالي. لا تُعاد للمالك. | |
| data.profile.createdAt | string | وقت الإنشاء. | |
| data.wallet | object | رصيد المحفظة الحالي والرصيد المتاح. | |
| data.wallet.balance | number | رصيد المحفظة بعد آخر حركة، أو الرصيد الظاهر الآن. | |
| data.wallet.availableBalance | number | الرصيد القابل للصرف الآن بعد الحجوزات. | |
| data.wallet.currency | string | رمز عملة المحفظة حسب ISO، مثل USD. | |
| data.subscription | object | صلاحية الخطة النشطة والفترة وملخص الحصة. | |
| data.subscription.access | object | هل يستطيع هذا الحساب الإرسال في فترة الباقة الحالية. | |
| data.subscription.access.canSend | boolean | صحيح عندما يكون الإرسال مسموحاً الآن. | |
| data.subscription.access.reason | string | سبب السماح بالإرسال أو منعه. | |
| data.subscription.access.poolExhausted | boolean | صحيح عندما تُستنفد حصة رسائل الباقة. | |
| data.subscription.access.effectiveLimit | number | الرسائل المسموحة في هذه الفترة، بما فيها رسائل المكافأة. | |
| data.subscription.access.periodMessageLimit | number | حد الباقة لهذه الفترة قبل رسائل المكافأة. | |
| data.subscription.access.bonusMessagesGranted | number | رسائل إضافية فوق حد الباقة. | |
| data.subscription.access.remainingSegments | number | الرسائل المتبقية في الفترة الحالية. | |
| data.subscription.access.usageCount | number | الرسائل المحتسبة في هذه الفترة. | |
| data.subscription.access.usageByChannel | json | الاستهلاك مقسوماً حسب القناة. | |
| data.subscription.access.channelLimits | json | حدود كل قناة في الفترة الحالية. | |
| data.subscription.access.cycleStart | string | بداية فترة الفوترة الحالية بصيغة ISO 8601. | |
| data.subscription.access.cycleEnd | string | نهاية فترة الفوترة الحالية بصيغة ISO 8601. | |
| data.subscription.active | object | فترة الاشتراك السارية الآن. | |
| data.subscription.active.planName | string | اسم الباقة السارية. | |
| data.subscription.active.status | string | حالة التسليم أو السجل. في الإرسال: sent أو queued أو scheduled. في الموارد الأخرى هي فلتر الحالة أو قيمتها. | |
| data.subscription.active.startAt | string | وقت بداية فترة الاشتراك. | |
| data.subscription.active.endAt | string | وقت نهاية فترة الاشتراك. | |
| data.subscription.active.isTrial | boolean | صحيح عندما تكون الفترة السارية تجربة. | |
| data.subscription.active.billingCycleMonths | number | طول دورة الفوترة بالأشهر. | |
| data.subscription.pool | object | حصة رسائل الباقة للفترة الحالية. | |
| data.subscription.pool.hasActivePlan | boolean | صحيح عندما توجد فترة باقة سارية. | |
| data.subscription.pool.poolSuppressed | boolean | صحيح عندما يكون استهلاك الحصة موقوفاً لهذا الحساب. | |
| data.subscription.pool.effectiveLimit | number | الرسائل المسموحة في هذه الفترة، بما فيها رسائل المكافأة. | |
| data.subscription.pool.periodMessageLimit | number | حد الباقة لهذه الفترة قبل رسائل المكافأة. | |
| data.subscription.pool.bonusMessagesGranted | number | رسائل إضافية فوق حد الباقة. | |
| data.subscription.pool.usedSegments | number | المقاطع المستهلكة من الحصة. | |
| data.subscription.pool.remainingSegments | number | المقاطع المتبقية في الحصة. | |
| data.subscription.pool.usedMessages | number | الرسائل المستهلكة من الحصة. | |
| data.subscription.pool.usageByChannel | json | استهلاك الحصة مقسوماً حسب القناة. | |
| data.subscription.pool.channelLimits | json | حدود الحصة لكل قناة. | |
| data.subscription.pool.cycleStart | string | بداية فترة الحصة بصيغة ISO 8601. | |
| data.subscription.pool.cycleEnd | string | نهاية فترة الحصة بصيغة ISO 8601. | |
| data.subscription.pool.poolExhausted | boolean | صحيح عندما تُستنفد الحصة. | |
| data.subscription.pool.planName | string | اسم الباقة التي تملك هذه الحصة. | |
| data.freeMessageGrants | object | منح الرسائل المجانية من الإدارة. | |
| data.freeMessageGrants.summary | object | مجاميع منح الرسائل المجانية على هذا الحساب. | |
| data.freeMessageGrants.summary.totals | object | الرسائل الممنوحة والمستهلكة والمحجوزة والمسحوبة والمتبقية. | |
| data.freeMessageGrants.summary.totals.granted | number | الرسائل المجانية التي مُنحت. | |
| data.freeMessageGrants.summary.totals.consumed | number | الرسائل المجانية التي استُخدمت. | |
| data.freeMessageGrants.summary.totals.reserved | number | الرسائل المجانية المحجوزة لإرسال لم يكتمل. | |
| data.freeMessageGrants.summary.totals.withdrawn | number | الرسائل المجانية التي سحبها المشرف. | |
| data.freeMessageGrants.summary.totals.remaining | number | الرسائل المجانية التي لم تُستخدم بعد. | |
| data.freeMessageGrants.summary.totals.activeRemaining | number | المتبقي في المنح التي ما زالت سارية. | |
| data.freeMessageGrants.summary.activeGrantCount | integer | عدد المنح التي ما زالت سارية. | |
| data.freeMessageGrants.summary.grantCount | integer | عدد المنح كله، بما فيها غير السارية. | |
| data.freeMessageGrants.summary.byScope | json | الرسائل المجانية المتبقية مجمّعة حسب القناة أو النطاق. | |
| data.freeMessageGrants.grants | json | منح الرسائل المجانية كل واحدة على حدة. |
رموز الحالة
| الحالة | الوصف |
|---|---|
| 200 | نجاح. |
| 401 | مفتاح API مفقود أو غير صالح. |
| 403 | الهاتف غير موثّق، أو الصلاحية ناقصة، أو الحساب لا يستطيع تنفيذ هذا الإجراء. |
| 429 | تم تجاوز حد المعدل، أو وصل عدد محاولات التحقق إلى الحد الأقصى. |
جرّب الطلب
الطلب
GET /api/v2/accountالاستجابة
نفّذ طلباً لعرض الاستجابة.