تخطَّ إلى المحتوى الرئيسي

الأعلام: قرار

علم الميزة قرار يُقيَّم مقابل حالة المستخدم. الاستهداف مجموعة شروط على تلك الحالة، تُفحص لحظة طلب العلم.

At a glance

Host
https://api.prodantix.com
Read
GET /v1/flags, GET /v1/flags/snapshot
Write
upsertFlag, archiveFlag over GraphQL
Live updates
flagChange on the project room
Auth
Project key to read, access token to write
  • استهداف في الوقت الفعلي على حالة المستخدم الحية
  • يُقرَّر لحظة السؤال، لا يُقرأ من قائمة مخزَّنة
  • الإطلاقات والتجارب مقاسة على مصدر الحقيقة نفسه

كيف يعمل

A flag is evaluated against the user state currently on file for a distinct id. Rules are ordered; the first match wins, and a flag with no matching rule falls back to its default. Evaluation is server-side by default, so a rule change takes effect without a client release.

كيفية الوصول إليه

SurfaceOperation
RESTGET /v1/flags · GET /v1/flags/snapshot
GraphQLflags query · upsertFlag, archiveFlag mutations
RealtimeflagChange on a project room
MCPprodantix.flags.list · .upsert · .archive

مثال

curl "https://api.prodantix.com/v1/flags?distinct_id=u_8f3a" \
  -H "Authorization: Bearer $PRODANTIX_KEY"

Evaluating locally

For latency-sensitive paths, fetch the whole ruleset once and evaluate in-process. Snapshot responses carry Cache-Control: public, max-age=30, stale-while-revalidate=300.

JSON
{
  "flags": [
    {
      "key": "new-checkout",
      "enabled": true,
      "rules": [
        { "property": "plan", "operator": "in", "values": ["pro", "scale"] }
      ]
    }
  ]
}