Al crear un webhook, puede elegir suscribirse a desencadenantes de eventos específicos vinculados a operaciones de la API que invocarán el webhook y proporcionarán la información del evento a través de la carga. En las siguientes secciones se enumeran los desencadenadores de eventos disponibles y sus URI o valores de tipo de cambio asociados para webhooks de organización y de servicios de entidades.
Nota:
A diferencia de los webhooks de organización y de servicios de entidades, los webhooks de servicios de geoprocesamiento no tienen desencadenadores de eventos definidos por el usuario. Los webhooks de servicios de geoprocesamiento envían cargas una vez que se haya completado un trabajo de geoprocesamiento. Para obtener más información sobre las cargas enviadas para servicios de geoprocesamiento, consulte el tema Cargas.
Eventos de elementos de organización
La siguiente tabla muestra los desencadenadores de eventos para los elementos de su organización, lo que incluye mapas web, aplicaciones web, capas, paquetes y documentos PDF:
Desencadenador de evento | URI |
---|---|
Todos los eventos desencadenadores de todos los elementos | /items |
Se agrega un elemento al portal | /items/add |
Se elimina cualquier elemento | /items/delete |
Se actualiza cualquier elemento | /items/update |
Se mueve o se cambia la propiedad de cualquier elemento | /items/move |
Se publica cualquier elemento | /items/publish |
Se comparte cualquier elemento | /items/share |
Se deja de compartir cualquier elemento | /items/unshare |
Se reasigna la propiedad de cualquier elemento | /items/reassign |
Se agrega un comentario a cualquier elemento | /items/addComment |
Se elimina un comentario de cualquier elemento | /items/deleteComment |
Se actualiza un comentario en cualquier elemento | /items/updateComment |
Todos los eventos desencadenadores de un elemento específico | /items/<itemID> |
Se elimina un elemento específico | /items/<itemID>/delete |
Se actualizan las propiedades de un elemento específico Nota:Las propiedades del elemento que se pueden actualizar varían entre tipos de elementos y existen acciones únicas que desencadenan la operación Update. Por ejemplo, si el elemento es un mapa web, actualizar la etiqueta, configurar un elemento emergente o cambiar el mapa base son eventos de actualización que desencadenan el webhook. | /items/<itemID>/update |
Se cambia la propiedad de un elemento específico o se mueve el elemento | /items/<itemID>/move |
Se publica un elemento específico | /items/<itemID>/publish |
Se comparte un elemento específico | /items/<itemID>/share |
Se deja de compartir un elemento específico | /items/<itemID>/unshare |
Se reasigna la propiedad de un elemento específico | /items/<itemID>/reassign |
Se agrega un comentario a elemento concreto | /items/<itemId>/addComment |
Se elimina un comentario de un elemento concreto | /items/<itemId>/deleteComment |
Se actualiza un comentario en un elemento concreto | /items/<itemId>/updateComment |
Propiedades de desencadenadores de eventos de elementos
Algunos de los desencadenadores de eventos de elementos de la organización devuelven propiedades adicionales en sus cargas. En las siguientes secciones, se describen las propiedades adicionales de las cargas de estos desencadenadores.
Se comparte un elemento específico
Los webhooks que se suscriben al desencadenador de evento /items/<itemID>/share tienen la propiedad sharedToGroups incluida en su carga. La propiedad sharedToGroups especifica cómo se compartió un elemento. Si el elemento se compartió con un grupo, el objeto JSON properties incluye el Id. de cada grupo con el que se compartió el elemento. Si el elemento se compartió con la organización en su conjunto, el objeto incluye Organization. Si el elemento se compartió públicamente, el objeto incluye Everyone. En el ejemplo siguiente se muestra cómo compartir un elemento con grupos específicos y cómo compartir un elemento tanto públicamente como con grupos específicos.
Ejemplos
//groupIDs
"properties": {
"sharedToGroups": [
"ecd6646698b24180904e4888d5eaede3",
"2dff15c514ad4f04b291e304e24a524b"
]
}
//Everyone and groupIDs
"properties": {
"sharedToGroups": [
"Everyone",
"4adc30bb03054812a846fa592de105de",
"a4e6e37e2f7d4bb5b64d587c91d39a2c"
]
}
Se reasigna la propiedad de cualquier elemento
Los webhooks que se suscriben al desencadenador de evento /items/reassign tienen la propiedad reassignedTo incluida en su carga. La propiedad reassignedTo especifica el nuevo usuario al que se reasigna un elemento o grupo y devuelve el nombre de usuario del nuevo propietario en el objeto JSON properties.
Ejemplo
"properties": {
"reassignedTo": ["newOwner"]
}
Se deja de compartir un elemento específico
Los webhooks que se suscriben al desencadenador de evento /items/<itemID>/unshare tienen la propiedad unsharedFromGroups incluida en su carga. La propiedad unsharedFromGroups especifica cómo se dejó de compartir un elemento. Si el elemento se dejó de compartir con un grupo, el objeto JSON properties incluirá los Id. de cada grupo con el que se dejó de compartir el elemento. Si el elemento se dejó de compartir con la organización en su conjunto, el objeto incluye Organization. Si el elemento se dejó de compartir con el público, el objeto incluye Everyone. Los ejemplos de propiedades siguientes muestran cómo dejar de compartir un elemento con el público y cómo dejar de compartir un elemento con un grupo específico.
Ejemplos
//Everyone
"properties": {
"unsharedFromGroups": ["Everyone"]
}
//groupID
"properties": {
"unsharedFromGroups": [
"4adc30bb03054812a846fa592de105de"
]
}
Se reasigna la propiedad de un elemento específico
Los webhooks que se suscriben al desencadenador de evento /items/<itemID>/reassign tienen la propiedad reassignedTo incluida en su carga. La propiedad reassignedTo especifica el nuevo usuario al que se asigna un elemento o grupo y devuelve el nombre de usuario del nuevo propietario en el objeto JSON properties.
Ejemplo
"properties": {
"reassignedTo": ["newOwner"]
}
Eventos de grupos de organización
La siguiente tabla muestra los desencadenadores de eventos para los grupos de su organización:
Desencadenador de evento | URI |
---|---|
Todos los eventos desencadenadores de todos los grupos | /groups |
Se agrega un grupo | /groups/add |
Se actualiza cualquier grupo | /groups/update |
Se elimina cualquier grupo | /groups/delete |
Protección contra eliminación está habilitada para cualquier grupo | /groups/protect |
Protección contra eliminación está deshabilitada para cualquier grupo | /groups/unprotect |
Se invita a un usuario a cualquier grupo | /groups/invite |
Se agrega un usuario a cualquier grupo | /groups/addUsers |
Se elimina un usuario de cualquier grupo | /groups/removeUsers |
Se actualiza un rol de usuario en cualquier grupo | /groups/updateUsers |
Se reasigna la propiedad de cualquier grupo | /groups/reassign |
Se comparte un elemento con cualquier grupo | /groups/itemShare |
Se deja de compartir un elemento con cualquier grupo | /groups/itemUnshare |
Un usuario envía una solicitud para unir cualquier grupo | /groups/requestJoin |
Todos los eventos desencadenadores de un grupo específico | /groups/<groupID> |
Se actualiza un grupo específico Nota:Todos los cambios generales realizados en la configuración del grupo constituyen una actualización. Por ejemplo, cambiar el acceso de un grupo desencadenará un evento de actualización. | /groups/<groupID>/update |
Se elimina un grupo específico | /groups/<groupID>/delete |
Protección contra eliminación está habilitada para un grupo específico | /groups/<groupID>/protect |
Protección contra eliminación está deshabilitada para un grupo específico | /groups/<groupID>/unprotect |
Se invita a un usuario a un grupo específico | /groups/<groupID>/invite |
Se agrega un usuario a un grupo específico | /groups/<groupID>/addUsers |
Se elimina un usuario de un grupo específico | /groups/<groupID>/removeUsers |
Se actualiza un rol de usuario en un grupo específico | /groups/<groupID>/updateUsers |
Se reasigna la propiedad de un grupo específico | /groups/<groupID>/reassign |
Se comparte un elemento con un grupo | /groups/<groupID>/itemShare |
Se deja de compartir un elemento con un grupo específico | /groups/<groupID>/itemUnshare |
Un usuario solicita unir un grupo concreto | /groups/<groupId>/requestJoin |
Propiedades de desencadenadores de eventos de grupos
Algunos de los desencadenadores de eventos de grupos de la organización devuelven propiedades adicionales en la carga. En las siguientes secciones, se describen las propiedades adicionales de las cargas de estos desencadenadores.
Se invita a un usuario a un grupo específico
Los webhooks que se suscriben al desencadenador de evento /groups/<groupID>/invite tienen la propiedad invitedUserNames incluida en su carga. La propiedad invitedUserNames especifica los nombres de usuario de los usuarios invitados a un grupo y devuelve una lista de nombres de usuario en el objeto JSON properties.
Ejemplo
"properties": {
"invitedUserNames": [
"u1TestUser",
"u2TestUser"
]
}
Se agrega un usuario a un grupo específico
Los webhooks que se suscriben al desencadenador de evento /groups/<groupID>/addUsers tienen la propiedad addedUserNames incluida en su carga. La propiedad addedUserNames especifica los nombres de usuario de los usuarios que se han agregado a un grupo y devuelve una lista de nombres de usuario en el objeto JSON properties.
Ejemplo
"properties": {
"addedUserNames": [
"u1TestUser",
"u2TestUser"
]
}
Se elimina un usuario de un grupo específico
Los webhooks que se suscriben a /groups/<groupID>/removeUsers tienen la propiedad removeUserNames incluida en su carga. La propiedad removeUserNames especifica los nombres de usuario de los usuarios eliminados de un grupo y devuelve una lista de nombres de usuario en el objeto JSON properties.
Ejemplo
"properties": {
"removedUserNames": [
"u1TestUser",
"u2TestUser"
]
}
Se actualiza un rol de usuario en un grupo específico
Los webhooks que se suscriben a /groups/<groupID>/updateUsers tienen la propiedad updateUserNames incluida en su carga. La propiedad updateUserNames especifica los nombres de usuario de los usuarios cuyos roles de grupo se han actualizado y devuelve una lista de nombres de usuario en el objeto JSON properties.
Ejemplo
"properties": {
"updatedUserNames": [
"u1TestUser",
"u2TestUser"
]
}
Se comparte un elemento con un grupo
Los webhooks que se suscriben a /groups/<groupID>/itemShare tienen la propiedad sharedItems incluida en su carga. La propiedad sharedItems especifica el itemID y el tipo de elemento del elemento compartido con un grupo y devuelve esta información en el objeto JSON properties.
Ejemplo
"properties": {
"sharedItems": [
{
"itemId": "6cd80cb32d4a4b4d858a020e57fba7b1",
"itemType": "Map Package"
}
]
}
Se deja de compartir un elemento con un grupo específico
Los webhooks que se suscriben a /groups/<groupID>/itemUnshare tienen la propiedad unsharedItems incluida en su carga. La propiedad unsharedItems especifica el itemID y el tipo de elemento del elemento que se dejó de compartir con un grupo y devuelve esta información en el objeto JSON properties.
Ejemplo
"properties": {
"unsharedItems": [
{
"itemId": "7dd95fadaec84859ab8ed1059e675e0c",
"itemType": "Image"
}
]
}
Eventos de usuarios de organización
La siguiente tabla muestra los desencadenadores de eventos para los usuarios de su organización:
Desencadenador de evento | URI |
---|---|
Todos los eventos desencadenadores de todos los usuarios del portal | /users |
Se agrega un usuario a la organización | /users/add |
Cualquier usuario ha iniciado sesión en el portal | /users/signin |
Cualquier usuario ha cerrado sesión en el portal | /users/signout |
Se elimina cualquier usuario | /users/delete |
Se actualiza cualquier perfil de usuario Nota:Los eventos de actualización se desencadenan siempre que se realiza un cambio en el perfil del usuario. Sin embargo, los cambios que se realizan en el rol, el tipo o la licencia de un usuario no se consideran una actualización del perfil del usuario. | /users/update |
Se deshabilita cualquier cuenta de usuario | /users/disable |
Se habilita cualquier cuenta de usuario | /users/enable |
Se asigna un nuevo rol a cualquier usuario | /users/updateUserRole |
Se asigna un nuevo tipo de usuario a cualquier usuario | /users/updateUserLicenseType |
Una lista de cuentas de usuario está habilitada | /users/bulkEnable |
Una lista de cuentas de usuario está deshabilitada | /users/bulkDisable |
Todos los eventos desencadenadores asociados con un usuario específico | /users/<username> |
Un usuario especificado ha iniciado sesión en el portal | /users/<username>/signIn |
Un usuario especificado ha cerrado sesión en el portal | /users/<username>/signOut |
Se elimina un usuario específico | /users/<username>/delete |
Se actualiza un perfil de usuario específico Nota:Los eventos de actualización se desencadenan siempre que se realiza un cambio en el perfil del usuario. Sin embargo, los cambios que se realizan en el rol, el tipo o la licencia de un usuario no se consideran una actualización del perfil del usuario. | /users/<username>/update |
Se deshabilita la cuenta de un usuario específico | /users/<username>/disable |
Se habilita la cuenta de un usuario específico | /users/<username>/enable |
Se asigna un nuevo rol a un usuario específico | /users/<username>/updateUserRole |
Se asigna un nuevo tipo de usuario a un usuario específico | /users/<username>/updateUserLicenseType |
Propiedades de desencadenadores de eventos de usuarios
Algunos de los desencadenadores de eventos de usuarios de la organización devuelven propiedades adicionales en la carga. En las siguientes secciones, se describen las propiedades adicionales de las cargas de estos desencadenadores.
Se asigna un nuevo rol a un usuario específico
Los webhooks que se suscriben a /users/<username>/updateUserRole tienen la propiedad userRoleUpdatedTo incluida en su carga. La propiedad userRoleUpdatedTo especifica el nuevo rol asignado al usuario y devuelve el nuevo rol en el objeto JSON properties.
"properties": {
"userRoleUpdatedTo": ["New role"]
}
Se asigna un nuevo tipo de usuario a un usuario específico
Los webhooks que se suscriben a /users/<username>/updateUserLicenseType tienen la propiedad userLicenseTypeUpdatedTo incluida en su carga. La propiedad userLicenseTypeUpdatedTo especifica el nuevo tipo de usuario asignado a un usuario y devuelve el nuevo tipo de usuario en el objeto JSON properties.
"properties": {
"userLicenseTypeUpdatedTo": ["Editor"]
}
Eventos de roles de la organización
La siguiente tabla muestra los desencadenadores de eventos para los roles de usuario de su organización:
Desencadenador de evento | URI |
---|---|
Todos los eventos desencadenadores de todos los roles del portal | /roles |
Se crea un nuevo rol | /roles/add |
Se actualiza un rol existente Nota:Los eventos de actualización se desencadenan siempre que se realiza un cambio en los roles de la organización. | /roles/update |
Se elimina un rol existente | /roles/delete |
Propiedades de desencadenadores de eventos de roles
Algunos de los desencadenadores de eventos de roles de la organización devuelven propiedades adicionales en la carga. En la siguiente sección, se describen las propiedades adicionales de las cargas de estos desencadenadores.
Se crea un nuevo rol
Los webhooks que se suscriben al desencadenador de evento /roles/add tienen la propiedad name incluida en su carga. La propiedad name especifica el nombre del rol que se creó y devuelve el nombre del rol en el objeto JSON properties.
Ejemplo
"properties": {
"name": ["New role"]
}
Eventos de servicios de entidades
La siguiente tabla muestra los desencadenadores de eventos para webhooks de servicios de entidades:
Desencadenador de evento | Valor |
---|---|
Se desencadena cualquier evento | * |
Se crea una nueva entidad | FeaturesCreated |
Se actualiza una entidad | FeaturesUpdated |
Se elimina una entidad | FeaturesDeleted |
Se edita una entidad (por ejemplo, inserción, actualización o eliminación) | FeaturesEdited |
Se agrega un nuevo adjunto a una entidad | AttachmentsCreated |
Se actualiza un adjunto de entidad | AttachmentsUpdated |
Se elimina un adjunto de entidad | AttachmentsDeleted |
Se cambia el esquema de una capa de entidades | LayerSchemaChanged |
Se cambia la definición de una capa de entidades | LayerDefinitionChanged |
Se cambia la definición de un servicio de entidades | FeatureServiceDefinitionChanged |