انتقل إلى المحتوى

واجهة برمجة تطبيقات المجموعات الضابطة

المجموعة الضابطة هي حصة محجوزة من مستخدمي التطبيق لا تتلقى أبدًا رسائل تسويقية، بحيث يمكن قياس تأثير الرسائل مقابلها. تدير واجهة برمجة التطبيقات هذه المجموعات الضابطة وتجيب على عضوية كل مستخدم. استخدمها لتقليد إجراءات الإعدادات > المجموعات الضابطة في لوحة التحكم من أنظمتك الخاصة، أو للتحقق مما إذا كانت معرفات مستخدمين معينة محجوزة قبل الإرسال أو الاستيراد.

عنوان URL الأساسي

Anchor link to
https://rpc-api.svc-nue.pushwoosh.com

يتم تقديم جميع نقاط النهاية عبر HTTPS. تستخدم الطلبات والاستجابات application/json ما لم يُذكر خلاف ذلك.

المصادقة

Anchor link to

يجب أن يتضمن كل طلب ترويسة Authorization مع رمز API الخادم الخاص بك:

Authorization: Api YOUR_API_TOKEN

اصطلاحات

Anchor link to
  • تسمية الحقول: تقبل أجسام الطلبات ومعلمات الاستعلام/المسار lowerCamelCase (على سبيل المثال، controlGroupCode، userIds)، ويقوم الخادم بفك ترتيب أي من الحالتين. يتم دائمًا ترتيب الاستجابات باستخدام أسماء حقول proto، في snake_case (application_id، in_control_group، وما إلى ذلك). تستخدم أمثلة الاستجابة ومرجع كائن المجموعة الضابطة أدناه تلك الحالة.
  • code: تحمل كل استجابة للمجموعة الضابطة رمزها الخاص، الذي يتم إنشاؤه عند Create. مرر هذا الرمز كـ controlGroupCode إلى Get، UpdatePercentage، UpdateCountries، Rename، Disable، Reshuffle، ForceUpdateCalculation، GetCalculationStatus، GetAnalytics، و CheckControlGroupMembership.
  • عدة مجموعات: يمكن أن يحتوي التطبيق على عدة مجموعات ضابطة. تحجز كل مجموعة مفعّلة المستخدمين عن كل إرسال تسويقي ضمن بلدانها وعلامتها الخاصة، بشكل مستقل عن المجموعات الأخرى، ويجوز أن تتداخل المجموعات. لا يختار الإرسال مجموعة. المجموعة ذات name الفارغ هي المجموعة الأصلية للتطبيق وتعمل بالطريقة نفسها.

استجابات الخطأ

Anchor link to
حالة HTTPالمعنى
400 Bad Requestوسيطة غير صالحة، مثل percentage خارج النطاق 1-20، أو userIds فارغة أو تزيد عن 1000 إدخال، أو رمز بلد غير معروف، أو scopeValues محددة دون scopeTag، أو scopeTag يسمّي علامة غير موجودة في الحساب، أو إدخال في scopeValues ترفضه UpdateSettings (انظر أدناه). يتم إرجاعها أيضًا (كـ FailedPrecondition على السلك) بواسطة UpdatePercentage، UpdateCountries، UpdateSettings، Disable، Reshuffle، و Delete على مجموعة ضابطة تنتمي إلى مجموعة محجوزة خاصة بحملة، وفقًا للتنبيه أدناه. يرفض Reshuffle وحده أيضًا بهذه الطريقة على مجموعة معطلة (percentage 0).
401 Unauthorizedترويسة Authorization مفقودة أو غير صالحة.
403 Forbiddenالتطبيق أو المجموعة الضابطة لا ينتمي إلى حساب المتصل.
404 Not Foundلم يتم العثور على المجموعة الضابطة أو التطبيق.
409 Conflictاستخدم Create name موجودًا بالفعل في التطبيق.
500 Internal Server Errorفشل غير متوقع من جانب الخادم.

نقاط النهاية

Anchor link to
الطريقةالمسارالوصف
GET/api/applications/{code}/control_groupsسرد المجموعات الضابطة للتطبيق
POST/api/applications/{code}/control_groupsإنشاء مجموعة ضابطة
GET/api/applications/{code}/control_groups/{control_group_code}الحصول على مجموعة ضابطة واحدة
POST/api/applications/{code}/control_groups/{control_group_code}تغيير حجم مجموعة ضابطة
POST/api/applications/{code}/control_groups/{control_group_code}/countriesإعادة تحديد نطاق مجموعة ضابطة لمجموعة من البلدان
POST/api/applications/{code}/control_groups/{control_group_code}/settingsتطبيق الحجم ونطاق البلدان والعلامة ووضع مدة الصلاحية في استدعاء واحد
POST/api/applications/{code}/control_groups/{control_group_code}/display_nameإعادة تسمية مجموعة ضابطة
POST/api/applications/{code}/control_groups/{control_group_code}/disableتعطيل مجموعة ضابطة
POST/api/applications/{code}/control_groups/{control_group_code}/reshuffleإعادة خلط مجموعة ضابطة
POST/api/applications/{code}/control_groups/{control_group_code}/recalculateفرض إعادة حساب حجم مجموعة ضابطة
GET/api/applications/{code}/control_groups/{control_group_code}/calculation_statusاستطلاع حساب حجم قيد التشغيل
GET/api/applications/{code}/control_groups/{control_group_code}/analyticsالحصول على تحليلات Control-vs-Treatment
GET/api/applications/{code}/control_groups/{control_group_code}/cyclesسرد الدورات المغلقة للمجموعة
POST/api/applications/{code}/control_groups/{control_group_code}/membershipالتحقق من عضوية دفعة من معرفات المستخدمين
DELETE/api/applications/{code}/control_groups/{control_group_code}حذف مجموعة ضابطة

يسرد كل مجموعة ضابطة تم تكوينها لتطبيق ما، وتأتي المجموعة الأصلية غير المسماة أولاً.

GET /api/applications/{code}/control_groups

معلمات المسار

Anchor link to
المعلمةالنوعالوصف
codestringرمز التطبيق لسرد المجموعات الضابطة له.

الاستجابة

Anchor link to
الحقلالنوعالوصف
control_groupsarray of Control group objectsكل مجموعة ضابطة تم تكوينها للتطبيق.

إنشاء

Anchor link to

ينشئ مجموعة ضابطة مسماة لتطبيق ويعيدها مع رمزها الذي تم إنشاؤه. تحجز المجموعة الجديدة المستخدمين عن كل إرسال تسويقي ضمن بلدانها وعلامتها الخاصة، إلى جانب المجموعات المفعّلة الأخرى في التطبيق.

POST /api/applications/{code}/control_groups

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
codestringنعمرمز التطبيق لإنشاء المجموعة فيه.
namestringنعماسم المجموعة، يصل إلى 64 حرفًا وبدون نقطتين. يجب أن يكون فريدًا داخل التطبيق. جزء من مفتاح العضوية، لذا لا يتغير أبدًا.
percentageintegerنعمحجم المجموعة المحجوزة كنسبة مئوية، 1-20.
segmentstringلاتعبير Seglang لقياس المجموعة عليه. احذفه للقياس على القاعدة بأكملها.
countriesarray of stringsلارموز البلدان ISO-3166-1 alpha-2 بأحرف صغيرة لتحديد نطاق المجموعة المحجوزة. احذفها لكل البلدان. الرموز غير حساسة لحالة الأحرف عند الإدخال.
scopeTagstringلاعلامة نصية أو منطقية لتحديد نطاق المجموعة المحجوزة بها، مع ربطها بـ countries بالعامل AND. احذفها لعدم تحديد نطاق علامة. انظر نطاق العلامة أدناه.
scopeValuesarray of stringsانظر الملاحظةقيم scopeTag التي تُدخل المستخدم في النطاق. مطلوبة إذا تم تعيين scopeTag، ويجب أن تكون فارغة بخلاف ذلك.
displayNamestringلاالاسم الذي تعرضه Control Panel، حتى 64 حرفًا. احذفه لعرض name.
مثال على الطلب
Anchor link to
{
"code": "XXXXX-XXXXX",
"name": "Q3 holdout",
"percentage": 10
}

الاستجابة

Anchor link to

يعيد { "group": { ... } }، وهو كائن المجموعة الضابطة الجديد.

الحصول على

Anchor link to

يعيد مجموعة ضابطة واحدة برمزها، مع حجمها المحجوز، وجيلها، وعدد المستخدمين وراءها.

GET /api/applications/{code}/control_groups/{control_group_code}

معلمات المسار

Anchor link to
المعلمةالنوعالوصف
codestringرمز التطبيق الذي تنتمي إليه المجموعة.
control_group_codestringرمز المجموعة الضابطة.

الاستجابة

Anchor link to
الحقلالنوعالوصف
groupControl group objectالمجموعة الضابطة المطلوبة.
total_usersintegerجميع المستخدمين في التطبيق.
control_group_usersintegerالمستخدمون المحجوزون حاليًا.
calculation_statusstringTASK_STATUS_NOT_STARTED، TASK_STATUS_IN_PROGRESS، أو TASK_STATUS_COMPLETED.
has_databooleanما إذا كانت أرقام الحجم المخزنة مؤقتًا متاحة بعد.

تحديث النسبة المئوية

Anchor link to

يضبط النسبة المئوية المحجوزة (1-20) لمجموعة ضابطة واحدة. يحافظ تغيير الحجم على كل عضو موجود: تنمو المجموعة المحجوزة أو تتقلص حولهم بدلاً من إعادة رسمها. حلّت محلها UpdateSettings التي تطبق الحجم والنطاق ووضع مدة الصلاحية في استدعاء واحد، لكنها لا تزال مدعومة.

POST /api/applications/{code}/control_groups/{control_group_code}

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
percentageintegerنعمحجم المجموعة المحجوزة الجديد كنسبة مئوية، 1-20.

الاستجابة

Anchor link to

كائن فارغ عند النجاح: {}.

تحديث البلدان

Anchor link to

يضبط البلدان التي تقتصر عليها مجموعة ضابطة واحدة. يؤدي تغيير النطاق إلى إعادة تشغيل قياس الرفع، لأن السكان الذين تتم مقارنتهم يتغيرون. لا يتم إعادة رسم المجموعة المحجوزة نفسها. حلّت محلها UpdateSettings التي تحدد أيضًا نطاق العلامة، لكنها لا تزال مدعومة.

POST /api/applications/{code}/control_groups/{control_group_code}/countries

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
countriesarray of stringsنعمرموز البلدان ISO-3166-1 alpha-2 بأحرف صغيرة. قائمة فارغة توسع المجموعة مرة أخرى لتشمل كل البلدان. الرموز غير حساسة لحالة الأحرف عند الإدخال.
مثال على الطلب
Anchor link to
{
"countries": ["us", "ca", "gb"]
}

الاستجابة

Anchor link to

كائن فارغ عند النجاح: {}.

تحديث الإعدادات

Anchor link to

يطبق حجم المجموعة الضابطة ونطاق البلدان والعلامة ووضع مدة الصلاحية في استدعاء واحد. أي تغيير يبدل من يتم حجزه أو مدة حجزه (الحجم أو النطاق أو الوضع أو فترة التحديث أو تاريخ الانتهاء) يغلق الدورة الجارية ويبدأ دورة جديدة. إرسال القيم الحالية لا يغير شيئًا. يرفض مجموعة ضابطة تنتمي إلى مجموعة محجوزة خاصة بحملة، بالطريقة نفسها التي تتبعها UpdatePercentage.

POST /api/applications/{code}/control_groups/{control_group_code}/settings

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
percentageintegerنعمحجم المجموعة المحجوزة كنسبة مئوية، 1-20.
countriesarray of stringsلارموز البلدان ISO-3166-1 alpha-2 بأحرف صغيرة. قائمة فارغة توسع المجموعة مرة أخرى لتشمل كل البلدان.
scopeTagstringلاعلامة نصية أو منطقية لتحديد نطاق المجموعة المحجوزة بها، مع ربطها بـ countries بالعامل AND. القيمة الفارغة تزيل نطاق العلامة. انظر نطاق العلامة أدناه.
scopeValuesarray of stringsانظر الملاحظةقيم scopeTag التي تُدخل المستخدم في النطاق. مطلوبة إذا تم تعيين scopeTag، ويجب أن تكون فارغة بخلاف ذلك.
modestringلامدة صلاحية العضوية: CONTROL_GROUP_MODE_PERMANENT (الافتراضي)، أو CONTROL_GROUP_MODE_AUTO_REFRESH، أو CONTROL_GROUP_MODE_EXPERIMENT.
refreshPeriodDaysintegerانظر الملاحظةعدد الأيام بين عمليات إعادة الرسم، من 7 إلى 365. مطلوب مع CONTROL_GROUP_MODE_AUTO_REFRESH، ويجب حذفه بخلاف ذلك.
endsAtstring (RFC 3339)انظر الملاحظةموعد إيقاف التجربة، بعد 30 يومًا على الأقل من الآن. مطلوب مع CONTROL_GROUP_MODE_EXPERIMENT، ويجب حذفه بخلاف ذلك.

يتم تطبيق كل حقل كما أُرسل، مثل UpdateCountries: countries الفارغة توسع المجموعة مرة أخرى لتشمل كل البلدان، وscopeTag الفارغة تزيل نطاق العلامة.

الاستجابة

Anchor link to

يعيد { "group": { ... } }، وهو كائن المجموعة الضابطة المحدّث.

نطاق العلامة

Anchor link to

يمكن للمجموعة الضابطة أن تحجز فقط المستخدمين الذين تقع قيمة علامة نصية أو منطقية واحدة لديهم ضمن مجموعة قيم تختارها، مع ربطها بـ countries بالعامل AND إذا تم تعيينهما معًا. حدّدها عبر Create أو UpdateSettings.

  • scopeTag يسمّي العلامة؛ والقيمة الفارغة تعني عدم وجود نطاق علامة. لا يمكن أن تكون Country: يتم تحديد النطاق حسب البلد عبر countries وليس عبر علامة.
  • scopeValues يسرد قيم scopeTag الواقعة ضمن النطاق. مطلوب عنصر واحد على الأقل عند تعيين scopeTag، ولا يجوز تكرار أي قيمة. لا يجوز أن تكون قيم العلامة النصية سلاسل فارغة. يجب أن تكون كل قيمة في العلامة المنطقية "true" أو "false".
  • الجهاز الذي لا توجد له قيمة لـ scopeTag يقع خارج النطاق، مثل الجهاز الذي لا توجد له علامة Country.
  • العضوية نفسها لا تتغير: الصيغة التي تعيّن المستخدمين لا يمسها النطاق. نطاق العلامة ونطاق البلد كلاهما فحص لكل جهاز يُطبَّق فوقها، ويضيّق الأجهزة المستبعدة فعليًا من أجهزة المستخدم المحدد، لا من تختاره الصيغة.
  • تُنسخ علامة مستوى المستخدم إلى كل جهاز من أجهزة ذلك المستخدم عند تعيينها، لذا فإن فحص مستوى الجهاز أعلاه يغطي علامات مستوى المستخدم أيضًا، وليس علامات مستوى الجهاز فقط.
  • تغيير scopeTag، أو تغيير scopeValues كمجموعة (إعادة الترتيب وحدها لا تُحتسب)، يغلق الدورة الجارية بالسبب CONTROL_GROUP_CYCLE_CLOSE_REASON_RESCOPED، مثل تغيير countries. تعطيل المجموعة يحتفظ بنطاق العلامة الخاص بها، كما يحتفظ بـ countries.

إعادة تسمية

Anchor link to

يضبط الاسم الذي تعرضه Control Panel لمجموعة ضابطة واحدة. name جزء من مفتاح العضوية ولا يتغير، لذا تحتفظ المجموعة بالمستخدمين أنفسهم وبدورتها الجارية.

POST /api/applications/{code}/control_groups/{control_group_code}/display_name

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
codestringنعمرمز التطبيق الذي تنتمي إليه المجموعة.
controlGroupCodestringنعمرمز المجموعة الضابطة.
displayNamestringلاالاسم الجديد، حتى 64 حرفًا وفريد داخل التطبيق. أرسل سلسلة فارغة لعرض name مرة أخرى.

الاستجابة

Anchor link to

يعيد { "group": { ... } }، وهو كائن المجموعة الضابطة بعد إعادة تسميته.

تعطيل

Anchor link to

يقوم بإيقاف تشغيل مجموعة ضابطة واحدة، مع الاحتفاظ بها وبجيلها بحيث يؤدي إعادة تشغيلها إلى استعادة نفس المجموعة المحجوزة بدلاً من رسم واحدة جديدة.

POST /api/applications/{code}/control_groups/{control_group_code}/disable

الاستجابة

Anchor link to

كائن فارغ عند النجاح: {}.

إعادة خلط

Anchor link to

يعيد رسم المجموعة المحجوزة لمجموعة ضابطة واحدة عن طريق زيادة جيلها. هذه هي الطريقة الوحيدة للحصول على عينة مختلفة: العضوية حتمية، لذا فإن التعطيل وإعادة التمكين ينتج عنهما نفس المجموعة تمامًا.

POST /api/applications/{code}/control_groups/{control_group_code}/reshuffle

الاستجابة

Anchor link to
الحقلالنوعالوصف
generationintegerجيل المجموعة بعد إعادة الخلط.

فرض تحديث الحساب

Anchor link to

يبدأ عدًا جديدًا لحجم مجموعة ضابطة واحدة. يستمر تقديم الأرقام المخزنة مؤقتًا مسبقًا حتى ينتهي العد الجديد. استعلم عن GetCalculationStatus للتقدم.

POST /api/applications/{code}/control_groups/{control_group_code}/recalculate

الاستجابة

Anchor link to

كائن فارغ عند النجاح: {}.

الحصول على حالة الحساب

Anchor link to

يستعلم فقط عن أعداد المستخدمين المتغيرة لمجموعة ضابطة واحدة أثناء تشغيل حساب الحجم.

GET /api/applications/{code}/control_groups/{control_group_code}/calculation_status

الاستجابة

Anchor link to
الحقلالنوعالوصف
total_usersintegerجميع المستخدمين في التطبيق.
control_group_usersintegerالمستخدمون المحجوزون، محسوبون على التطبيق.
calculation_statusstringTASK_STATUS_NOT_STARTED، TASK_STATUS_IN_PROGRESS، أو TASK_STATUS_COMPLETED.
has_databooleanما إذا كانت أرقام الحجم المخزنة مؤقتًا متاحة.

الحصول على التحليلات

Anchor link to

يعيد تحليلات Control-vs-Treatment المحسوبة مسبقًا لمجموعة ضابطة واحدة.

GET /api/applications/{code}/control_groups/{control_group_code}/analytics

معلمات الاستعلام

Anchor link to
المعلمةالنوعمطلوبالوصف
windowDaysstringلاإعداد مسبق لنافذة المراجعة: WINDOW_DAYS_3، WINDOW_DAYS_7، أو WINDOW_DAYS_30.

الاستجابة

Anchor link to
الحقلالنوعالوصف
eventsarray of objectsإدخال واحد لكل حدث يتم تتبعه، كل منها يحتوي على event، treatment و control (users، conversions، conversion_rate، events_per_user)، uplift_pct، incremental_events، percent_of_treatment، z_score، p_value، confidence_pct، و significance (SIGNIFICANCE_NOT_ENOUGH_DATA، SIGNIFICANCE_NOT_SIGNIFICANT، أو SIGNIFICANCE_SIGNIFICANT).

سرد دورات المجموعات الضابطة

Anchor link to

يسرد الدورات المغلقة لمجموعة ضابطة واحدة، الأحدث أولاً. كل دورة هي العضوية التي عملت بها المجموعة بين تغييرين في الإعدادات، مع الإعدادات التي رُسمت منها. الدورة الجارية (الحالية) ليست في هذه القائمة. إعداداتها موجودة في كائن المجموعة الضابطة نفسه.

GET /api/applications/{code}/control_groups/{control_group_code}/cycles

الاستجابة

Anchor link to
الحقلالنوعالوصف
cyclesarray of Control group cycle objectsالأحدث أولاً.

كائن دورة المجموعة الضابطة

Anchor link to
الحقلالنوعالوصف
cycle_numberintegerتسلسلي داخل المجموعة؛ cycle_number الخاص بالمجموعة هو الرقم الذي يلي آخر دورة مغلقة هنا.
modestringوضع مدة الصلاحية الذي عملت به المجموعة خلال هذه الدورة: CONTROL_GROUP_MODE_PERMANENT، أو CONTROL_GROUP_MODE_AUTO_REFRESH، أو CONTROL_GROUP_MODE_EXPERIMENT.
generationintegerجيل المجموعة خلال هذه الدورة.
percentageintegerحجم المجموعة المحجوزة خلال هذه الدورة.
countriesarray of stringsنطاق البلدان خلال هذه الدورة؛ فارغ يعني كل البلدان.
started_at / ended_atstring (RFC 3339)موعد عمل هذه الدورة.
close_reasonstringسبب انتهاء الدورة: CONTROL_GROUP_CYCLE_CLOSE_REASON_ROLLOVER، أو _EXPIRED، أو _RESHUFFLED، أو _RESIZED، أو _RESCOPED، أو _MODE_CHANGED، أو _DISABLED.
scope_tagstringالعلامة التي حُدد نطاق المجموعة المحجوزة في الدورة بها، مع ربطها بـ countries بالعامل AND. فارغة عند عدم وجود نطاق علامة، ولكل دورة أُغلقت قبل وجود نطاق العلامة، حتى لو كانت للمجموعة علامة لاحقًا.
scope_valuesarray of stringsقيم scope_tag التي تُدخل المستخدم في النطاق خلال هذه الدورة؛ لا تُعيَّن إلا مع scope_tag.

التحقق من عضوية المجموعة الضابطة

Anchor link to

يبلغ لكل معرف مستخدم ما إذا كان محجوزًا بواسطة مجموعة ضابطة واحدة في الوقت الحالي. يتم حساب العضوية من المعرف وحده. لا تتم قراءة أي سجل مستخدم، لذلك يتم الرد أيضًا على معرف لم يره التطبيق مطلقًا، وتجيب مجموعة معطلة بـ false لكل معرف بدلاً من خطأ. المجموعة ذات نطاق بلد أو علامة لا تحجز المستخدم إلا إذا كان أحد أجهزته ضمن ذلك النطاق، لذا يعود معرف غير مرئي (دون أي جهاز) بالقيمة false هناك، مع أن المعرف نفسه سيعود بالقيمة true على مجموعة بلا نطاق. استخدم هذا بدلاً من تصدير المجموعة بأكملها للتحقق من مستخدمي إرسال أو استيراد معين.

POST /api/applications/{code}/control_groups/{control_group_code}/membership

جسم الطلب

Anchor link to
المعلمةالنوعمطلوبالوصف
userIdsarray of stringsنعممعرفات المستخدمين للتحقق، بحد أقصى 1000 لكل استدعاء.
مثال على الطلب
Anchor link to
{
"userIds": ["user-1", "user-2", "user-3"]
}

الاستجابة

Anchor link to
الحقلالنوعالوصف
usersarray of objectsإدخال واحد لكل معرف مطلوب، بالترتيب الذي تم تقديمه (بما في ذلك التكرارات). يحتوي كل منها على user_id (string) و in_control_group (boolean).
مثال على الاستجابة
Anchor link to
{
"users": [
{ "user_id": "user-1", "in_control_group": false },
{ "user_id": "user-2", "in_control_group": true },
{ "user_id": "user-3", "in_control_group": false }
]
}

يزيل مجموعة ضابطة بالكامل. تتوقف عن حجز المستخدمين، ولا يمكن فتح إحصاءاتها بعد ذلك. تواصل المجموعات الأخرى في التطبيق عملها.

DELETE /api/applications/{code}/control_groups/{control_group_code}

الاستجابة

Anchor link to

كائن فارغ عند النجاح: {}.

كائن المجموعة الضابطة

Anchor link to
الحقلالنوعالوصف
codestringرمز المجموعة الضابطة (تنسيق XXXXX-XXXXX)، ثابت طوال عمر المجموعة.
namestringاسم المجموعة، جزء من مفتاح العضوية. الفارغ هو المجموعة الأصلية غير المسماة للتطبيق.
display_namestringالاسم الذي تعرضه Control Panel. الفارغ يعرض name، وتُعرض المجموعة غير المسماة باسم Global.
segmentstringتعبير Seglang الذي يتم قياس المجموعة عليه؛ فارغ هو القاعدة بأكملها.
percentageintegerحجم المجموعة المحجوزة كنسبة مئوية، 1-20. صفر يعني أن المجموعة متوقفة.
enabledbooleanما إذا كانت المجموعة تحجز المستخدمين حاليًا.
generationintegerيزداد مع كل إعادة خلط؛ 0 يعني أنه لم يتم إعادة خلطه أبدًا.
last_modified_atstring (RFC 3339)وقت آخر تغيير لإعدادات المجموعة.
last_modified_bystringالبريد الإلكتروني للمستخدم الذي قام بآخر تغيير للمجموعة.
application_idintegerالمعرف الرقمي للتطبيق، الجزء الأول من مفتاح العضوية <application_id>:<generation>:<name>:<user_id> الذي يقوم CheckControlGroupMembership بتجزئته لتحديد ما إذا كان المستخدم محجوزًا.
countriesarray of stringsرموز البلدان ISO-3166-1 alpha-2 بأحرف صغيرة التي يقتصر عليها نطاق المجموعة المحجوزة. فارغ يعني كل البلدان.
scope_tagstringالعلامة التي يُحدد نطاق المجموعة المحجوزة بها، مع ربطها بـ countries بالعامل AND؛ فارغ يعني عدم وجود نطاق علامة. انظر نطاق العلامة.
scope_valuesarray of stringsقيم scope_tag التي تُدخل المستخدم في النطاق؛ تستخدم العلامة المنطقية "true" و"false".

مواضيع ذات صلة

Anchor link to