Abilita i postback delle notifiche evento per i brand
I postback di notifica degli eventi (webhook) avvisano 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.
Accedi ai postback di notifica degli eventi
Dalla barra di navigazione in alto, seleziona
[Profilo utente] → Impostazioni.
Sotto la Tecnico sezione, seleziona Notifiche degli eventi.
Completa i campi di configurazione globali
Passa con il mouse sull'evento per cui desideri configurare un postback di notifica e seleziona
[Modifica].
Usa la tabella seguente per configurare le impostazioni di consegna:
URL
L'endpoint sul tuo server che riceverà i dati.
Metodo HTTP
GET: I dati vengono aggiunti all'URL come stringhe di query.
POST: I dati vengono inviati nel corpo della richiesta, che include vari parametri opzionali che puoi impostare.
Fai riferimento a Eventi di notifica e payload per ulteriori informazioni su ciascun evento e sul contenuto del payload.
Intestazione HTTP
(Opzionale) Aggiungi intestazioni personalizzate per l'autenticazione (ad es., Authorization: token Bearer).
Ritardo minimo
Imposta Ritardo minimo in secondi per proteggere il tuo server da picchi di traffico.
Richieste massime
Imposta Richieste massime al secondo per proteggere il tuo server da picchi di traffico.
Risposta di successo
La specifica stringa di testo 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 oppure 500).
Eventi di notifica e payload
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.
Eventi del ciclo di vita dell'azione
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.
// Un esempio di POST in formato JSON
{
"CampaignId": 9876, // ID del programma
"ActionTrackerId": 12345, // ID tipo evento
"MediaPartnerId": 555, // ID partner
"CampaignName": "Spring Global Promotion", // Nome del 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 aggiornato", // 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, // L'importo del payout previsto per un'azione oltre il limite
"Amount": 100.00, // Importo dell'azione, nella valuta del conto
"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 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 pianificata per la liquidazione
"ReferringDomain": "blog.partner.com", // Dominio di provenienza
"LandingPageUrl": "https://brand.com/sale", // URL della landing page
"RefCustomerArea": "California", // Area cliente (derivata dall'IP)
"RefCustomerCity": "San Francisco", // Città cliente (derivata dall'IP)
"RefCustomerRegion": "CA", // Regione cliente (derivata dall'IP)
"RefCustomerCountry": "US", // Codice paese 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 cliente
"Oid": "ORD-554433", // ID ordine
"Note": "Reso parziale elaborato", // Nota fornita con l'azione
"CustomerPostCode": "94105", // CAP cliente
"CustomerCity": "San Francisco", // Città cliente
"CustomerCountry": "US", // Codice paese cliente
"CustomerRegion": "CA", // Regione cliente
"CustomerId": "CUST-12345", // ID cliente
"CustomerEmail": "a665a45920422f9d417...", // Email cliente sottoposta ad hashing
"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, // Importo 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...", // MAC SHA1
"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
}Eventi di richiesta informazioni sull'azione
Gli eventi di richiesta informazioni sull'azione invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando vengono create o risolte richieste sull'azione.
// Un esempio di POST in formato JSON
{
"Id": 554433, // Identificatore univoco della richiesta sull'azione nel sistema
"MediaPartnerId": 555, // ID partner
"MediaPartnerName": "Top Tier Affiliates", // Nome 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 sull'azione
"TransactionAmount": 250.00, // Importo della transazione dell'evento che ha attivato la richiesta sull'azione
"InquiryType": "MISSING_ACTION", // Tipo di richiesta sull'azione
"ExpectedPayout": 25.00, // Importo del payout atteso 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 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 della richiesta sull'azione
"RejectReason": null, // Motivo per cui la richiesta sull'azione è stata respinta
"FinalPayout": 0.00, // Il payout finale associato alla richiesta sull'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": "Il cliente sostiene di aver cliccato sul link, ma non è stato mostrato alcun credito.", // Note sulla richiesta inviate dal partner
"ResolutionNotes": null, // Note inviate al momento della decisione sulla richiesta
"Comments": "[{\"user\": \"support_agent\", \"text\": \"Sto verificando ora i log dei clic.\"}, {\"user\": \"partner\", \"text\": \"Il cliente ha fornito la ricevuta.\"}]" // Commenti aggiunti alla richiesta (in formato JSON)
}Eventi di liquidazione dell'azione
Gli eventi di liquidazione dell'azione invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando le azioni vengono liquidate.
// Un esempio di POST in formato JSON
{
"ActionTrackerId": 12345, // ID tipo evento
"ActionTrackerName": "Standard Sale Tracker", // Nome tipo evento
"CampaignId": 9876, // ID del programma
"CampaignName": "Spring Global Promotion", // Nome del programma
"MediaPartnerId": 555, // ID partner
"MediaPartnerName": "Top Tier Affiliates", // Nome partner
"OrderIds": "ORD-9921,ORD-9922", // ID ordine delle azioni segnalate (separati da virgole)
"ActionIds": "ACT-101,ACT-102", // ID azione (separati da virgole)
"ClearedDate": "2026-04-15T12:00:00Z", // Data (ISO 8601) in cui l'azione è pianificata per la liquidazione
"LedgerDate": "2026-04-08T09:54:43Z" // Data (ISO 8601) in cui l'azione è stata liquidata
}Eventi di richiesta del valore di tracciamento
Gli eventi di richiesta del valore di tracciamento invieranno una richiesta HTTP a un URL specificato (e a eventuali parametri inclusi) quando vengono create richieste di tracciamento.
// Un esempio di POST in formato JSON
{
"CampaignId": 9876, // ID del programma
"ActionTrackerId": 12345, // ID tipo evento
"MediaPartnerId": 555, // ID partner
"ActionId": "ACT-778899", // ID azione
"Amount": 150.00, // Importo dell'azione nella valuta del conto
"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" // Identificatore univoco del clic
}Eventi di completamento del job
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 oppure Fai clic su Esporta.
Eventi di candidatura del partner
Nota: Questa funzionalità è in beta. Contatta il tuo CSM o il nostro team di supporto se desideri testare questa funzionalità.
Gli eventi di candidatura del partner invieranno una richiesta HTTP a un URL specificato quando un partner invia una candidatura e ogni volta che la candidatura viene approvata, respinta o ritirata.
Se un PENDING payload viene recapitato con punti dati vuoti, il sistema è progettato per attivare aggiornamenti man mano che le informazioni diventano disponibili. Le consegne successive riuscite popoleranno quei campi precedentemente vuoti, garantendo che i tuoi record rimangano sincronizzati con le informazioni elaborate più recenti.
Importante: Se hai workflow di candidatura configurati, vengono eseguiti prima che il webhook venga attivato. Il webhook viene attivato con il relativo Stato: APPROVED oppure REJECTED se un workflow ha elaborato la candidatura, PENDING se non è stato applicato alcun workflow, oppure RETRACTED se il partner ha ritirato la candidatura.
Il contenuto del payload varia in base a Stato. L'esempio seguente mostra un PENDING evento, con commenti che indicano quali campi compaiono per gli altri stati.
Meccanismo di ritentativo del postback
Se un postback fallisce quando si tenta di inviarlo 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 indisponibilità del server.
Condizioni in cui i ritentativi non avranno luogo
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 risolve, ad esempio a causa di un errore di lookup DNS.
Pianificazione dei ritentativi
I tentativi di ritentativo seguono la pianificazione seguente. I ritentativi 1, 2 e 3 vengono saltati se il codice di risposta HTTP rientra nell'intervallo di 400 a 500.
Riferimento alla pianificazione dei ritentativi
Ritentativo 1
+15 secondi
Ritentativo 2
+15 secondi
Ritentativo 3
+15 secondi
Ritentativo 4
+3 minuti
Ritentativo 5
+3 minuti
Ritentativo 6
+15 minuti
Ritentativo 7
+15 minuti
Ritentativo 8
+15 minuti
Ritentativo 9
+2 ore
Ritentativo 10
+2 ore
Ritentativo 11
+2 ore
Ritentativo 12
+6 ore
Ritentativo 13
+6 ore
Ritentativo 14
+6 ore
Ritentativo 15
+6 ore
Ultimo aggiornamento
È stato utile?

