# Configura i postback del ciclo di vita delle azioni

Esistono due tipi principali di callback del ciclo di vita dell’azione. **Livello globale** crea callback per l’intero account e **livello evento** crea callback per tipi di evento specifici. Seleziona quello che meglio si adatta alle tue esigenze per saperne di più sul processo di configurazione.

{% hint style="warning" %}
**Attenzione:** Per le callback a livello globale, dovresti ricevere una callback ogni volta che si verifica un evento "non standard", come una modifica o un annullamento. Tieni presente che le callback a livello evento non verranno attivate per eventi del ciclo di vita dell’azione non standard.
{% endhint %}

#### Configura una callback del ciclo di vita dell’azione

<details>

<summary>Configura una callback del ciclo di vita dell’azione a livello globale</summary>

Questa sezione illustrerà la creazione di callback per l’intero account in un’unica volta. I partner che dispongono di un solo sistema in grado di ricevere e utilizzare queste callback o che desiderano notifiche per tutti gli eventi non standard dovrebbero configurare callback del ciclo di vita dell’azione a livello globale.

{% hint style="info" %}
**Nota:** Se desideri essere più selettivo riguardo ai tipi di evento per i quali riceverai callback, consulta la sezione seguente per configurare *callback del ciclo di vita dell’azione a livello evento*.
{% endhint %}

1. Dalla barra di navigazione in alto, seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-1183576591b45997efe4dc81a25024640591d02a%2F245137dc972a7a7f6165b59538fcdbac8fd5bd8fee4ba9f20c1a2982c5b58b57.svg?alt=media) **\[Profilo utente] → Impostazioni**.
2. In *Tecnico*, seleziona **Notifiche evento**.
3. Accanto a *Eventi del ciclo di vita dell’azione*, seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-6027673a720a6522269e1861ad0554c4a85baf29%2F9dcf248c757a094c6af27798e61091b8425a0afa1637ae0e5ba3448c5f85b1a1.svg?alt=media) **\[Modifica]**.
4. Inserisci l’URL del tuo server. Questo è l’URL a cui impact.com invierà le callback.
5. Seleziona il metodo HTTP preferito.
   * Visualizza alcuni dei [parametri del corpo disponibili](https://docs.google.com/spreadsheets/d/1420vz0__zjit30O_jU959L600LigsUN5iFf2oYwU-RU/edit?usp=sharing).
   * Se selezioni **POST**, inserirai quindi il corpo della richiesta e selezionerai un **Formato del corpo**. Di seguito è riportato un esempio di come potresti voler mappare ciascun punto dati per un formato JSON. Le chiavi in ciascuna coppia chiave-valore dovrebbero provenire dalla configurazione del tuo sistema, e i valori saranno il corrispondente punto dati scelto che impact.com fornisce e dovranno essere inseriti tra parentesi `{ }`.

     <div data-with-frame="true"><figure><img src="https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-16c42a102e36c3c3d44b22c66b31b8cf4643aae1%2F6c821ff8c8e1cfaea1b1d7c908754dd4db816de21d5db59b4ddbd07bf14b1bb4.jpg?alt=media" alt=""><figcaption></figcaption></figure></div>
   * Non vedi il valore che ti serve? Contatta il tuo Account Manager (o [contatta l’assistenza](https://app.impact.com/support/portal.ihtml)).
6. Seleziona **Eventi del ciclo di vita dell’azione**. Queste impostazioni sono facoltative.
   * Inserisci un **Intestazione HTTP**. Se sono necessarie più coppie, separale con un punto e virgola.
   * Inserisci un **Ritardo minimo** tra il momento in cui si verifica un evento non standard e quello in cui la callback viene generata e inviata al tuo sistema.
   * Inserisci un limite di richieste per le **Richieste massime** che impact.com può effettuare al tuo sistema al secondo.
   * Inserisci quale vuoi che sia la **Risposta di successo** a una callback.
   * Inserisci quale vuoi che sia la **Risposta di errore** a una callback.
7. Seleziona **Salva**.

Ora che hai configurato le callback a livello globale, il tuo sistema dovrebbe iniziare a riceverle ogni volta che si verificano eventi non standard, indipendentemente dal brand che esegue le azioni non standard. Per scoprire come testare la nuova configurazione delle callback, consulta la sezione *Testa una callback del ciclo di vita dell’azione* qui sotto.

**Esempio di valori dinamici**

Se hai configurato variabili dinamiche per i tuoi link di tracciamento, puoi configurare un URL di callback al tuo server per notificarti quando si verificano azioni e recuperare il/i valore/i popolato/i dinamicamente associato/i all’azione.

Questo esempio mostra come passare un valore `SharedId` (un valore che vuoi condividere con i brand) a un parametro in una callback (`MyParam`). Alcuni brand potrebbero richiederti di configurarlo.

<div data-with-frame="true"><figure><img src="https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-b7c6cf339a60877d5823e6b9a080e8e153aa6386%2F8ec14f7b9f75bc6065c6310d30d43ae0f8256c7e075757d03ce64a5fe16476ae.png?alt=media" alt=""><figcaption></figcaption></figure></div>

Un URL di callback sarebbe simile a questo:

`https://postback.example.com/postback?secure=ed7e46f&MyParam={SharedId}`

L’URL della callback compilerà il `MyParam` parametro con il valore recuperato da `SharedId`.

</details>

<details>

<summary>Configura callback del ciclo di vita dell’azione a livello evento</summary>

Questa sezione illustrerà la creazione di callback per tipi di evento specifici che tracciano quando generi azioni. Se desideri essere più selettivo riguardo ai tipi di evento per i quali ricevi callback, dovresti configurare callback del ciclo di vita dell’azione a livello evento.

{% hint style="info" %}
**Nota:** Se hai configurato callback del ciclo di vita dell’azione a livello globale, non è necessario configurare quelle a livello evento.
{% endhint %}

1. Dalla barra di navigazione in alto, seleziona **Scopri → I miei brand**.
2. Seleziona la scheda del brand che possiede la callback che vuoi testare.
3. Sotto il nome del brand, seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-8ec3e877b1397045c61d394485e72ac4d93120ee%2Fc6ddb46c637059f06e86c790a911217a9428f5c47b5efef046f90555e85b03cd.svg?alt=media) **\[Altro]** → **Integrazione del tracciamento**.
4. Vicino all’angolo in alto a destra della pagina, seleziona **Aggiungi callback**.
5. Seleziona il tipo di evento (precedentemente *tracker di azioni*) per il quale vuoi configurare le callback del ciclo di vita dell’azione.
6. Inserisci l’URL del tuo server. Questo è l’URL a cui impact.com invierà le callback.
7. Seleziona il metodo HTTP preferito.
   * Se selezioni **POST**, inserirai quindi il corpo della richiesta e selezionerai un **Formato del corpo**. Di seguito è riportato un esempio di come potresti voler mappare ciascun punto dati per un formato JSON. Le chiavi in ciascuna coppia chiave-valore dovrebbero provenire dalla configurazione del tuo sistema, e i valori saranno il corrispondente punto dati scelto che impact.com fornisce e dovranno essere inseriti tra parentesi { }.

     <div data-with-frame="true"><figure><img src="https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-9cec675aa05964dd4b9db329acc2cae7a9d85de8%2Fd34ce186243db11585c9d497d92cc26b633031bbab0d67ae06fc109dae4ceb0d.jpg?alt=media" alt=""><figcaption></figcaption></figure></div>
   * Visualizza alcuni dei [parametri del corpo disponibili](https://docs.google.com/spreadsheets/d/1420vz0__zjit30O_jU959L600LigsUN5iFf2oYwU-RU/edit?usp=sharing).
   * Non vedi il valore che ti serve? Contatta il tuo Account Manager (o [contatta l’assistenza](https://app.impact.com/support/portal.ihtml)).
8. Seleziona **Mostra impostazioni avanzate**. Queste impostazioni sono facoltative.
   * Inserisci un **Ritardo minimo** tra il momento in cui si verifica un evento non standard e quello in cui la callback viene generata e inviata al tuo sistema.
   * Inserisci un limite di richieste per le **Richieste massime** che impact.com può effettuare al tuo sistema al secondo.
   * Inserisci quale vuoi che sia la **Risposta di successo** a una callback.
   * Inserisci quale vuoi che sia la **Risposta di errore** a una callback.
9. Seleziona **Salva**.

Ora che hai configurato le callback a livello evento, il tuo sistema dovrebbe iniziare a ricevere callback per il tipo di evento che hai selezionato nel *Passaggio 5*. Per scoprire come testare la nuova configurazione delle callback, consulta la *Testa una callback del ciclo di vita dell’azione* qui sotto.

**Esempio di valori dinamici**

Se hai configurato variabili dinamiche per i tuoi link di tracciamento, puoi configurare un URL di callback al tuo server per notificarti quando si verificano azioni e recuperare il/i valore/i popolato/i dinamicamente associato/i all’azione.

Questo esempio mostra come passare un valore `SharedId` (un valore che vuoi condividere con i brand) a un parametro in una callback (`MyParam`). Alcuni brand potrebbero richiederti di configurarlo.

<div data-with-frame="true"><figure><img src="https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-b7c6cf339a60877d5823e6b9a080e8e153aa6386%2F8ec14f7b9f75bc6065c6310d30d43ae0f8256c7e075757d03ce64a5fe16476ae.png?alt=media" alt=""><figcaption></figcaption></figure></div>

Un URL di callback sarebbe simile a questo:

`https://postback.example.com/postback?secure=ed7e46f&MyParam={SharedId}`

L’URL della callback compilerà il `MyParam` parametro con il valore recuperato da `SharedId`.

</details>

#### Testa una callback del ciclo di vita dell’azione

Una volta configurata una callback del ciclo di vita dell’azione, indipendentemente dal livello a cui si applica, dovresti testarla. Puoi eseguire una callback di test in impact.com (disponibile solo per le callback a livello evento) oppure effettuare una conversione.

Se una callback non riesce quando impact.com pubblica sul tuo URL di destinazione, impact.com ritenta automaticamente la consegna. impact.com ritenta una callback non riuscita fino a 15 volte in totale. impact.com salta i primi 3 tentativi per le risposte HTTP da `400` a `500`. Per il programma completo dei tentativi e i dettagli sulla risoluzione dei problemi, consulta [Testare e risolvere i problemi di un URL di callback](https://app.gitbook.com/s/b2rE79d9UhOKZQLgzSqx/what-would-you-like-to-learn-about/platform-features/action-management/event-notifications-and-postbacks/test-and-troubleshoot-a-postback-url).

<details>

<summary>Esegui una callback di test in impact.com</summary>

Se hai configurato una callback a livello evento, puoi testarla all’interno del tuo account impact.com.

1. Dalla barra di navigazione in alto, seleziona **Scopri → I miei brand**.
2. Seleziona la scheda del brand che possiede la callback che vuoi testare.
3. Sotto il nome del brand, seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-8ec3e877b1397045c61d394485e72ac4d93120ee%2Fc6ddb46c637059f06e86c790a911217a9428f5c47b5efef046f90555e85b03cd.svg?alt=media) **Altro** → **Integrazione del tracciamento**.
4. Da *Callback* sezione, seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-df93ac0f80fc5cece7983980a5ce3fbcf19aabce%2F3ef9d737089bc07dbb7e4fd41a97edfbaec261e4f55ab3a1666f3daf957f69c3.svg?alt=media) **\[Freccia giù] Azioni**, quindi seleziona **Avvia test**.
5. Conferma che l’URL della callback sia corretto, quindi seleziona **Avvia test**.

</details>

<details>

<summary>Crea una conversione di test</summary>

Questo test non verrà eseguito nell’app web di impact.com. Invece, eseguirai un test end-to-end che segue il tipico percorso di un utente. Assicurati di avvisare il brand partner che eseguirai il test.

1. Dalla barra di navigazione in alto, seleziona **Contenuti → Asset**.
2. Seleziona un annuncio.
3. Sotto il nome dell’annuncio, seleziona **Ottieni link di tracciamento**.
4. Seleziona ![](https://1708986086-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-d0b6669ae76a7bef06a8d6940d7ad5c16bb8d018%2F7cb018d4face8d7cceb880eb5086c812e764fbcfe6f2a0377f88bc7576973070.svg?alt=media) **\[Attiva]** **Parametri di tracciamento**.
5. Inserisci **Sub ID** o un **Shared ID** come richiesto. Ogni campo richiede almeno un valore.
   * Salta questo passaggio se hai già valori in questi campi.
6. Facoltativamente, seleziona un **Proprietà** dall’elenco a discesa.
7. Seleziona **Salva**.
8. Seleziona **Copia link di tracciamento**.
9. **Incolla** il link in una nuova finestra del browser.
10. Completa l’azione.
11. Dopo circa 15 minuti, controlla nel tuo sistema la callback generata da questa azione di test.
    * Di solito 15 minuti è il tempo necessario per l’elaborazione dell’azione.
    * Potrai anche vedere questa nuova azione in sospeso nella schermata [Azioni in sospeso](https://app.impact.com/secure/mediapartner/actionworkflows/mp-pending-actions-flow.ihtml) Se vedi l’azione nella schermata *Azioni in sospeso* ma non hai ancora ricevuto una callback, ricontrolla la configurazione della callback.
12. Chiedi al tuo brand di annullare l’azione.
13. Controlla nel tuo sistema la callback generata da questo annullamento.
    * Se vedi l’azione annullata nella schermata [Azioni annullate](https://app.impact.com/secure/mediapartner/MP_Performance_Report/action-workflows/mp-reversed-actions-flow.ihtml) , ma non hai ricevuto una callback, ricontrolla la configurazione della callback.

</details>

<details>

<summary>Risolvi gli errori</summary>

| Errore                             | Descrizione                                                                                                                                                                                                                                                                                                                            |
| ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Parametro obbligatorio mancante    | Il tuo server probabilmente si aspetta un valore invece di una variabile. Modifica l’URL della callback per passare un valore di test (ad es. "12345678" invece di `{SubId1}`) e verifica se accetta il valore hard-coded.                                                                                                             |
| Variabili sensibili alle maiuscole | Le variabili dinamiche distinguono tra maiuscole e minuscole e devono essere esatte, il che significa che `{SubId1}` non è la stessa cosa di `{subid1}`. Verifica attentamente che le tue variabili riflettano la corretta sensibilità alle maiuscole.                                                                                 |
| Accesso negato                     | La maggior parte dei server di callback ha un token di sicurezza o un valore che deve essere passato insieme alle variabili dinamiche. Collabora con il team tecnico del tuo sito web (o fai riferimento alla documentazione del fornitore del sito) per scoprire il token o il valore di sicurezza necessario per accedere al server. |

</details>

{% hint style="success" icon="circle-info" %}
**Nota:** Se non riesci a trovare alcun problema nella configurazione della callback ma continui a non riceverle, [contatta l’assistenza](https://app.impact.com/support/portal.ihtml). impact.com può verificare se le callback vengono generate, qual è il codice di risposta di ciascuna e il corpo di ciascuna callback. Queste informazioni potrebbero aiutarti a eseguire il debug della configurazione.
{% endhint %}
