Una volta attivato un webhook, viene consegnato un payload all'URL del payload specificato. Ogni evento per un tipo specifico di webhook segue uno schema JSON simile, contenente informazioni rilevanti per l'evento supportato. Le sezioni seguenti definiscono le proprietà incluse nei payload e forniscono esempi di payload per i webhook dell'organizzazione e di servizio.
Payload dei webhook dell'organizzazione
La tabella seguente elenca le proprietà incluse nei payload per i webhook dell'organizzazione, che restituiscono informazioni su modifiche e aggiornamenti di utenti, gruppi, elementi e ruoli dell'organizzazione.
Proprietà | Descrizione |
---|---|
webhookName | Il nome del webhook che ha inviato il payload. |
webhookId | L'ID del webhook che ha inviato il payload. |
portalURL | L'URL del portale a cui è registrato il webhook. |
when | L'orario in cui viene inviato il payload. |
username | L'utente che ha attivato l'evento. |
userId | L'ID dell'utente che ha attivato l'evento. |
when | L'orario in cui si è verificato l'evento. |
operation | Il tipo di operazione eseguita dall'utente. L'elenco seguente illustra le proprietà del tipo di operazione restituite nel payload e le operazioni API di Portal Directory ad esse associate:
|
source | Il tipo di elemento su cui si è eseguita l'operazione. Può essere items, group o user. |
id | L'ID dell'elemento di origine su cui si è eseguita l'operazione. |
properties | Le proprietà aggiuntive associate a specifici trigger di evento. L'elenco seguente illustra le proprietà aggiuntive incluse nel payload. Per ulteriori informazioni su quali trigger di evento includono proprietà aggiuntive, vedere Trigger di evento oppure fare clic sulle proprietà sottostanti per saperne di più su un trigger specifico e sulle sue proprietà. |
Esempio di payload
L'esempio seguente illustra un payload di esempio per un webhook di organizzazione che si attiva quando un gruppo specifico è stato aggiornato:
{
"info": {
"webhookName": "Group monitoring",
"webhookId": "72fed926aeb74c9ca8a22aacddc6725a",
"portalURL": "https://orgURL/portal/",
"when": 1543192196521
},
"events": [
{
"username": "administrator",
"userId": "173dd04b69134bdf99c5000aad0b6298",
"when": 1543192196521,
"operation": "update",
"source": "group",
"id": "173dd04b69134bdf99c5000aad0b6298",
"properties": {}
}
]
}
Payload del servizio di geoprocessing
La tabella seguente elenca le proprietà incluse nei payload dei webhook dei servizi di geoprocessing, che restituiscono informazioni sulle modifiche apportate ai servizi di geoprocessing.
Proprietà | Descrizione |
---|---|
serviceType | Il tipo di servizio per cui è stato configurato il webhook. Per i webhook dei feature service, questa proprietà restituirà soltanto GPServer. |
jobId | L'ID del lavoro del servizio di geoprocessing. |
statusURL | L'URL dello stato del lavoro del servizio di geoprocessing che può essere consultato per ottenere le informazioni sullo stato del lavoro. |
name | Il nome del webhook. |
taskName | Il nome dello strumento di geoprocessing. |
folderName | La cartella in cui si trova il servizio di geoprocessing. |
serviceName | Il nome del servizio di geoprocessing. |
eventType | La proprietà che rappresenta come è stato completato il lavoro del servizio di geoprocessing. I webhook del servizio di geoprocessing non sottoscrivono eventi specifici. Questi webhook consegnano piuttosto i loro payload una volta completato un lavoro di servizio di geoprocessing. Questi payload elencano se il lavoro è stato completato con successo (esriJobSucceeded), senza successo (esriJobFailed) o se è stato annullato (esriJobCancelled). Valori: esriJobSucceeded | esriJobFailed | esriJobCancelled |
when | Il timestamp (formattato in millisecondi dal periodo) del completamento del lavoro. |
Esempio di payload
L'esempio seguente illustra un payload di esempio per un webhook del servizio di geoprocessing che si attiva al completamento di un lavoro del servizio di geoprocessing.
{
"serviceType": "GPServer",
"jobId": "jeccad3d9099d4e1591859fdb08f4d1eb",
"statusURL": https://machine.domain.com/webadaptor/rest/services/my_Service/GPServer/jobs/jeccad3d9099d4e1591859fdb08f4d1eb?f=pjson,
"name": "webhook1",
"taskName": "",
"folderName": "",
"serviceName": "my_Service",
"events": [
{
"eventType": "esriJobSucceeded",
"when": 1652458959318
}
]
}
Payload del webhook feature service
La tabella seguente elenca le proprietà incluse nei payload dei webhook dei feature service, che restituiscono informazioni sulle modifiche apportate ai feature service.
Proprietà | Descrizione |
---|---|
serviceType | Il tipo di servizio per cui è stato configurato il webhook. Per i webhook dei feature service, questa proprietà restituirà soltanto FeatureServer. |
changesUrl | L'URL dell'endpoint Estrai le modifiche per il servizio. Sebbene il payload includa solo il trigger dell'evento e l'ora in cui si è verificato, è possibile accedere a questo URL per saperne di più sulle modifiche specifiche avvenute durante l'evento. |
id | L'ID del webhook che ha inviato il payload. |
folderName | La cartella in cui si trova il feature service. |
serviceName | Il nome del feature service. |
eventType | Il tipo di evento eseguito sul feature service. Per saperne di più sui valori del tipo di modifica che è possibile sottoscrivere quando si configura il webhook, vedere l'argomento Trigger di evento. Valori: * | FeaturesCreated | FeaturesUpdated | FeaturesDeleted | FeaturesEdited | AttachmentsCreated | AttachmentsUpdated | AttachmentsDeleted | LayerSchemaChanged | LayerDefinitionChanged | FeatureServiceDefinitionChanged | FeaturesPosted |
when | Il timestamp (formattato come millisecondi dal periodo) di quando si è verificato l'evento. |
Esempio di payload
L'esempio seguente illustra un payload di esempio per un webhook di feature service che si attiva quando un feature service viene aggiornato (FeaturesUpdated), cancellato (FeaturesDeleted) e modificato (FeaturesEdited):
{
"serviceType": "FeatureServer",
"changesUrl": "https://machine.domain.com/webadaptor/rest/services/Hosted/my_Service/FeatureServer/extractChanges?serverGens=12942,13026",
"id": "84e17696-c9d8-43cc-9cf7-5aeb658db12b",
"folderName": "Hosted",
"serviceName": "my_Service",
"events": [
{
"eventType": "FeaturesUpdated",
"when": 1652459863334
},
{
"eventType": "FeaturesDeleted",
"when": 1652459863334
},
{
"eventType": "FeaturesEdited",
"when": 1652459863334
}
]
}