Richtlinien für Aktionen, die mit ausgehenden Wählregeln verwendet werden

Besondere Überlegungen gelten bei der Definition des Erfolgsschemas einer Datenaktion, die Daten an eine ausgehende Wählregel zurückgibt.

Eigenschaften der Nestausgabe

Beim Erstellen des Ausgabekontakts (Erfolgsschema) ist es zwingend erforderlich, Eigenschaften bei Bedarf zu verschachteln. Wenn ein Ausgabefeld von /execute ein komplexes Objekt ist, sollte die entsprechende Eigenschaft im Schema ein verschachteltes Schema sein und keine Zeichenkette, die eine "flattened" Ausgabe voraussetzt Outbound verwendet bereits?flatten=true um die Ausgabe zu glätten.

Beispiel für eine nicht verschachtelte Eigenschaft

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "data.my data field": {
      "type": "string",
    }
  }
}

Das obige Beispiel gibt ein „data.my-Datenfeld“ im Erfolgsschema einer Datenaktion an. Die resultierende Aktion wird nicht funktionieren, wenn sie von einer Regel für ausgehende Wähldaten verwendet wird. Outbound wird das Feld in der Antwort /actions/{actionId}/execute nicht finden können Es werden Anrufe übersprungen mit dem ErgebnisININ-OUTBOUND-RULE-ERROR-SKIPPED .

Um dieses Problem zu vermeiden, machen Sie "Mein Datenfeld" zu einer verschachtelten Eigenschaft des Feldes "Daten":

Ordnungsgemäß verschachteltes Beispiel

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "my data field": {
          "type": "string"
        }
      }
    }
  }
}

Im Allgemeinen sollte Ihr Ausgabeschema die gleiche Struktur haben wie die Eigenschaften, die Sie von der /execute-Anforderung zurückerhalten möchten.

Betrachten Sie dieses einfache Objekt und wie das Ausgabeschema es zurückgibt:

Ein einfaches Objekt

{
  "foo": {
    "bat": "bar"
  }
}

Ausgabeschema eines einfachen Objekts

{
 "$schema": "http://json-schema.org/draft-04/schema#",
 "type": "object",
 "properties": {
   "foo": {
     "type": "string"
   }
 }
}

Um dies mit Outbound kompatibel zu machen, ändern Sie das Ausgabeschema von Simple Object, um die Eigenschaft zu verschachteln:

Ordnungsgemäß verschachteltes einfaches Objekt

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "foo": {
      "type": "object",
      "properties": {
        "bat": {
          "type": "string"
        }
      }
    }
  }
}

Dieses Schema wird zurückgegeben:

{
  "foo": {
    "bat": "bar"
  }
}

Erforderliche Felder

Wenn es Felder gibt, die für Ihre Datenaktion erforderlich sind, markieren Sie diese Felder im Erfolgsschema als erforderlich.

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "required": [
    "contact_id",
    "phone_number"
  ],
  "properties": {
   ...
    },
Hinweis: Sie können maximal zwei Bedingungen für Datenaktionsregeln für eine einzelne Kampagne haben.