Supporto per attività API esterne

Descrizione

Ambiente
Standard di contenuto

Problema/Sintomi
L’endpoint API REST di terze parti accetta il seguente formato JSON per trasmettere i dati.

Payload effettivo:

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

Ma ACS modifica il formato JSON, che non è accettato dall’endpoint REST API di terze parti.

Payload modificato:

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

Risoluzione

Esistono due fattori che hanno influenzato la decisione di utilizzare il formato:

  1. La dati viene aggiunta solo se è presente un tabella temporanea generato dall’attività precedente e le righe da quella tabella temporanea sono serializzati in un JSON array. Da qui la necessità di un JSON proprietà denominata dati e i dati serializzati inviati come array utilizzando .
  2. L’attività consente di inviare parametri personalizzati anche all’API, che vengono aggiunti al payload utilizzando un params proprietà. Tieni presente che questi sono fissi (configurati una volta nell’attività durante il tempo di creazione).

Questo formato normalizzato ci ha permesso di avere un formato fisso senza alcun supporto dell’interfaccia utente per personalizzare il formato in base alle specifiche API di terze parti. L'intenzione era quella di utilizzare un livello di traduzione, come Adobe IO Runtime, AWS Lambda, ecc., per eseguire la traduzione in tempo reale di richieste/risposte in base alle esigenze.

In questa pagina