Unterstützung externer API-Aktivitäten

In diesem Artikel wird das Problem erläutert, dass Adobe Campaign Standard das JSON-Format ändert, das der REST-API-Endpunkt eines Drittanbieters nicht akzeptieren kann.

Beschreibung description

Umgebung

Adobe Campaign Standard (ACS)

Problem/Symptome

Der REST-API-Endpunkt eines Drittanbieters akzeptiert das folgende JSON-Format, um die Daten zu übergeben.

Tatsächliche Payload:

{"destination":"https://www.google.com/work/insights/123","domain":"google.com"}

ACS ändert jedoch das JSON-Format, das vom REST-API-Endpunkt eines Drittanbieters nicht akzeptiert wird.

Payload geändert:

{“data”:[ {"destination":"https://www.google.com/work/insights/123","domain":"google.com"}] }

Auflösung resolution

Es gibt zwei Faktoren, die die Entscheidung zur Verwendung des Formats beeinflusst haben:

  1. Der data-Teil wird nur hinzugefügt, wenn eine eingehende temporäre Tabelle vorhanden ist, die von der vorherigen Aktivität generiert wurde, und die Zeilen aus dieser temporären Tabelle in ein JSON-Array serialisiert werden. Daher ist eine ""-Eigenschaft dem Namen data und die serialisierten Daten werden als Array mit [ ] gesendet.
  2. Die Aktivität ermöglicht auch das Senden benutzerdefinierter Parameter an die API, die der Payload mithilfe einer „params -Eigenschaft hinzugefügt. Beachten Sie, dass diese fest sind (nur einmal während der Bearbeitung in der Aktivität konfiguriert).

Mit diesem normalisierten Format konnten wir ein festes Format ohne Benutzeroberflächenunterstützung verwenden, um anzupassen, wie dieses gemäß den API-Spezifikationen von Drittanbietern formatiert werden kann. Es wurde beabsichtigt, eine Übersetzungsebene wie Adobe IO Runtime, AWS Lambda usw. zu verwenden, um bei Bedarf Sofortübersetzungen von Anfragen/Antworten durchzuführen.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f