Cuando se desencadena un webhook, se envía una carga a la URL de carga especificada. Cada evento de un tipo de webhook específico sigue un esquema JSON similar, que contiene información relevante del evento compatible. Las secciones siguientes definen las propiedades incluidas en las cargas y proporcionan ejemplos de cargas para webhooks de organización y de servicios.
Cargas de webhooks de organización
La siguiente tabla muestra las propiedades incluidas en las cargas de sus webhooks de organización, que devuelven información sobre cambios y actualizaciones para los usuarios, grupos, elementos y roles de su organización.
Propiedad | Descripción |
---|---|
webhookName | El nombre del webhook que envió la carga. |
webhookId | El Id. del webhook que envió la carga. |
portalURL | La URL del portal en el que se registra el webhook. |
when | La hora a la que se envió la carga. |
username | El usuario que desencadenó el evento. |
userId | El Id. del usuario que desencadenó el evento. |
when | La hora a la que se produjo el evento. |
operation | El tipo de operación que realizó el usuario. En la siguiente lista se describe la propiedad de tipo de operación devuelta en la carga y las operaciones de la API del Directorio de Portal asociadas:
|
source | El tipo de elemento en el que se realizó la operación. Puede ser item, group o user. |
id | El Id. del elemento de origen en el que se realizó la operación. |
properties | Las propiedades adicionales asociadas a desencadenadores de eventos específicos. En la siguiente lista se describen las propiedades adicionales incluidas en la carga. Para obtener más información sobre qué desencadenadores de eventos incluyen propiedades adicionales, consulte Desencadenadores de eventos o haga clic en las propiedades siguientes para saber más sobre un desencadenador específico y sus propiedades. |
Ejemplo de carga
A continuación, se muestra un ejemplo de carga para un webhook de una organización que se desencadena cuando se ha actualizado un grupo específico:
{
"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": {}
}
]
}
Cargas de webhooks de servicios de geoprocesamiento
La siguiente tabla muestra las propiedades incluidas en las cargas de webhooks de servicios de geoprocesamiento, que devuelven información sobre los cambios realizados en sus servicios de geoprocesamiento.
Propiedad | Descripción |
---|---|
serviceType | El tipo de servicio para el que se configuró el webhook. Para los webhooks de servicios de entidades, esta propiedad devolverá solamente GPServer. |
jobId | El Id. del trabajo de servicio de geoprocesamiento. |
statusURL | La URL de estado de trabajo del servicio de geoprocesamiento que se puede sondear para devolver la información de estado del trabajo. |
name | El nombre del webhook. |
taskName | El nombre de la herramienta de geoprocesamiento. |
folderName | La carpeta donde se encuentra el servicio de geoprocesamiento. |
serviceName | El nombre del servicio de geoprocesamiento. |
eventType | La propiedad que representa cómo se completó el trabajo de servicio de geoprocesamiento. Los webhooks de servicios de geoprocesamiento no se suscriben a desencadenadores de eventos específicos. En su lugar, estos webhooks envían sus cargas una vez que se ha completado un trabajo de servicio de geoprocesamiento. Estas cargas muestran si el trabajo se completó correctamente (esriJobSucceeded), incorrectamente (esriJobFailed) o si el trabajo se canceló (esriJobCancelled). Valores: esriJobSucceeded | esriJobFailed | esriJobCancelled |
when | La marca de tiempo (con formato de milisegundos desde Epoch) de cuándo se completó el trabajo. |
Ejemplo de carga
A continuación, se muestra un ejemplo de carga para un webhook de servicio de geoprocesamiento que se desencadena cuando se completa un trabajo de servicio de geoprocesamiento.
{
"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
}
]
}
Cargas de webhooks de servicios de entidades
La siguiente tabla muestra las propiedades incluidas en las cargas de webhooks de servicios de entidades, que devuelven información sobre los cambios realizados en sus servicios de entidades.
Propiedad | Descripción |
---|---|
serviceType | El tipo de servicio para el que se configuró el webhook. Para los webhooks de servicios de entidades, esta propiedad devolverá solamente FeatureServer. |
changesUrl | La URL del extremo Extraer cambios del servicio. Aunque solo se incluyen en la carga el desencadenador del evento y la hora de ocurrencia, puede acceder a esta URL para obtener más información sobre los cambios específicos que se produjeron durante el evento. |
id | El Id. del webhook que envió la carga. |
folderName | La carpeta donde se encuentra el servicio de entidades. |
serviceName | El nombre del servicio de entidades. |
eventType | El tipo de evento realizado en el servicio de entidades. Para obtener más información sobre los valores de tipo de cambio a los que puede suscribirse al configurar su webhook, consulte el tema Desencadenadores de eventos. Valores: * | FeaturesCreated | FeaturesUpdated | FeaturesDeleted | FeaturesEdited | AttachmentsCreated | AttachmentsUpdated | AttachmentsDeleted | LayerSchemaChanged | LayerDefinitionChanged | FeatureServiceDefinitionChanged |
when | La marca de tiempo (con formato de milisegundos desde Epoch) de cuándo ocurrió el evento. |
Ejemplo de carga
A continuación, se muestra un ejemplo de carga para un webhook de servicio de entidades que se desencadena cuando se actualiza (FeaturesUpdated), se elimina (FeaturesDeleted), y se edita (FeaturesEdited) un servicio de entidades:
{
"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
}
]
}