Kontrollgruppen-API
Eine Kontrollgruppe ist ein zurückgehaltener Anteil der Benutzer einer Anwendung, der niemals Marketing-Nachrichten erhält, sodass die Wirkung von Nachrichten im Vergleich dazu gemessen werden kann. Diese API verwaltet Kontrollgruppen und gibt Auskunft über die Mitgliedschaft einzelner Benutzer. Verwenden Sie sie, um die Aktionen unter Einstellungen > Kontrollgruppen im Control Panel von Ihren eigenen Systemen aus zu spiegeln oder um zu überprüfen, ob bestimmte Benutzer-IDs vor einem Versand oder Import zurückgehalten werden.
Basis-URL
Anchor link tohttps://rpc-api.svc-nue.pushwoosh.comAlle Endpunkte werden über HTTPS bereitgestellt. Anfragen und Antworten verwenden application/json, sofern nicht anders angegeben.
Authentifizierung
Anchor link toJede Anfrage muss einen Authorization-Header mit Ihrem Server-API-Token enthalten:
Authorization: Api IHR_API_TOKENKonventionen
Anchor link to- Feldnamen: Anfragekörper und Abfrage-/Pfadparameter akzeptieren
lowerCamelCase(zum BeispielcontrolGroupCode,userIds), und der Server verarbeitet beide Schreibweisen. Antworten werden immer mit den Proto-Feldnamen insnake_casemarshalled (application_id,in_control_groupusw.). Die Antwortbeispiele und die Referenz zum Kontrollgruppenobjekt unten verwenden diese Schreibweise. code: Jede Antwort einer Kontrollgruppe enthält ihren eigenen Code, der beiCreategeneriert wird. Übergeben Sie diesen Code alscontrolGroupCodeanGet,UpdatePercentage,UpdateCountries,Rename,Disable,Reshuffle,ForceUpdateCalculation,GetCalculationStatus,GetAnalyticsundCheckControlGroupMembership.- Mehrere Gruppen: Eine Anwendung kann mehrere Kontrollgruppen haben. Jede aktivierte Gruppe hält Benutzer innerhalb ihrer eigenen Länder und ihres Tags von jedem Marketing-Versand zurück, unabhängig von den anderen Gruppen, und Gruppen können sich überschneiden. Ein Versand wählt keine Gruppe aus. Die Gruppe mit einem leeren
nameist die ursprüngliche Gruppe der Anwendung und funktioniert genauso.
Fehlerantworten
Anchor link to| HTTP-Status | Bedeutung |
|---|---|
400 Bad Request | Ungültiges Argument, wie z. B. percentage außerhalb von 1–20, userIds leer oder mit über 1.000 Einträgen, ein nicht erkannter Ländercode, scopeValues ohne scopeTag, ein scopeTag, der einen im Konto nicht vorhandenen Tag benennt, oder ein scopeValues-Eintrag, den UpdateSettings ablehnt (siehe unten). Wird auch (als FailedPrecondition auf der Leitung) von UpdatePercentage, UpdateCountries, UpdateSettings, Disable, Reshuffle und Delete bei einer Kontrollgruppe zurückgegeben, die zu einer eigenen Holdout-Gruppe einer Kampagne gehört, gemäß der Warnung unten. Reshuffle allein lehnt auf diese Weise auch eine deaktivierte (percentage 0) Gruppe ab. |
401 Unauthorized | Fehlender oder ungültiger Authorization-Header. |
403 Forbidden | Die Anwendung oder Kontrollgruppe gehört nicht zum Konto des Aufrufers. |
404 Not Found | Die Kontrollgruppe oder Anwendung wurde nicht gefunden. |
409 Conflict | Create hat einen Namen verwendet, der in der Anwendung bereits existiert. |
500 Internal Server Error | Unerwarteter serverseitiger Fehler. |
Endpunkte
Anchor link to| Methode | Pfad | Beschreibung |
|---|---|---|
GET | /api/applications/{code}/control_groups | Kontrollgruppen einer Anwendung auflisten |
POST | /api/applications/{code}/control_groups | Eine Kontrollgruppe erstellen |
GET | /api/applications/{code}/control_groups/{control_group_code} | Eine einzelne Kontrollgruppe abrufen |
POST | /api/applications/{code}/control_groups/{control_group_code} | Größe einer Kontrollgruppe ändern |
POST | /api/applications/{code}/control_groups/{control_group_code}/countries | Eine Kontrollgruppe auf eine Reihe von Ländern beschränken |
POST | /api/applications/{code}/control_groups/{control_group_code}/settings | Größe, Länder- und Tag-Geltungsbereich sowie Lebensdauer-Modus in einem Aufruf anwenden |
POST | /api/applications/{code}/control_groups/{control_group_code}/display_name | Eine Kontrollgruppe umbenennen |
POST | /api/applications/{code}/control_groups/{control_group_code}/disable | Eine Kontrollgruppe deaktivieren |
POST | /api/applications/{code}/control_groups/{control_group_code}/reshuffle | Eine Kontrollgruppe neu mischen |
POST | /api/applications/{code}/control_groups/{control_group_code}/recalculate | Neuberechnung der Größe einer Kontrollgruppe erzwingen |
GET | /api/applications/{code}/control_groups/{control_group_code}/calculation_status | Eine laufende Größenberechnung abfragen |
GET | /api/applications/{code}/control_groups/{control_group_code}/analytics | Control-vs-Treatment-Analysen abrufen |
GET | /api/applications/{code}/control_groups/{control_group_code}/cycles | Die abgeschlossenen Zyklen der Gruppe auflisten |
POST | /api/applications/{code}/control_groups/{control_group_code}/membership | Mitgliedschaft für einen Stapel von Benutzer-IDs prüfen |
DELETE | /api/applications/{code}/control_groups/{control_group_code} | Eine Kontrollgruppe löschen |
List
Anchor link toListet jede für eine Anwendung konfigurierte Kontrollgruppe auf, die unbenannte ursprüngliche zuerst.
GET /api/applications/{code}/control_groups
Pfadparameter
Anchor link to| Parameter | Typ | Beschreibung |
|---|---|---|
code | string | Der Anwendungscode, für den Kontrollgruppen aufgelistet werden sollen. |
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
control_groups | Array von Kontrollgruppenobjekten | Jede für die Anwendung konfigurierte Kontrollgruppe. |
Create
Anchor link toErstellt eine benannte Kontrollgruppe für eine Anwendung und gibt sie mit ihrem generierten Code zurück. Die neue Gruppe hält Benutzer innerhalb ihrer eigenen Länder und ihres Tags von jedem Marketing-Versand zurück, neben den anderen aktivierten Gruppen der Anwendung.
POST /api/applications/{code}/control_groups
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
code | string | Ja | Der Anwendungscode, in dem die Gruppe erstellt werden soll. |
name | string | Ja | Gruppenname, bis zu 64 Zeichen und ohne Doppelpunkt. Muss innerhalb der Anwendung eindeutig sein. Teil des Mitgliedschaftsschlüssels, ändert sich daher nie. |
percentage | integer | Ja | Holdout-Größe als Prozentsatz, 1–20. |
segment | string | Nein | Seglang-Ausdruck, über den die Gruppe gemessen wird. Weglassen, um über die gesamte Basis zu messen. |
countries | Array von Strings | Nein | Kleingeschriebene ISO-3166-1 alpha-2 Ländercodes, auf die die Holdout-Gruppe beschränkt werden soll. Weglassen für alle Länder. Codes sind bei der Eingabe nicht case-sensitiv. |
scopeTag | string | Nein | Ein String- oder Boolean-Tag, auf das das Holdout beschränkt wird, mit countries per UND verknüpft. Weglassen für keinen Tag-Geltungsbereich. Siehe Tag-Geltungsbereich unten. |
scopeValues | Array von Strings | Siehe Hinweis | Werte von scopeTag, die einen Benutzer in den Geltungsbereich aufnehmen. Erforderlich, wenn scopeTag gesetzt ist, andernfalls muss das Array leer sein. |
displayName | string | Nein | Name, den das Control Panel anzeigt, bis zu 64 Zeichen. Weglassen, um name anzuzeigen. |
Anfragebeispiel
Anchor link to{ "code": "XXXXX-XXXXX", "name": "Q3 holdout", "percentage": 10}Antwort
Anchor link toGibt { "group": { ... } } zurück, das neue Kontrollgruppenobjekt.
Gibt eine Kontrollgruppe anhand ihres Codes zurück, mit ihrer Holdout-Größe, Generation und den dahinterstehenden Benutzerzahlen.
GET /api/applications/{code}/control_groups/{control_group_code}
Pfadparameter
Anchor link to| Parameter | Typ | Beschreibung |
|---|---|---|
code | string | Der Anwendungscode, zu dem die Gruppe gehört. |
control_group_code | string | Der Code der Kontrollgruppe. |
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
group | Kontrollgruppenobjekt | Die angeforderte Kontrollgruppe. |
total_users | integer | Alle Benutzer in der Anwendung. |
control_group_users | integer | Aktuell zurückgehaltene Benutzer. |
calculation_status | string | TASK_STATUS_NOT_STARTED, TASK_STATUS_IN_PROGRESS oder TASK_STATUS_COMPLETED. |
has_data | boolean | Ob zwischengespeicherte Größenzahlen bereits verfügbar sind. |
UpdatePercentage
Anchor link toLegt den Holdout-Prozentsatz (1–20) einer Kontrollgruppe fest. Bei einer Größenänderung bleiben alle bestehenden Mitglieder erhalten: Die Holdout-Gruppe wächst oder schrumpft um sie herum, anstatt neu gezogen zu werden. Abgelöst durch UpdateSettings, das Größe, Geltungsbereich und Lebensdauer-Modus in einem Aufruf anwendet, wird aber weiterhin unterstützt.
POST /api/applications/{code}/control_groups/{control_group_code}
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
percentage | integer | Ja | Neue Holdout-Größe als Prozentsatz, 1–20. |
Antwort
Anchor link toEin leeres Objekt bei Erfolg: {}.
UpdateCountries
Anchor link toLegt die Länder fest, auf die eine Kontrollgruppe beschränkt ist. Eine Änderung des Geltungsbereichs startet die Uplift-Messung neu, da sich die verglichene Population ändert. Die Holdout-Gruppe selbst wird nicht neu gezogen. Abgelöst durch UpdateSettings, das zusätzlich einen Tag-Geltungsbereich festlegt, wird aber weiterhin unterstützt.
POST /api/applications/{code}/control_groups/{control_group_code}/countries
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
countries | Array von Strings | Ja | Kleingeschriebene ISO-3166-1 alpha-2 Ländercodes. Eine leere Liste erweitert die Gruppe wieder auf alle Länder. Codes sind bei der Eingabe nicht case-sensitiv. |
Anfragebeispiel
Anchor link to{ "countries": ["us", "ca", "gb"]}Antwort
Anchor link toEin leeres Objekt bei Erfolg: {}.
UpdateSettings
Anchor link toWendet Größe, Länder- und Tag-Geltungsbereich sowie Lebensdauer-Modus einer Kontrollgruppe in einem Aufruf an. Eine Änderung, die bestimmt, wer zurückgehalten wird oder wie lange (Größe, Geltungsbereich, Modus, Aktualisierungszeitraum oder Enddatum), schließt den laufenden Zyklus und startet einen neuen. Das Senden der aktuellen Werte ändert nichts. Verweigert eine Kontrollgruppe, die zu einer eigenen Holdout-Gruppe einer Kampagne gehört, auf dieselbe Weise wie UpdatePercentage.
POST /api/applications/{code}/control_groups/{control_group_code}/settings
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
percentage | integer | Ja | Holdout-Größe als Prozentsatz, 1–20. |
countries | Array von Strings | Nein | Kleingeschriebene ISO-3166-1 alpha-2 Ländercodes. Eine leere Liste erweitert die Gruppe wieder auf alle Länder. |
scopeTag | string | Nein | Ein String- oder Boolean-Tag, auf das das Holdout beschränkt wird, mit countries per UND verknüpft. Leer entfernt den Tag-Geltungsbereich. Siehe Tag-Geltungsbereich unten. |
scopeValues | Array von Strings | Siehe Hinweis | Werte von scopeTag, die einen Benutzer in den Geltungsbereich aufnehmen. Erforderlich, wenn scopeTag gesetzt ist, andernfalls muss das Array leer sein. |
mode | string | Nein | Lebensdauer der Mitgliedschaft: CONTROL_GROUP_MODE_PERMANENT (Standard), CONTROL_GROUP_MODE_AUTO_REFRESH oder CONTROL_GROUP_MODE_EXPERIMENT. |
refreshPeriodDays | integer | Siehe Hinweis | Tage zwischen den Neuziehungen, 7–365. Erforderlich bei CONTROL_GROUP_MODE_AUTO_REFRESH, andernfalls wegzulassen. |
endsAt | string (RFC 3339) | Siehe Hinweis | Zeitpunkt, zu dem ein Experiment endet, mindestens 30 Tage im Voraus. Erforderlich bei CONTROL_GROUP_MODE_EXPERIMENT, andernfalls wegzulassen. |
Jedes Feld wird so angewendet, wie es gesendet wurde, genau wie bei UpdateCountries: Ein leeres countries erweitert die Gruppe wieder auf alle Länder, und ein leeres scopeTag entfernt den Tag-Geltungsbereich.
Antwort
Anchor link toGibt { "group": { ... } } zurück, das aktualisierte Kontrollgruppenobjekt.
Tag-Geltungsbereich
Anchor link toEine Kontrollgruppe kann nur Benutzer zurückhalten, deren Wert eines String- oder Boolean-Tags in einer von Ihnen gewählten Menge liegt, mit countries per UND verknüpft, wenn beides gesetzt ist. Legen Sie ihn mit Create oder UpdateSettings fest.
scopeTagbenennt den Tag; leer bedeutet keinen Tag-Geltungsbereich. Es darf nichtCountrysein: Der Länder-Geltungsbereich verwendetcountries, keinen Tag.scopeValueslistet auf, welche Werte vonscopeTagim Geltungsbereich liegen. Mindestens einer ist erforderlich, wennscopeTaggesetzt ist, und keiner darf doppelt vorkommen. Die Werte eines String-Tags dürfen keine leeren Strings sein. Die Werte eines Boolean-Tags müssen jeweils"true"oder"false"sein.- Ein Gerät ohne Wert für
scopeTagliegt außerhalb des Geltungsbereichs, genau wie ein Gerät ohneCountry-Tag. - Die Mitgliedschaft selbst ändert sich nicht: Die Formel, die Benutzer zuweist, bleibt vom Geltungsbereich unberührt. Tag- und Länder-Geltungsbereich sind beide eine zusätzliche Prüfung pro Gerät, die einschränkt, welche Geräte eines ausgewählten Benutzers tatsächlich ausgeschlossen werden, nicht, wen die Formel auswählt.
- Ein Tag auf Benutzerebene wird beim Setzen auf jedes Gerät dieses Benutzers kopiert, sodass die obige Prüfung auf Geräteebene auch Tags auf Benutzerebene abdeckt, nicht nur solche auf Geräteebene.
- Eine Änderung von
scopeTagoder vonscopeValuesals Menge (eine bloße Umsortierung zählt nicht) schließt den laufenden Zyklus mitCONTROL_GROUP_CYCLE_CLOSE_REASON_RESCOPED, genau wie eine Änderung voncountries. Das Deaktivieren einer Gruppe behält ihren Tag-Geltungsbereich bei, so wie es auchcountriesbereits beibehält.
Rename
Anchor link toLegt den Namen fest, den das Control Panel für eine Kontrollgruppe anzeigt. name ist Teil des Mitgliedschaftsschlüssels und ändert sich nicht, sodass die Gruppe dieselben Benutzer und ihren laufenden Zyklus behält.
POST /api/applications/{code}/control_groups/{control_group_code}/display_name
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
code | string | Ja | Der Anwendungscode, zu dem die Gruppe gehört. |
controlGroupCode | string | Ja | Der Code der Kontrollgruppe. |
displayName | string | Nein | Neuer Name, bis zu 64 Zeichen und innerhalb der Anwendung eindeutig. Senden Sie eine leere Zeichenfolge, um wieder name anzuzeigen. |
Antwort
Anchor link toGibt { "group": { ... } } zurück, das umbenannte Kontrollgruppenobjekt.
Disable
Anchor link toSchaltet eine Kontrollgruppe aus, behält sie und ihre Generation jedoch bei, sodass beim Wiedereinschalten dieselbe Holdout-Gruppe wiederhergestellt wird, anstatt eine neue zu ziehen.
POST /api/applications/{code}/control_groups/{control_group_code}/disable
Antwort
Anchor link toEin leeres Objekt bei Erfolg: {}.
Reshuffle
Anchor link toZieht die Holdout-Gruppe einer Kontrollgruppe neu, indem ihre Generation inkrementiert wird. Dies ist die einzige Möglichkeit, eine andere Stichprobe zu erhalten: Die Mitgliedschaft ist deterministisch, sodass das Deaktivieren und erneute Aktivieren exakt dieselbe Gruppe reproduziert.
POST /api/applications/{code}/control_groups/{control_group_code}/reshuffle
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
generation | integer | Die Generation der Gruppe nach dem Neumischen. |
ForceUpdateCalculation
Anchor link toStartet eine neue Zählung der Größe einer Kontrollgruppe. Die zuvor zwischengespeicherten Zahlen werden weiterhin bereitgestellt, bis die neue Zählung abgeschlossen ist. Fragen Sie GetCalculationStatus ab, um den Fortschritt zu verfolgen.
POST /api/applications/{code}/control_groups/{control_group_code}/recalculate
Antwort
Anchor link toEin leeres Objekt bei Erfolg: {}.
GetCalculationStatus
Anchor link toFragt nur die sich ändernden Benutzerzahlen einer Kontrollgruppe ab, während eine Größenberechnung läuft.
GET /api/applications/{code}/control_groups/{control_group_code}/calculation_status
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
total_users | integer | Alle Benutzer in der Anwendung. |
control_group_users | integer | Zurückgehaltene Benutzer, gezählt über die Anwendung. |
calculation_status | string | TASK_STATUS_NOT_STARTED, TASK_STATUS_IN_PROGRESS oder TASK_STATUS_COMPLETED. |
has_data | boolean | Ob zwischengespeicherte Größenzahlen verfügbar sind. |
GetAnalytics
Anchor link toGibt die vorberechneten Control-vs-Treatment-Analysen für eine Kontrollgruppe zurück.
GET /api/applications/{code}/control_groups/{control_group_code}/analytics
Abfrageparameter
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
windowDays | string | Nein | Voreinstellung für das Rückblickfenster: WINDOW_DAYS_3, WINDOW_DAYS_7 oder WINDOW_DAYS_30. |
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
events | Array von Objekten | Ein Eintrag pro verfolgtem Ereignis, jeweils mit event, treatment und control (users, conversions, conversion_rate, events_per_user), uplift_pct, incremental_events, percent_of_treatment, z_score, p_value, confidence_pct und significance (SIGNIFICANCE_NOT_ENOUGH_DATA, SIGNIFICANCE_NOT_SIGNIFICANT oder SIGNIFICANCE_SIGNIFICANT). |
ListControlGroupCycles
Anchor link toListet die abgeschlossenen Zyklen einer Kontrollgruppe auf, die neuesten zuerst. Jeder Zyklus ist die Mitgliedschaft, mit der die Gruppe zwischen zwei Einstellungsänderungen lief, zusammen mit den Einstellungen, aus denen sie gezogen wurde. Der laufende (aktuelle) Zyklus steht nicht in dieser Liste. Seine Einstellungen stehen im Kontrollgruppenobjekt selbst.
GET /api/applications/{code}/control_groups/{control_group_code}/cycles
Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
cycles | Array von Zyklusobjekten der Kontrollgruppe | Die neuesten zuerst. |
Zyklusobjekt der Kontrollgruppe
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
cycle_number | integer | Fortlaufend innerhalb der Gruppe; die cycle_number der Gruppe selbst ist die auf den letzten hier abgeschlossenen folgende. |
mode | string | Lebensdauer-Modus, in dem die Gruppe während dieses Zyklus lief: CONTROL_GROUP_MODE_PERMANENT, CONTROL_GROUP_MODE_AUTO_REFRESH oder CONTROL_GROUP_MODE_EXPERIMENT. |
generation | integer | Die Generation der Gruppe während dieses Zyklus. |
percentage | integer | Holdout-Größe während dieses Zyklus. |
countries | Array von Strings | Länder-Geltungsbereich während dieses Zyklus; leer bedeutet alle Länder. |
started_at / ended_at | string (RFC 3339) | Wann dieser Zyklus lief. |
close_reason | string | Warum der Zyklus endete: CONTROL_GROUP_CYCLE_CLOSE_REASON_ROLLOVER, _EXPIRED, _RESHUFFLED, _RESIZED, _RESCOPED, _MODE_CHANGED oder _DISABLED. |
scope_tag | string | Tag, auf den das Holdout des Zyklus beschränkt war, mit countries per UND verknüpft. Leer bei keinem Tag-Geltungsbereich und bei jedem Zyklus, der vor der Einführung des Tag-Geltungsbereichs geschlossen wurde, auch wenn die Gruppe später einen hatte. |
scope_values | Array von Strings | Werte von scope_tag, die einen Benutzer während dieses Zyklus in den Geltungsbereich aufnehmen; nur zusammen mit scope_tag gesetzt. |
CheckControlGroupMembership
Anchor link toMeldet für jede Benutzer-ID, ob sie derzeit von einer Kontrollgruppe zurückgehalten wird. Die Mitgliedschaft wird allein aus der ID berechnet. Es wird kein Benutzerdatensatz gelesen, sodass auch eine ID beantwortet wird, die die Anwendung noch nie gesehen hat, und eine deaktivierte Gruppe antwortet für jede ID mit false anstatt mit einem Fehler. Eine Gruppe mit Länder- oder Tag-Geltungsbereich hält einen Benutzer nur zurück, wenn eines seiner Geräte im Geltungsbereich liegt; daher liefert eine unbekannte ID (ohne jedes Gerät) dort false, obwohl dieselbe ID bei einer Gruppe ohne Geltungsbereich true liefern würde. Verwenden Sie dies anstelle des Exports der gesamten Gruppe, um die Benutzer eines bestimmten Versands oder Imports zu überprüfen.
POST /api/applications/{code}/control_groups/{control_group_code}/membership
Anfragekörper
Anchor link to| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
userIds | Array von Strings | Ja | Zu prüfende Benutzer-IDs, maximal 1.000 pro Aufruf. |
Anfragebeispiel
Anchor link to{ "userIds": ["user-1", "user-2", "user-3"]}Antwort
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
users | Array von Objekten | Ein Eintrag pro angeforderter ID, in der Reihenfolge, in der sie angegeben wurden (einschließlich Duplikate). Jeder hat user_id (string) und in_control_group (boolean). |
Antwortbeispiel
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
Anchor link toEntfernt eine Kontrollgruppe vollständig. Sie hält keine Benutzer mehr zurück, und ihre Statistiken lassen sich nicht mehr öffnen. Die anderen Gruppen der Anwendung funktionieren weiter.
DELETE /api/applications/{code}/control_groups/{control_group_code}
Antwort
Anchor link toEin leeres Objekt bei Erfolg: {}.
Kontrollgruppenobjekt
Anchor link to| Feld | Typ | Beschreibung |
|---|---|---|
code | string | Code der Kontrollgruppe (Format XXXXX-XXXXX), stabil für die Lebensdauer der Gruppe. |
name | string | Gruppenname, Teil des Mitgliedschaftsschlüssels. Leer ist die ursprüngliche, unbenannte Gruppe der Anwendung. |
display_name | string | Name, den das Control Panel anzeigt. Leer zeigt name an, die unbenannte Gruppe als Global. |
segment | string | Seglang-Ausdruck, über den die Gruppe gemessen wird; leer ist die gesamte Basis. |
percentage | integer | Holdout-Größe als Prozentsatz, 1–20. Null bedeutet, die Gruppe ist ausgeschaltet. |
enabled | boolean | Ob die Gruppe derzeit Benutzer zurückhält. |
generation | integer | Wird bei jedem Neumischen inkrementiert; 0 bedeutet nie neu gemischt. |
last_modified_at | string (RFC 3339) | Wann die Einstellungen der Gruppe zuletzt geändert wurden. |
last_modified_by | string | E-Mail des Benutzers, der die Gruppe zuletzt geändert hat. |
application_id | integer | Numerische ID der Anwendung, der erste Teil des Mitgliedschaftsschlüssels <application_id>:<generation>:<name>:<user_id>, den CheckControlGroupMembership hasht, um zu entscheiden, ob ein Benutzer zurückgehalten wird. |
countries | Array von Strings | Kleingeschriebene ISO-3166-1 alpha-2 Ländercodes, auf die die Holdout-Gruppe beschränkt ist. Leer bedeutet alle Länder. |
scope_tag | string | Tag, auf den das Holdout beschränkt ist, mit countries per UND verknüpft; leer bedeutet keinen Tag-Geltungsbereich. Siehe Tag-Geltungsbereich. |
scope_values | Array von Strings | Werte von scope_tag, die einen Benutzer in den Geltungsbereich aufnehmen; ein Boolean-Tag verwendet "true" und "false". |