> For the complete documentation index, see [llms.txt](https://help.impact.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.impact.com/brand/it/what-would-you-like-to-learn-about/account-administration/account-settings/notifications/enable-event-notification-postbacks-for-brands.md).

# Abilita i postback di notifica eventi per i brand

I postback di notifica degli eventi (webhook) notificano 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 degli eventi

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

{% step %}

### Compila i campi di configurazione globale

1. Passa il mouse sull'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><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 di notifica e payload</a> per ulteriori informazioni su ciascun evento e sul contenuto del payload.</p> |
| Intestazione HTTP           | (Facoltativo) 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.                                                                                                                                                                                                                                                                                                             |
| Numero massimo di richieste | Imposta *Numero massimo di richieste* 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., `ERROR` o `500`).                                                                                                                                                                                                                                                                                                             |
| {% endstep %}               |                                                                                                                                                                                                                                                                                                                                                                                                      |
| {% endstepper %}            |                                                                                                                                                                                                                                                                                                                                                                                                      |

### Eventi di notifica e payload

Ogni notifica di evento invia un insieme unico 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
// Esempio di POST in formato JSON
{
  "CampaignId": 9876, // ID del programma
  "ActionTrackerId": 12345, // ID del tipo di evento
  "MediaPartnerId": 555, // ID del partner
  "CampaignName": "Spring Global Promotion", // Nome del programma
  "ActionTrackerName": "Standard Sale Tracker", // Nome del tipo di evento
  "MediaPartnerName": "Top Tier Affiliates", // Nome del partner
  "ActionId": "ACT-778899", // ID dell'azione
  "Status": "MODIFIED", // Stato dell'azione
  "StatusDetail": "Item return - payout adjusted", // Ulteriori dettagli sullo stato dell'azione
  "AdId": 44332, // ID dell'annuncio
  "Payout": 10.50, // Pagamento dell'azione al partner, nella valuta del partner
  "DeltaPayout": -5.00, // La variazione dell'importo del pagamento
  "IntendedPayout": 15.50, // L'importo di pagamento previsto per un'azione oltre il limite
  "Amount": 100.00, // Importo dell'azione, nella valuta dell'account
  "DeltaAmount": -50.00, // Importo corretto rispetto all'azione precedente
  "IntendedAmount": 150.00, // L'importo di vendita previsto per un'azione oltre il limite
  "Currency": "USD", // Valuta per l'azione
  "OriginalCurrency": "USD", // Valuta originale (cioè del carrello) per l'azione
  "OriginalAmount": 100.00, // Importo originale (cioè del carrello) per l'azione
  // Raccolta "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 creata nel sistema
  "LockingDate": "2026-05-08T00:00:00Z", // Data in cui l'azione verrà bloccata
  "ClearedDate": "2026-05-15T00:00:00Z", // Data prevista per la liquidazione
  "ReferringDomain": "blog.partner.com", // Dominio di provenienza
  "LandingPageUrl": "https://brand.com/sale", // URL della pagina di destinazione
  "RefCustomerArea": "California", // Area 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", // Identificatore 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": "Partial return processed", // 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 sottoposta ad hash
  "IpAddress": "192.168.1.1", // Indirizzo IP
  "CallerId": null, // Numero di telefono del chiamante
  // Campi supplementari personalizzati
  "Text1": "Custom Val 1", // Testo 1
  "Date1": "2026-04-08", // Data 1
  "Money1": 10.00, // Denaro 1
  "Numeric1": 1, // Numerico 1
  // Metadati del dispositivo e dell'app
  "appPackage": "com.brand.app", // Pacchetto dell'app mobile
  "appName": "BrandStore", // Nome dell'app mobile
  "appVersion": "4.2.1", // Versione dell'app mobile
  "deviceOs": "iOS", // Sistema operativo del dispositivo
  "deviceOsVersion": "17.4", // Versione del sistema operativo 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...", // SHA1 MAC
  "iosIfa": "EA7583CD-A667-48BC-B806-42ECB2B48606", // ID pubblicitario iOS
  "iosAdTracking": "1", // Impostazione di tracciamento annunci 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 dell'azione</strong></summary>

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

```json
// Esempio di POST in formato JSON
{
  "Id": 554433, // Identificatore univoco della richiesta di verifica dell'azione nel sistema
  "MediaPartnerId": 555, // ID del partner
  "MediaPartnerName": "Top Tier Affiliates", // Nome del partner
  "CampaignId": 9876, // ID del programma
  "CampaignName": "Spring Global Promotion", // Nome del 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 dell'azione
  "TransactionAmount": 250.00, // Importo della transazione dell'evento che ha attivato la richiesta di verifica dell'azione
  "InquiryType": "MISSING_ACTION", // Tipo di richiesta di verifica dell'azione
  "ExpectedPayout": 25.00, // Importo del pagamento previsto dal partner
  "ResolutionDeadlineDate": "2026-05-01T00:00:00Z", // La data entro cui 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 dell'azione (se associato a un'azione esistente)
  "AutoApprovalDate": "2026-05-05T00:00:00Z", // La data in cui il sistema eseguirà le regole di approvazione automatica
  "ResolutionStatus": "PENDING", // Lo stato finale di risoluzione per la richiesta di verifica dell'azione
  "RejectReason": null, // Motivo per cui la richiesta di verifica dell'azione è stata rifiutata
  "FinalPayout": 0.00, // Il pagamento finale associato alla richiesta di verifica dell'azione
  "ResolutionDate": null, // La data in cui la richiesta è stata decisa
  "CreationDate": "2026-04-08T10:05:00Z", // Data in cui la richiesta viene creata nel sistema
  "InquiryNotes": "Customer claims they clicked the link but no credit was shown.", // Note della richiesta inviate dal partner
  "ResolutionNotes": null, // Note inviate quando la richiesta è stata decisa
  "Comments": "[{\"user\": \"support_agent\", \"text\": \"Verifying click logs now.\"}, {\"user\": \"partner\", \"text\": \"Customer provided receipt.\"}]" // Commenti aggiunti alla richiesta (in formato JSON)
}
```

</details>

<details>

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

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

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

</details>

<details>

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

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

```json
// Esempio di POST in formato JSON
{
  "CampaignId": 9876, // ID del programma
  "ActionTrackerId": 12345, // ID del tipo di evento
  "MediaPartnerId": 555, // ID del partner
  "ActionId": "ACT-778899", // ID dell'azione
  "Amount": 150.00, // Importo dell'azione nella valuta dell'account
  "Currency": "USD", // Valuta per l'azione
  "Oid": "ORD-554433", // ID ordine
  // Raccolta "items": ripartizione 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" // Identificatore univoco del clic
}
```

</details>

<details>

<summary><strong>Eventi di completamento del job</strong></summary>

Gli Eventi di completamento del job invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri aggiuntivi) quando un job è stato completato per un [Esportazione report](https://integrations.impact.com/brand-api-reference/reference/report-export/report-export) o [Esportazione clic](https://integrations.impact.com/brand-api-reference/reference/clicks/clickexport).

```json
// Esempio di POST in formato JSON
{
  "JobId": 10293847, // ID univoco del job
  "JobType": "REPORT_EXPORT", // Il tipo di job
  "AccountId": 7744, // ID account
  "StartDate": "2026-04-08T10:00:05Z", // L'ora in cui il job è iniziato
  "EndDate": "2026-04-08T10:11:02Z", // L'ora in cui il job è 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 job
  "ApiResultUri": "https://api.impact.com/jobs/10293847/result", // URI API per ottenere il risultato dell'output del job
  "ResultDownloadUrlExp5": "https://download.impact.com/file?token=a1b2...&exp=5min", // URL per scaricare l'output (scadenza di 5 minuti)
  "ResultDownloadUrlExp15": "https://download.impact.com/file?token=a1b2...&exp=15min", // URL per scaricare l'output (scadenza di 15 minuti)
  "ResultDownloadUrlExp30": "https://download.impact.com/file?token=a1b2...&exp=30min", // URL per scaricare l'output (scadenza di 30 minuti)
  "ResultDownloadUrlExp60": "https://download.impact.com/file?token=a1b2...&exp=60min" // URL per scaricare l'output (scadenza di 60 minuti)
}
```

</details>

<details>

<summary><strong>Eventi di candidatura del publisher</strong></summary>

{% hint style="success" %}
**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 di candidatura del publisher invieranno una richiesta HTTP a un URL specificato quando un partner invia una candidatura e ogni volta che la candidatura viene approvata, rifiutata o ritirata.

Se un `PENDING` payload viene consegnato con punti dati vuoti, il sistema è progettato per attivare gli aggiornamenti man mano che le informazioni diventano disponibili. Le consegne successive andate a buon fine compileranno quei campi precedentemente vuoti, garantendo che i tuoi record rimangano sincronizzati con le informazioni elaborate più recenti.

{% hint style="warning" %}
**Importante:** Se hai [workflow di candidatura](/brand/it/what-would-you-like-to-learn-about/platform-features/review-partner-applications/automate-partner-application-processing.md) configurati, vengono eseguiti prima che il webhook venga attivato. Il webhook viene attivato con il relativo *Stato*: `APPROVED` o `REJECTED` se un workflow ha elaborato la candidatura, `PENDING` se non è stato applicato alcun workflow, oppure `RETRACTED` se il partner ha ritirato la candidatura.
{% endhint %}

I contenuti del payload variano in base a *Stato*. L'esempio seguente mostra un `PENDING` evento, con commenti che indicano quali campi compaiono per gli altri stati.

```json
// Esempio di POST in formato JSON
{
  "Status": "PENDING", // Stato della candidatura: PENDING, APPROVED, REJECTED, RETRACTED
  "ProgramId": "9876", // ID del programma
  "TemplateTermsId": "4455", // ID dei termini del modello
  "ContractId": "112233", // ID del contratto
  "ApplicationDate": "2026-04-09T08:30:00Z", // Data della candidatura
  "PublisherSignerName": "Sarah Chen", // Nome dell'utente publisher che ha elaborato
  "PublisherId": "555", // ID del partner
  "Name": "Elite Content Creators", // Nome del partner
  "BusinessModel": "SOCIAL_INFLUENCER", // Modello di business principale del partner
  "Address": "123 Marketing Way", // Indirizzo
  "City": "Los Angeles", // Città
  "State": "CA", // Stato
  "Country": "US", // Paese

  // Solo APPROVED, REJECTED, RETRACTED
  "DecisionDate": null, // Data della decisione

  // Solo APPROVED
  "ContractStartDate": null, // Data di inizio del contratto

  // Solo REJECTED
  "DeclineReason": null, // Motivo del rifiuto

  // Solo APPROVED, REJECTED
  "AdvertiserSignerName": null, // Nome dell'utente advertiser che ha elaborato

  // Solo PENDING: campi del profilo del partner
  "Description": "Una rete premium di influencer di lifestyle e viaggi.", // Descrizione del profilo del partner
  "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 pagamento

  // Solo PENDING: proprietà media associate al partner
  "properties": [{join(properties, i, "{\"platform\":\"{i.platform}\",\"verified\":\"{i.verified}\",\"url\":\"{i.url}\",\"category\":\"{i.category}\",\"reach\":\"{i.reach}\",\"engagementRate\":\"{i.engagementRate}\",\"audienceCountryPct\":\"{i.audienceCountryPct}\",\"audienceGenderPct\":\"{i.audienceGenderPct}\",\"audienceAgeRangePct\":\"{i.audienceAgeRangePct}\"}")}],

  // Solo PENDING: campi demografici del creator
  "CreatorIncome": "", // Reddito familiare
  "CreatorGender": "", // Genere
  "CreatorEthnicity": "", // Etnia
  "CreatorEducation": "", // Livello di istruzione
  "CreatorRelationshipStatus": "", // Stato della relazione
  "CreatorParentalStatus": "", // Stato genitoriale
  "CreatorPronouns": "", // Pronomi
  "CreatorDOB": "", // Data di nascita

  // Solo PENDING: ID dei gruppi
  "GroupIds": "1001,1002,1003" // ID dei gruppi separati da virgole
}
```

</details>

### Meccanismo di riprova del postback

Se un postback fallisce durante il tentativo di pubblicazione sull'URL di destinazione, la consegna riprova automaticamente in base a un programma prestabilito fino a 15 volte. I tentativi di riprova aiutano a gestire problemi di rete temporanei o l'indisponibilità del server.

#### Condizioni in cui non verranno effettuati tentativi di riprova

Un postback non verrà riprovato nei seguenti casi:

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

#### Programma di riprova

I tentativi di riprova seguono il programma seguente. I tentativi 1, 2 e 3 vengono saltati se il codice di risposta HTTP è nell'intervallo di `400` a `500`.

<details>

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

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

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://help.impact.com/brand/it/what-would-you-like-to-learn-about/account-administration/account-settings/notifications/enable-event-notification-postbacks-for-brands.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
