# Abilita i postback di notifica degli eventi per i brand

Le notifiche di evento tramite postback (webhook) informano i tuoi sistemi interni in tempo reale quando si verificano eventi specifici. Sebbene i dati inviati varino in base all'evento, il processo di configurazione è lo stesso per tutti.

{% stepper %}
{% step %}

### Accedi ai postback di notifica evento

1. Dalla barra di navigazione superiore, seleziona ![](/files/a0314b1a64ec39500a614699810af2308cfe8328) **\[Profilo utente] → Impostazioni**.
2. Sotto la *Tecnico* sezione, seleziona [**Notifiche evento**](https://app.impact.com/secure/advertiser/accountSettings/techintegration/view-edit-adv-pingback-settings-flow.ihtml?).
   {% endstep %}

{% step %}

### Completa i campi di configurazione globale

1. Passa il mouse sopra l'evento per cui desideri configurare un postback di notifica e seleziona ![](/files/06805c880643774310ff3dae44fb97e4b59a7553) **\[Modifica]**.
2. Usa la tabella seguente per configurare le impostazioni di consegna:

| Campo                | Descrizione                                                                                                                                                                                                                                                                                                                                                                                                     |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| URL                  | L'endpoint sul tuo server che riceverà i dati.                                                                                                                                                                                                                                                                                                                                                                  |
| Metodo HTTP          | <p><code>GET</code>: i dati vengono aggiunti all'URL come stringhe di query.</p><p></p><p><code>POST</code>: i dati vengono inviati nel corpo della richiesta, che include vari parametri opzionali che puoi impostare. <br><br>Fai riferimento a <a href="#notification-events-and-payloads">Eventi e payload delle notifiche</a> per maggiori informazioni su ciascun evento e sul contenuto del payload.</p> |
| Intestazione HTTP    | (Opzionale) Aggiungi intestazioni personalizzate per l'autenticazione (ad es. `Authorization: Bearer token`).                                                                                                                                                                                                                                                                                                   |
| Ritardo minimo       | Imposta *Ritardo minimo* in secondi per proteggere il tuo server dai picchi di traffico.                                                                                                                                                                                                                                                                                                                        |
| Richieste massime    | Imposta *Richieste massime* al secondo per proteggere il tuo server dai picchi di traffico.                                                                                                                                                                                                                                                                                                                     |
| Risposta di successo | La stringa di testo specifica o il codice di stato HTTP che il tuo server restituisce quando un postback viene gestito correttamente.                                                                                                                                                                                                                                                                           |
| Risposta di errore   | La stringa di testo o il codice di stato che indica un errore (ad es. `ERRORE` o `500`).                                                                                                                                                                                                                                                                                                                        |
| {% endstep %}        |                                                                                                                                                                                                                                                                                                                                                                                                                 |
| {% endstepper %}     |                                                                                                                                                                                                                                                                                                                                                                                                                 |

### Eventi e payload delle notifiche

Ogni notifica di evento invia un insieme univoco di punti dati configurabili (ad es. `{ActionId}`). Fai riferimento agli eventi qui sotto per scoprire quali punti dati puoi estrarre dai payload.

<details>

<summary><strong>Eventi del ciclo di vita dell'azione</strong></summary>

Gli eventi del ciclo di vita dell'azione invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando un'azione viene tracciata, modificata o annullata.

```json
// Un esempio di POST in formato JSON
{
  "CampaignId": 9876, // ID programma
  "ActionTrackerId": 12345, // ID tipo evento
  "MediaPartnerId": 555, // ID partner
  "CampaignName": "Spring Global Promotion", // Nome programma
  "ActionTrackerName": "Standard Sale Tracker", // Nome tipo evento
  "MediaPartnerName": "Top Tier Affiliates", // Nome partner
  "ActionId": "ACT-778899", // ID azione
  "Status": "MODIFIED", // Stato dell'azione
  "StatusDetail": "Reso dell'articolo - payout adeguato", // Maggiori dettagli sullo stato dell'azione
  "AdId": 44332, // ID annuncio
  "Payout": 10.50, // Payout dell'azione al partner, nella valuta del partner
  "DeltaPayout": -5.00, // Variazione dell'importo del payout
  "IntendedPayout": 15.50, // Importo payout previsto per un'azione oltre limite
  "Amount": 100.00, // Importo dell'azione, nella valuta dell'account
  "DeltaAmount": -50.00, // Importo corretto rispetto all'azione precedente
  "IntendedAmount": 150.00, // Importo di vendita previsto per un'azione oltre limite
  "Currency": "USD", // Valuta dell'azione
  "OriginalCurrency": "USD", // Valuta originale (cioè del carrello) dell'azione
  "OriginalAmount": 100.00, // Importo originale (cioè del carrello) dell'azione
  // Collezione "items": dati per i singoli articoli in questa azione
  "items": [{join(items, i, 
  "\{\"sku\":\"{i.sku}\",
  \"item_price\":{i.amt},
  \"category\":\"{i.cat}\",
  \"quantity\":{i.qty},
  \"cartamt\":{i.cartamt},
  \"rbt\":\"{i.rbt}\",
  \"name\":\"{i.name}\"\}")}],
  "EventDate": "2026-04-08T09:00:00Z", // Data della conversione
  "CreationDate": "2026-04-08T09:05:00Z", // Data di creazione nel sistema
  "LockingDate": "2026-05-08T00:00:00Z", // Data in cui l'azione verrà bloccata
  "ClearedDate": "2026-05-15T00:00:00Z", // Data programmata per la chiusura
  "ReferringDomain": "blog.partner.com", // Dominio di provenienza
  "LandingPageUrl": "https://brand.com/sale", // URL della landing page
  "RefCustomerArea": "California", // Area del cliente (derivata dall'IP)
  "RefCustomerCity": "San Francisco", // Città del cliente (derivata dall'IP)
  "RefCustomerRegion": "CA", // Regione del cliente (derivata dall'IP)
  "RefCustomerCountry": "US", // Codice paese del cliente (derivato dall'IP)
  "RefClickId": "CLK9988776655", // Identificativo univoco del clic
  "SharedId": "social_post_01", // ID condiviso del partner
  "PromoCode": "SAVE20", // Codice promozionale generale
  "CustomerStatus": "EXISTING", // Stato del cliente
  "Oid": "ORD-554433", // ID ordine
  "Note": "Reso parziale elaborato", // Nota fornita con l'azione
  "CustomerPostCode": "94105", // CAP del cliente
  "CustomerCity": "San Francisco", // Città del cliente
  "CustomerCountry": "US", // Codice paese del cliente
  "CustomerRegion": "CA", // Regione del cliente
  "CustomerId": "CUST-12345", // ID cliente
  "CustomerEmail": "a665a45920422f9d417...", // Email del cliente con hash
  "IpAddress": "192.168.1.1", // Indirizzo IP
  "CallerId": null, // Numero di telefono del chiamante
  // Campi supplementari personalizzati
  "Text1": "Valore personalizzato 1", // Testo 1
  "Date1": "2026-04-08", // Data 1
  "Money1": 10.00, // Importo 1
  "Numeric1": 1, // Numerico 1
  // Metadati dispositivo e app
  "appPackage": "com.brand.app", // Pacchetto app mobile
  "appName": "BrandStore", // Nome app mobile
  "appVersion": "4.2.1", // Versione app mobile
  "deviceOs": "iOS", // Sistema operativo del dispositivo
  "deviceOsVersion": "17.4", // Versione OS del dispositivo
  "deviceManuf": "Apple", // Produttore del dispositivo
  "deviceModel": "iPhone 15", // Modello del dispositivo
  "macAddress": "00:1B:44:11:3A:B7", // Indirizzo MAC (maiuscolo)
  "macAddressLower": "00:1b:44:11:3a:b7", // Indirizzo MAC (minuscolo)
  "macAddressAlpha": "001B44113AB7", // Indirizzo MAC (senza due punti)
  "macAddressSha1": "47a32...", // MAC SHA1
  "iosIfa": "EA7583CD-A667-48BC-B806-42ECB2B48606", // ID pubblicitario iOS
  "iosAdTracking": "1", // Impostazione di tracciamento pubblicitario iOS
  "androidId": null, // ID Android
  "deviceId": "D-556677", // ID dispositivo
  "deviceIp": "192.168.1.1" // IP del dispositivo
}
```

</details>

<details>

<summary><strong>Eventi di richiesta di verifica azione</strong></summary>

Gli eventi di richiesta di verifica azione invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando le richieste di verifica azione vengono create o risolte.

```json
// Un esempio di POST in formato JSON
{
  "Id": 554433, // Identificatore univoco della richiesta di verifica azione nel sistema
  "MediaPartnerId": 555, // ID partner
  "MediaPartnerName": "Top Tier Affiliates", // Nome partner
  "CampaignId": 9876, // ID programma
  "CampaignName": "Spring Global Promotion", // Nome programma
  "OrderId": "ORD-12345", // ID ordine dell'azione segnalata
  "TransactionDate": "2026-04-01T14:30:00Z", // Data della transazione dell'evento che ha attivato la richiesta di verifica azione
  "TransactionAmount": 250.00, // Importo della transazione dell'evento che ha attivato la richiesta di verifica azione
  "InquiryType": "MISSING_ACTION", // Tipo di richiesta di verifica azione
  "ExpectedPayout": 25.00, // Importo del payout previsto dal partner
  "ResolutionDeadlineDate": "2026-05-01T00:00:00Z", // Data entro la quale la richiesta deve essere accettata o rifiutata
  "TrackingLink": "https://proweb.com/click?cid=1&pid=555", // Link di tracciamento fornito dal partner
  "ActionId": "ACT-999000", // ID azione (se associata a un'azione esistente)
  "AutoApprovalDate": "2026-05-05T00:00:00Z", // Data in cui il sistema eseguirà le regole di approvazione automatica
  "ResolutionStatus": "PENDING", // Stato finale di risoluzione della richiesta di verifica azione
  "RejectReason": null, // Motivo per cui la richiesta di verifica azione è stata rifiutata
  "FinalPayout": 0.00, // Payout finale associato alla richiesta di verifica azione
  "ResolutionDate": null, // Data in cui la richiesta è stata decisa
  "CreationDate": "2026-04-08T10:05:00Z", // Data in cui la richiesta viene creata nel sistema
  "InquiryNotes": "Il cliente afferma di aver cliccato sul link ma non è stato mostrato alcun credito.", // Note della richiesta inviate dal partner
  "ResolutionNotes": null, // Note inviate quando la richiesta è stata decisa
  "Comments": "[{\"user\": \"support_agent\", \"text\": \"Verificando ora i log dei clic.\"}, {\"user\": \"partner\", \"text\": \"Il cliente ha fornito la ricevuta.\"}]" // Commenti aggiunti alla richiesta (in formato JSON)
}
```

</details>

<details>

<summary><strong>Eventi di chiusura dell'azione</strong></summary>

Gli eventi di chiusura dell'azione invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando le azioni vengono chiuse.

```json
// Un esempio di POST in formato JSON
{
  "ActionTrackerId": 12345, // ID tipo evento
  "ActionTrackerName": "Standard Sale Tracker", // Nome tipo evento
  "CampaignId": 9876, // ID programma
  "CampaignName": "Spring Global Promotion", // Nome programma
  "MediaPartnerId": 555, // ID partner
  "MediaPartnerName": "Top Tier Affiliates", // Nome partner
  "OrderIds": "ORD-9921,ORD-9922", // ID ordine delle azioni segnalate (separati da virgola)
  "ActionIds": "ACT-101,ACT-102", // ID azione (separati da virgola)
  "ClearedDate": "2026-04-15T12:00:00Z", // Data (ISO 8601) in cui l'azione è programmata per la chiusura
  "LedgerDate": "2026-04-08T09:54:43Z" // Data (ISO 8601) in cui l'azione è stata chiusa
}
```

</details>

<details>

<summary><strong>Eventi di richiesta valore di tracciamento</strong></summary>

Gli eventi di richiesta valore di tracciamento invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando vengono create le richieste di tracciamento.

```json
// Un esempio di POST in formato JSON
{
  "CampaignId": 9876, // ID programma
  "ActionTrackerId": 12345, // ID tipo evento
  "MediaPartnerId": 555, // ID partner
  "ActionId": "ACT-778899", // ID azione
  "Amount": 150.00, // Importo dell'azione nella valuta dell'account
  "Currency": "USD", // Valuta dell'azione
  "Oid": "ORD-554433", // ID ordine
  // Collezione "items": suddivisione dei singoli prodotti nell'azione
  "items": [{join(items, i, "\{\"sku\":\"{i.sku}\",\"item_price\":{i.amt},\"category\":\"{i.cat}\",\"quantity\":{i.qty},\"cartamt\":{i.cartamt},\"rbt\":\"{i.rbt}\",\"name\":\"{i.name}\"\}")}],
  "EventDate": "2026-04-08T09:00:00Z", // Data della conversione
  "IpAddress": "192.168.1.1", // Indirizzo IP del dispositivo
  "RefClickId": "CLK9988776655" // Identificativo univoco del clic
}
```

</details>

<details>

<summary><strong>Eventi di lavoro completati</strong></summary>

Gli eventi di lavoro completati invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri aggiuntivi) quando un lavoro è stato completato per un [Esportazione report](https://integrations.impact.com/impact-brand/reference/export-reports) o [Fai clic su Esporta](https://integrations.impact.com/impact-brand/reference/retrieve-export-click).

```json
// Un esempio di POST in formato JSON
{
  "JobId": 10293847, // ID univoco del lavoro
  "JobType": "REPORT_EXPORT", // Il tipo di lavoro
  "AccountId": 7744, // ID account
  "StartDate": "2026-04-08T10:00:05Z", // L'ora in cui il lavoro è iniziato
  "EndDate": "2026-04-08T10:11:02Z", // L'ora in cui il lavoro è stato completato
  "RecordsProcessed": 5240, // Il numero di record elaborati o generati
  "ApiJobDetailUri": "https://api.impact.com/jobs/10293847", // URI API per ottenere maggiori dettagli sul lavoro
  "ApiResultUri": "https://api.impact.com/jobs/10293847/result", // URI API per ottenere il risultato dell'output del lavoro
  "ResultDownloadUrlExp5": "https://download.impact.com/file?token=a1b2...&exp=5min", // URL per scaricare l'output (scadenza a 5 minuti)
  "ResultDownloadUrlExp15": "https://download.impact.com/file?token=a1b2...&exp=15min", // URL per scaricare l'output (scadenza a 15 minuti)
  "ResultDownloadUrlExp30": "https://download.impact.com/file?token=a1b2...&exp=30min", // URL per scaricare l'output (scadenza a 30 minuti)
  "ResultDownloadUrlExp60": "https://download.impact.com/file?token=a1b2...&exp=60min" // URL per scaricare l'output (scadenza a 60 minuti)
}
```

</details>

<details>

<summary><strong>Eventi dell'applicazione del publisher</strong></summary>

{% hint style="info" %}
**Nota:** Questa funzionalità è in beta. Contatta il tuo CSM o il nostro [team di supporto](https://app.impact.com/support/portal.ihtml?createTicket=true&) se desideri testare questa funzionalità.
{% endhint %}

Gli eventi dell'applicazione del publisher invieranno una richiesta HTTP a un URL specificato quando un partner invia una candidatura.

Nei casi in cui un payload venga consegnato con punti dati vuoti, il sistema è progettato per attivare aggiornamenti man mano che le informazioni diventano disponibili. Le consegne successive andate a buon fine popoleranno quei campi precedentemente vuoti, garantendo che i tuoi record rimangano sincronizzati con le informazioni elaborate più recenti.

{% hint style="warning" %}
**Importante:** Il postback non verrà attivato se hai configurato workflow [di candidatura](/brand/it/che-cosa-vorresti-imparare/platform-features/review-partner-applications/automate-partner-application-processing/create-workflows-to-automatically-process-partner-applications.md).
{% endhint %}

```json
// Un esempio di POST in formato JSON
{
  "ProgramId": "9876", // ID programma
  "TemplateTermsId": "4455", // ID termini del modello
  "ContractId": "112233", // ID contratto
  "ApplicationDate": "2026-04-09T08:30:00Z", // Data della candidatura
  "PublisherId": "555", // ID partner
  "Name": "Elite Content Creators", // Nome partner
  "BusinessModel": "SOCIAL_INFLUENCER", // Modello di business principale del partner
  "Description": "Una rete premium di influencer lifestyle e travel.", // Descrizione del profilo
  "Address": "123 Marketing Way", // Indirizzo
  "City": "Los Angeles", // Città
  "State": "CA", // Stato
  "Country": "US", // Paese
  "Language": "en-US", // Lingua
  "PublisherSize": "M", // XS, S, M, L, XL
  "PastRelationship": false, // Booleano che indica un contratto precedente
  "MarketplaceApproved": true, // Booleano che indica lo stato del marketplace
  "ReceivedPayout": true, // Booleano che indica se hanno ricevuto un payout
}
```

</details>

### Meccanismo di ritentativo del postback

Se un postback fallisce أثناء il tentativo di invio all'URL di destinazione, la consegna viene ritentata automaticamente secondo una pianificazione prestabilita fino a 15 volte. I ritentativi aiutano a gestire problemi di rete temporanei o la non disponibilità del server.

#### Condizioni in cui i ritentativi non verranno eseguiti

Un postback non verrà ritentato nei seguenti casi:

* L'URL di destinazione è malformato o non valido.
* L'URL di destinazione o il relativo host non si risolvono, ad esempio a causa di un errore di lookup DNS.

#### Programma dei ritentativi

I tentativi di ritentativo seguono il programma riportato di seguito. I ritentativi 1, 2 e 3 vengono saltati se il codice di risposta HTTP rientra nell'intervallo di `400` per `500`.

<details>

<summary>Riferimento del programma di ritentativi</summary>

<table><thead><tr><th width="321.0546875">Tentativo di ritentativo</th><th>Ritardo prima del ritentativo</th></tr></thead><tbody><tr><td>Ritento 1</td><td>+15 secondi</td></tr><tr><td>Ritento 2</td><td>+15 secondi</td></tr><tr><td>Ritento 3</td><td>+15 secondi</td></tr><tr><td>Ritento 4</td><td>+3 minuti</td></tr><tr><td>Ritento 5</td><td>+3 minuti</td></tr><tr><td>Ritento 6</td><td>+15 minuti</td></tr><tr><td>Ritento 7</td><td>+15 minuti</td></tr><tr><td>Ritento 8</td><td>+15 minuti</td></tr><tr><td>Ritento 9</td><td>+2 ore</td></tr><tr><td>Ritento 10</td><td>+2 ore</td></tr><tr><td>Ritento 11</td><td>+2 ore</td></tr><tr><td>Ritento 12</td><td>+6 ore</td></tr><tr><td>Ritento 13</td><td>+6 ore</td></tr><tr><td>Ritento 14</td><td>+6 ore</td></tr><tr><td>Ritento 15</td><td>+6 ore</td></tr></tbody></table>

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.impact.com/brand/it/che-cosa-vorresti-imparare/account-administration/account-settings/notifications/enable-event-notification-postbacks-for-brands.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
