Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Che cos'è un webhook?
Un webhook definisce un gestore di callback HTTP che viene attivato da un evento. Puoi creare webhook e configurarli per gestire le notifiche degli eventi, in alternativa all'uso modelli di notifica sulla monetizzazione, come descritto in Configurare le notifiche utilizzando modelli di notifica.
Per configurare le notifiche utilizzando i webhook, completa i seguenti passaggi utilizzando Gestione perimetrale UI, o API di gestione e monetizzazione:
- Aggiungi webhook che definiscono i gestori di callback per gli eventi di notifica utilizzando il metodo UI o API.
- Configura il gestore di callback.
- Configura la notifica per un piano tariffario regolabile utilizzando il UI o API.
Gestione dei webhook
Aggiungi e gestisci i webhook che definiscono i gestori di callback per gli eventi di notifica utilizzando il metodo UI o API.
Gestione dei webhook utilizzando l'interfaccia utente
Aggiungi e gestisci i webhook che definiscono i gestori di callback per gli eventi di notifica utilizzando l'interfaccia utente, come descritto nelle sezioni seguenti.
- Esplorare la pagina Webhook
- Aggiunta di un webhook utilizzando l'interfaccia utente
- Modifica di un webhook utilizzando l'interfaccia utente
- Eliminazione di un webhook utilizzando l'interfaccia utente
Esplorazione della pagina Webhook
Accedi alla pagina webhook, come descritto di seguito.
Edge
Per accedere alla pagina webhook utilizzando l'UI di Edge:
- Accedi a apigee.com/edge.
- Seleziona Pubblica > Monetizzazione > Webhook nella barra di navigazione a sinistra.
Viene visualizzata la pagina Webhook.
Come evidenziato nella figura, la pagina Webhook consente di:
- Visualizza i dettagli dei webhook esistenti.
- Aggiungi un webhook.
- Attiva o disattiva, modifica o elimina un webhook.
- Cerca nell'elenco dei webhook.
Perimetrale classico (Private Cloud)
Per accedere alla pagina webhook utilizzando l'interfaccia utente di Edge classico:
- Accedi a
http://ms-ip:9000
, dove ms-ip è Indirizzo IP o nome DNS del nodo del server di gestione. Seleziona Amministratore > Webhook.
Viene visualizzata la pagina Webhook.
La pagina Webhook ti consente di:
- Visualizza i dettagli dei webhook esistenti.
- Aggiungi un webhook.
- Attiva o disattiva, modifica o elimina un webhook.
- Cerca nell'elenco dei webhook.
Aggiunta di un webhook utilizzando l'interfaccia utente
Per aggiungere un webhook utilizzando l'interfaccia utente:
- Accedi alla pagina webhook.
- Fai clic su + webhook.
- Inserisci le seguenti informazioni (tutti i campi sono obbligatori).
Campo Descrizione Nome Nome del webhook. URL URL del gestore di callback che verrà chiamato quando verrà inviata la notifica dell'evento attivata. Consulta Configurazione del gestore di callback. - Fai clic su Salva.
Il webhook viene aggiunto all'elenco e abilitato per impostazione predefinita.
Modifica di un webhook tramite la UI
Per modificare un webhook utilizzando l'interfaccia utente:
- Accedi alla pagina webhook.
- Posiziona il cursore sul webhook che vuoi modificare e fai clic su nel menu delle azioni.
- Modifica i campi del webhook, come richiesto.
- Fai clic su Aggiorna webhook.
Attivazione o disattivazione di un webhook utilizzando l'interfaccia utente
Per attivare o disattivare un webhook utilizzando l'interfaccia utente:
- Accedi alla pagina webhook.
- Posiziona il cursore sul webhook e attiva o disattiva l'opzione di stato.
Eliminazione di un webhook utilizzando l'interfaccia utente
Per eliminare un webhook utilizzando l'UI:
- Accedi alla pagina webhook.
- Posiziona il cursore sul webhook da eliminare e fai clic su .
Il webhook viene eliminato e rimosso dall'elenco.
Gestione dei webhook mediante l'API
Aggiungi e gestisci i webhook utilizzando l'API come descritto nelle sezioni seguenti.
- Visualizzazione di tutti i webhook utilizzando l'API
- Visualizzare un webhook utilizzando l'API
- Aggiunta di un webhook utilizzando l'API
- Modificare un webhook utilizzando l'API
- Eliminazione di un webhook utilizzando l'API
Visualizzazione di tutti i webhook utilizzando API
Per visualizzare tutti i webhook, invia una richiesta GET a /mint/organizations/{org_name}/webhooks
.
Ad esempio:
curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks" \ -H "Content-Type: application/json " \ -u email:password
Di seguito viene riportato un esempio della risposta restituita:
{ "totalRecords": 2, "webhooks": [ { "created": 1460162656342, "enabled": false, "id": "21844a37-d26d-476c-93ed-38f3a4b24691", "name": "webhook1", "postUrl": "http://mycompany.com/callbackhandler1", "updated": 1460162656342, "updatedBy": "joe@example.com" }, { "created": 1460138724352, "createdBy": "joe@example.com", "enabled": true, "id": "a39ca777-1861-49cf-a397-c9e92ab3c09f", "name": "webhook2", "postUrl": "http://mycompany.com/callbackhandler2", "updated": 1460138724352, "updatedBy": "joe@example.com" } ] }
Visualizzazione di un webhook utilizzando API
Visualizza un singolo webhook inviando una richiesta GET a
/mint/organizations/{org_name}/webhooks/{webhook_id}
.
Ad esempio:
curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \ -H "Content-Type: application/json " \ -u email:password
Di seguito viene fornito un esempio della risposta:
{ "created": 1460162656342, "enabled": false, "id": "21844a37-d26d-476c-93ed-38f3a4b24691", "name": "webhook1", "postUrl": "http://mycompany.com/callbackhandler1", "updated": 1460162656342, "updatedBy": "joe@example.com" }
L'aggiunta di un webhook utilizzando API
Aggiungi un webhook inviando una richiesta POST a /mint/organizations/{org_name}/webhooks
.
Devi trasmettere il nome del webhook e l'URL del gestore di callback che verrà chiamato
quando viene attivata la notifica dell'evento.
Ad esempio, quanto segue crea un webhook denominato webhook3
e assegna
callbackhandler3
al webhook:
curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks" -H "Content-Type: application/json " -d '{ "name": "webhook3", "postURL": "http://mycompany.com/callbackhandler3" }' \ -u email:password
Di seguito viene fornito un esempio della risposta:
{ "created": 1460385534555, "createdBy": "joe@example.com", "enabled": false, "id": "0a07eb1f-f485-4539-8beb-01be449699b3", "name": "webhook3", "orgId": "myorg", "postUrl": "http://mycompany.com/callbackhandler3", "updated": 1460385534555, "updatedBy": "joe@example.com" }
Modifica di un webhook utilizzando l'API
Modifica un webhook inviando una richiesta PUT a
/mint/organizations/{org_name}/webhooks/{webhook_id}
. Trasmetti gli aggiornamenti nel corpo della sezione
richiesta.
Ad esempio, di seguito viene aggiornato il gestore di callback associato a
webhook1
:
curl -X PUT "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \ -H "Content-Type: application/json " \ -d '{ "postURL": "http://mycompany.com/callbackhandler4" }' \ -u email:password
Di seguito viene fornito un esempio della risposta:
{ "created": 1460385534555, "enabled": false, "id": "0a07eb1f-f485-4539-8beb-01be449699b3", "name": "webhook3", "orgId": "myorg", "postUrl": "http://mycompany.com/callbackhandler4", "updated": 1460385534555, "updatedBy": "joe@example.com" }
Attivazione o disattivazione di un webhook utilizzando l'API
Attiva o disattiva un webhook inviando una richiesta POST a
/mint/organizations/{org_name}/webhooks/{webhook_id}
, come hai fatto per l'aggiornamento di un webhook,
e impostare l'attributo enabled nel corpo della richiesta rispettivamente su true o false. Se disattivi il webhook, questo non verrà attivato quando
si verifica un evento.
Ad esempio, quanto segue abilita webhook3
:
curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \ -H "Content-Type: application/json " \ -d '{ "enabled": "true" }' \ -u email:password
Di seguito viene fornito un esempio della risposta:
{ "created": 1460385534555, "enabled": true, "id": "0a07eb1f-f485-4539-8beb-01be449699b3", "name": "webhook3", "orgId": "myorg", "postUrl": "http://mycompany.com/callbackhandler4", "updated": 1460385534555, "updatedBy": "joe@example.com" }
L'eliminazione di un webhook utilizzando API
Elimina un webhook inviando una richiesta DELETE a
/mint/organizations/{org_name}/webhooks/{webhook_id}
.
Per specificare se forzare o meno l'eliminazione del webhook se sono presenti processi in
progressi, imposta il parametro di query forceDelete
su true
oppure
false
. Il parametro di query forceDelete
è attivato (true
)
per impostazione predefinita.
Ad esempio, quanto segue elimina webhook3
:
curl -X DELETE "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \ -H "Content-Type: application/json " \ -u email:password
Configurazione del gestore di callback
Di seguito viene mostrato il formato della richiesta JSON inviata al gestore di callback definita da un webhook quando viene attivata la notifica di un evento. Devi assicurarti che il callback gestisce la richiesta in modo appropriato.
{ "orgName": "{org_id}", "developerEmail": "{dev_email}", "developerFirstName": "{first_name}", "developerLastName": "{last_name}", "companyName": "{company_name}", "applicationName": "{app_name}", "packageName": "{api_package_name}", "packageId": "{api_package_id}", "ratePlanId": "{rateplan_id}", "ratePlanName": "{rateplan_name}", "ratePlanType": "{rateplan_type}", "developerRatePlanQuotaTarget": {quota_target}, "quotaPercentUsed": {percentage_quota_used}, "ratePlanStartDate": {rateplan_startdate}, "ratePlanEndDate": {rateplan_enddate}, "nextBillingCycleStartDate": {next_billing_cycle_startdate}, "products": ["{api_product_name}","{api_product_name}"], "developerCustomAttributes": [], "triggerTime": {trigger_time}, "triggerReason": "{trigger_reason}", "developerQuotaResetDate": "{devquota_resetdate}" }
Configurare le notifiche per un piano tariffario regolabile
Configura le notifiche utilizzando i webhook per un piano tariffario regolabile utilizzando il UI o API.
Configurazione delle notifiche per un piano tariffario regolabile utilizzando l'interfaccia utente
Configura le notifiche utilizzando i webhook per un piano tariffario regolabile utilizzando l'interfaccia utente, come descritto di seguito.
Accedi alla finestra di dialogo Notifiche per un piano tariffario regolabile
Accedi alla finestra di dialogo Notifiche per un piano tariffario regolabile, come descritto di seguito.
Edge
Per accedere alla finestra di dialogo delle notifiche utilizzando la UI Edge:
- Crea e pubblica un piano tariffario di notifica regolabile, come descritto in Specificare dettagli del piano di notifica regolabili.
- Accedi alla pagina Piani tariffari selezionando Pubblica > Monetizzazione > Piani tariffari nella barra di navigazione a sinistra.
- Posiziona il cursore sul piano del tasso di notifica regolabile pubblicato per visualizzare le azioni.
- Fai clic su +Invia notifica.
Viene visualizzata la finestra di dialogo Notifiche.
Nota: affinché l'azione +Notifica venga visualizzata, il piano tariffario deve essere pubblicato.
Perimetrale classico (Private Cloud)
Per accedere alla pagina Notifiche:
- Crea un piano tariffario regolabile, come descritto in Specificare dettagli del piano di notifica regolabili.
- Seleziona Pubblica > Pacchetti per visualizzare i piani tariffari.
- Fai clic su +Notifica nella colonna Azioni per il piano tariffario.
Viene visualizzata la finestra di dialogo Notifiche.
Aggiunta di notifiche per un piano tariffario regolabile utilizzando l'interfaccia utente
Per aggiungere notifiche per un piano tariffario regolabile nell'interfaccia utente:
- Accedi alla finestra di dialogo Notifiche.
- Imposta la condizione di notifica in Intervalli di notifica tramite
che specifica una percentuale del numero di transazioni target in cui posizionare
l'attivazione della notifica. Nello specifico:
- Per impostare una percentuale esatta, inseriscila nel campo At/Da %. e lascia vuoto il campo To % (A %).
- Per impostare un intervallo percentuale, inserisci la percentuale iniziale e quella finale nel Rispettivamente i campi At/Da % e A % e un incremento nel campo %passaggio. Per impostazione predefinita, le notifiche vengono inviate in percentuale del 10%. incrementi nell'intervallo specificato.
Il campo
Notify At
viene aggiornato per riflettere ogni percentuale del numero target di transazioni che attivano un evento. - Per impostare altre condizioni di notifica, fai clic su +Aggiungi e ripeti il passaggio 4,
- Imposta l'azione di notifica in Webhook selezionando uno o più webhook per gestire la gestione del callback quando vengono attivate le notifiche.
- Fai clic su Crea notifica.
Modificare le notifiche per un piano tariffario regolabile utilizzando l'interfaccia utente
Per modificare le notifiche relative a un piano tariffario regolabile, vai all'interfaccia utente:
- Accedi alla finestra di dialogo Notifiche.
- Fai clic su +Notifica nella colonna Azioni per il piano tariffario.
- Fai clic su Modifica.
- Modifica i valori in base alle necessità.
- Fai clic su Save Notification (Salva notifica).
Eliminazione delle notifiche per un piano tariffario regolabile utilizzando l'interfaccia utente
Per eliminare una condizione e un'azione di notifica:
- Accedi alla finestra di dialogo Notifiche.
- Fai clic su +Notifica nella colonna Azioni per il piano tariffario.
- Fai clic su Elimina notifica.
Configura le notifiche per un piano tariffario regolabile utilizzando API
Per configurare una notifica per un piano tariffario modificabile utilizzando l'API, segui la procedura descritta in Gestione condizioni e azioni di notifica mediante l'API e utilizza gli attributi descritti in questa sezione.
Per configurare la condizione di notifica (notificationCondition
), usa la
i seguenti valori degli attributi. Per ulteriori informazioni, consulta Configurazione
proprietà per le condizioni di notifica.
Attributo | Valore |
---|---|
RATEPLAN |
ID del piano tariffario regolabile delle notifiche. |
PUBLISHED |
TRUE per indicare che il piano del tasso di notifica regolabile deve essere
pubblicato. |
UsageTarget |
Percentuale del numero di transazioni target a cui inviare una notifica
possono essere attivati.
Questo attributo ti consente di avvisare gli sviluppatori quando si stanno avvicinando o hanno raggiunto numero di transazioni target per un piano tariffario di notifica regolabile che che ha acquistato. Ad esempio, se uno sviluppatore ha acquistato una notifica modificabile piano tariffario e il numero target di transazioni per lo sviluppatore sia stato impostato su 1000. puoi inviare una notifica quando hanno raggiunto le 800 transazioni (l'80% del numero target transazioni), 1000 transazioni (100%) o 1500 transazioni (150%).
|
Per configurare l'azione di notifica, in actions
imposta i seguenti valori. Per
per ulteriori informazioni, consulta la sezione Configurazione
per le azioni di notifica.
Attributo | Valore |
---|---|
actionAttribute |
WEBHOOK per attivare un webhook. |
value |
ID del webhook che hai definito nella sezione precedente, Creazione di webhook utilizzando l'API. |
Di seguito viene fornito un esempio di come creare una condizione di notifica che attivi un quando la percentuale del numero target di transazioni raggiunge l'80%, il 90%, il 100%, il 110%, e 120%.
{ "notificationCondition": [ { "attribute": "RATEPLAN", "value": "123456" }, { "attribute": "PUBLISHED", "value": "TRUE" }, { "attribute": "UsageTarget", "value": "%= 80 to 120 by 10" } } ], "actions": [{ "actionAttribute": "WEBHOOK", "value": "b0d77596-142e-4606-ae2d-f55c3c6bfebe", }] }
Per informazioni su come visualizzare, aggiornare ed eliminare una condizione e un'azione di notifica, consulta:
- Visualizzazione una condizione e un'azione di notifica mediante l'API
- La modifica di un condizione e azione di notifica usando l'API
- L'eliminazione di un condizione e azione di notifica usando l'API
Codici di risposta webhook
Di seguito sono riepilogati i codici di risposta webhook e il modo in cui vengono interpretati dal di un sistema operativo completo.
Codice di risposta | Descrizione |
---|---|
2xx |
Operazione riuscita |
5xx |
Richiesta non riuscita. Il sistema riproverà la richiesta fino a tre volte in 5 minuti intervalli. Nota : i timeout di lettura e di connessione per le richieste webhook sono: di 3 secondi ciascuno, il che può comportare la mancata riuscita delle richieste. |
Other response |
Richiesta non riuscita. Il sistema non proverà nuovamente a inviare la richiesta. |