مرجع عام

Auth

كل نقاط النهاية في هذه المجموعة. افتح أي واحدة لعرض معاملاتها ومثال عملي عليها.

24 نقاط النهاية

اعرض الصفحة بصيغة Markdown

Auth

24
GET /api/v1/auth/account
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

PATCH /api/v1/auth/account
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/2fa/disable
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
account_reauth

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/2fa/enable
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/2fa/recovery-codes
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
account_reauth

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/2fa/setup
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/avatar
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

GET /api/v1/auth/account/limits
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/password
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
account_reauth

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

GET /api/v1/auth/account/sessions
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/account/sessions/revoke-others
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

DELETE /api/v1/auth/account/sessions/{jti}
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

GET /api/v1/auth/context Classify the host before signing in

Tells a login page which flow to render: whether the host it was loaded on is a tenant subdomain, the instance apex, or unknown, plus the public tenant descriptor when it resolves. Unauthenticated, and always 200. It exposes only the public tenant slug, name and branding, and tenant is null for apex and unknown hosts.

المصادقة
عام
POST /api/v1/auth/impersonation/exit
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/login Sign a manager in

Exchanges an email or username and a password for a tenant-scoped session token. The tenant is taken from the host when you call a tenant subdomain, and a selector in the body is discarded in that case.

المصادقة
عام
حد المعدل
login

mfa_required is a 401 with the same code as a wrong password. Branch on details.reason, never on the status or the message: six different login outcomes share ERR_UNAUTHORIZED and only the reason tells them apart. expires_at is unix SECONDS, not milliseconds and not a formatted timestamp.

المعاملات

المعامل الوصف
emailمطلوب body · string Email or username.
passwordمطلوب body · string The manager's password.
totp_code body · string Six-digit code or a recovery code. Sent on the second attempt, after the first returns mfa_required.
tenant_slug body · string Honoured only when the host carries no tenant. Ignored outright on a tenant subdomain.
refresh body · boolean Opt in to the refresh-token flow. Omitting it returns one long-lived token and no refresh fields at all.
الاستجابة 200 OK
{
  "data": {
    "token": "eyJhbGciOiJIUzI1NiIs...",
    "user_id": 41,
    "tenant_id": 12,
    "tenant_slug": "acme",
    "roles": ["support"],
    "expires_at": 1758358800
  }
}
POST /api/v1/auth/logout End the current session

Revokes the calling session's token id, so it stops working immediately rather than at expiry.

المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها

Best-effort by design: it answers ok even if the revocation write failed, because the worst case is a token that dies at its natural expiry. Do not treat ok true as proof the token is dead.

الاستجابة 200 OK
{
  "data": { "ok": true }
}
GET /api/v1/auth/me Who am I, and what may I do

The one-shot bootstrap call: the current manager, their roles, the resolved permission codes, and the tenant settings a client needs before it can render anything. Authenticated but not permission-gated, so any working credential reaches it.

المصادقة
رمز موظّف أو جلسة

For an API token, permissions is the INTERSECTION of the token's scope with its owner's live permissions, and is_admin is forced to false even when the owner is a tenant administrator. That is the authoritative answer to what the credential may do — gate your client on this array, not on the owner's role names. max_users null means unlimited; 0 means blocked, not unlimited.

الاستجابة 200 OK
{
  "data": {
    "version": "0.2.34",
    "manager": {
      "id": 41,
      "tenant_id": 12,
      "email": "ops@acme.example",
      "username": "ops",
      "status": "active",
      "two_factor_enabled": true
    },
    "roles": ["support"],
    "permissions": ["prm_users_index", "prm_users_update"],
    "is_admin": false,
    "settings": {
      "currency": "EGP",
      "timezone": "Africa/Cairo",
      "default_language": "en",
      "pos_undo_window_seconds": 60
    },
    "tenant": {
      "license_status": "active",
      "license_expires_at": "2027-01-31 00:00:00",
      "max_users": 5000,
      "users_count": 812,
      "blocked": false,
      "blocked_reason": ""
    }
  }
}
DELETE /api/v1/auth/push-tokens
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/push-tokens
المصادقة
رمز موظّف أو جلسة جلسة موظّف فقط — لا يمكن لرمز API استدعاؤها
حد المعدل
t_mutate

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/refresh Exchange a refresh token

Issues a new session token from a refresh token. Only available when the original login asked for one.

المصادقة
عام
حد المعدل
refresh

An expired refresh token and an unknown one answer identically, on purpose. A revoked session is the one case that is distinguished, because the remedy differs: sign in again rather than retry.

المعاملات

المعامل الوصف
refresh_tokenمطلوب body · string The refresh token returned by login. Shown once; only its hash is stored.
POST /api/v1/auth/register/complete
المصادقة
عام
حد المعدل
register_complete

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/register/resend
المصادقة
عام
حد المعدل
register_resend

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/register/start
المصادقة
عام
حد المعدل
register_start

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

POST /api/v1/auth/register/verify
المصادقة
عام
حد المعدل
register_verify

مقروء مباشرة من الموجّه الذي يخدم هذه النسخة. لم يُضَف بعد وصف مكتوب لنقطة النهاية هذه.

مكتوب لتقرأه الأدوات الآلية أيضًا

المرجع عام ولا يتطلب حسابًا، فتستطيع أداة لم تَرَ X-Radius من قبل أن تصل إلى أول استدعاء صحيح بنفسها.

/llms.txt
فهرس لكل صفحة، مع ملخّص من سطر واحد.
/llms-full.txt
المرجع كاملًا في ملف Markdown واحد، دون تنقّل يحتاج إلى زحف.
/openapi.json
‏OpenAPI 3.1، مُولَّد من الموجّه الذي يخدم هذه النسخة.
/skill.md
ملف مهارة جاهز لمساعد آلي: المصادقة وشكل الاستجابة ورموز الأخطاء في صفحة واحدة.
<page-url>.md
أضف ‎.md إلى رابط أي صفحة في المرجع لتحصل على الصفحة نفسها بصيغة Markdown.
Accept: text/markdown
أرسل هذه الترويسة على الرابط المعتاد فتصلك الإجابة بصيغة Markdown بدلًا من الصفحة.
سلّم هذا السطر إلى مساعدك الآلي
اقرأ https://x-radius.com/llms.txt، ثم اجلب نقطة النهاية التي تحتاجها بصيغة Markdown بإضافة ‎.md إلى رابطها.

جرّبه على شبكتك.

50 مشترك لمدة 7 أيام، من غير ما تدفع حاجة.