Cargas

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.

PropiedadDescripció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 items, 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.

PropiedadDescripció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.

PropiedadDescripció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 | FeaturesPosted

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
    }
  ]
}