Lea y revise la documentación de Automation Anywhere

Cerrar contenidos

Contenidos

Abrir contenidos

API para implementar y supervisar el progreso de los bots

  • Actualizado: 5/10/2019
    • 11.3.x
    • Explorar
    • Enterprise
    • Documentos de API

API para implementar y supervisar el progreso de los bots

Al ser un administrador de Enterprise Control Room o un usuario con permiso para Ver y administrar la actividad programada, puede implementar bots y supervisar su progreso con un conjunto de API de Enterprise Control Room.

Las API de implementación y supervisión de bots le permiten hacer lo siguiente:

  1. Obtener los detalles de un bot determinado desde el repositorio del servidor para identificar su ID de archivo y utilizarlo para la implementación del bot
  2. Obtener la lista de dispositivos (instancias de Bot Runner) disponibles para automatización y su estado de automatización
  3. Implementar un bot en ciertos dispositivos y obtener su ID de automatización
  4. Supervisar el progreso del bot conforme al ID de automatización
Nota: Los ejemplos que se incluyen en este artículo se presentan únicamente como referencia.

Antes de acceder a la API de implementación y monitoreo, debe usar la API de autenticación y pasarla como token para utilizar una API en particular.

  1. Utilice el método POST para generar un token con el extremo http(s)://<hostname:port>/v1/authentication. Para esto, ingrese la instancia de Enterprise Control Room como Nombre del servidor/Nombre del host/Dirección IP y el número de Puerto.
    • Por ejemplo, https://crdevenv.com:81/v1/authentication
  2. Ingrese la siguiente solicitud de carga útil en los encabezados

    "X-Authorization": "Authorization token"

    "Content-Type": “application/json"

  3. Proporcione la siguiente solicitud de carga útil en el cuerpo:
    { "username": "<Username>", "password": "<Password>" }
    • Por ejemplo,
      { "usename":"Ellie.Brown", "password":"12345678" }
      .

API para obtener los detalles del bot

Puede utilizar esta API para obtener los detalles de un bot desde el repositorio del servidor. El ID de bot obtenido en esta API se utiliza en la API para la implementación de bots.

Extremo de API

Use el siguiente extremo para acceder a las API:

<Dirección URL de Enterprise Control Room>/v2/repository/file/list

Por ejemplo, https://crdevenv.com:81/v2/repository/file/list

Obtener los detalles del bot

  1. Incluya los parámetros "X-Authorization" y "Tipo de contenido" en los encabezados.
  2. Puede utilizar el método POST para proporcionar la siguiente solicitud de carga útil en el cuerpo:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<bot name>", "field": "fileName" } }
    Consejo: Use el operador "eq" o "substring", con "name" en el campo fileld y el nombre de bot en el campo "value" del filtro, para obtener los detalles de todos los bots que coincidan con el nombre ingresado. También se pueden solicitar reglas adicionales de filtrado, orden y paginación.
    • Por ejemplo, los siguientes parámetros obtienen los detalles del bot Import-Table.atmx:
      { "filter": { "operator": "eq", "value": "Import-Table.atmx", "field": "fileName" } }
  3. Haga clic en Enviar.
  4. La acción se considera correctamente realizada cuando el estado de respuesta es 200.
  5. Puede ver la respuesta en los datos del cuerpo.
    { "page": { "offset": 0, "total": 1, "totalFilter": 1 }, "list": [ { "id": "10", "parentid": "9", "name": "Import-Table.atmx", "canDelete": true, "canDownload": true, "canExecute": true, "canUpload": true, "canRun": true, "lastModified": "2018-07-18T04:42:05Z", "lastModifiedBy": "0", "path": "Automation Anywhere\\My Tasks\\Sample Tasks\\Import-Table.atmx", "directory": false, "size": 418719, "isLocked": false, "productionVersion": "", "lockedBy": "", "latestVersion": "", "fileLastModified": "2018-07-18T04:42:05Z" } ] } 

Descripción de los parámetros

Parámetro

Descripción

operador
  • NINGUNO
  • lt - menor que
  • le - menor o igual que
  • eq - igual que
  • ne - no es igual que
  • ge - mayor o igual que
  • gt - mayor que
  • subcadena
  • y
  • o
  • no
valor Nombre del bot
fileId ID de archivo del bot para el que se buscan detalles
id ID del bot
parentId ID del directorio principal del bot
nombre Nombre del bot
canDelete El usuario con sesión iniciada tiene derechos para eliminar el bot - verdadero o falso
canDownload El usuario con sesión iniciada tiene derechos para descargar el bot - verdadero o falso
canExecute El usuario con sesión iniciada tiene derechos para ejecutar el bot# - verdadero o falso
canUpload El usuario con sesión iniciada tiene derechos para cargar el bot - verdadero o falso
canRun El usuario con sesión iniciada tiene derechos para ejecutar/programar el bot - verdadero o falso
lastModified Fecha y hora en que el bot se actualizó por última vez
path Ruta relativa del bot
directorio Marcar para directorio - verdadero o falso
tamaño Tamaño del bot en KB
isLocked Otro usuario marcó el bot para revisión* - verdadero o falso
productionVersion Versión de producción actual del bot*
lockedBy ID del usuario que bloqueó el bot*
latestVersion Versión más reciente del bot*
fileLastModified Fecha y hora en que el bot se actualizó por última vez

# aplicable únicamente para instancias de MetaBot

* aplica cuando el control de versiones está habilitado

API para obtener la lista de dispositivos disponibles (instancias de Client de Bot Runner)

Utilice esta API para obtener la lista de dispositivos disponibles para la implementación de automatización y su estado actual de automatización. Para esto, debe seguir este flujo de trabajo:

  1. Obtener la lista de dispositivos, su tipo y estado de conexión
  2. Verificar el estado de ejecución del bot en los dispositivos

1. Obtener lista de dispositivos

Puede utilizar esta API para obtener la lista de dispositivos, es decir, las instancias de Bot Runner disponibles para la implementación de bots. El ID del dispositivo obtenido en este paso se puede pasar como parámetro mientras se usa la API de implementación.

Extremo de API

Use el siguiente extremo para acceder a las API:

<Enterprise Control Room URL>/v2/devices/list

Por ejemplo, https://crdevenv.com:81/v2/devices/list

  1. Incluya los parámetros "X-Authorization" y "Tipo de contenido" en los encabezados.
  2. Puede utilizar el método POST para proporcionar la siguiente solicitud de carga útil en el cuerpo:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<connected or disconnected>", "fileld": "<status>" }, "page": {} }
    Consejo: Use el campo "tipo" y "estado" para filtrar por tipo y estado de bot. También se pueden solicitar reglas adicionales de filtrado, orden y paginación.
    • Por ejemplo, los siguientes parámetros obtienen el estado de los dispositivos de tipo bot runner que están conectados:
      { "filter": { "operator": "eq", "value": "CONNECTED", "fileld": "status" }, "page": {} }
  3. Haga clic en Enviar.
  4. La acción se considera correctamente realizada cuando el estado de respuesta es 200
  5. Puede ver la respuesta en los datos del cuerpo.
    { "page": { "offset": 0, "total": 2, "totalFilter": 2 }, "list": [ { "id": "1", "type": "BOT_RUNNER", "hostname": "CRDEVENV", "userid": "3", "username": "amy.cheng", "status": "CONNECTED", "poolname": "" }, { "id": "2", "type": "BOT_RUNNER", "hostname": "CRDEVENV", "userid": "5", "username": "jane.smith", "status": "CONNECTED", "poolname": "" } ] }

Descripción de los parámetros

Parámetro Descripción
operador
  • NINGUNO
  • lt - menor que
  • le - menor o igual que
  • eq - igual que
  • ne - no es igual que
  • ge - mayor o igual que
  • gt - mayor que
  • substring
  • and
  • or
  • not
valor Valor del campo por filtrar
fileld ID, hostName, userId
id ID del dispositivo
tipo Tipo de dispositivo - BOT_RUNNER o BOT_CREATOR
nombre del host Nombre del host de la máquina donde inició sesión el dispositivo
userid ID de usuario del dispositivo
nombre de usuario Nombre de usuario del dispositivo
estado Estado del dispositivo - SIN CONEXIÓN, CONECTADO o DESCONECTADO
poolname Nombre del grupo de dispositivos

2. API para obtener el estado de la automatización

Puede utilizar esta API para obtener el estado actual de la automatización, independientemente de si hay un bot en ejecución o no.

Extremo de API

Use el siguiente extremo para acceder a las API:

<Enterprise Control Room URL>/v2/activity/list

Por ejemplo, https://crdevenv.com:81/v2/activity/list

  1. Incluya los parámetros "X-Authorization" y "Tipo de contenido" en los encabezados.
  2. Puede utilizar el método POST para proporcionar la siguiente solicitud de carga útil en el cuerpo:
    { "filter": { "operator": "<and/or>", "operands": [ { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<id>", "fileld": "deviceId" }, { "operator": "<and/or>", "operands": [ { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<Automation status>", "fileld": "status" }, { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<Automation status>", "fileld": "status" } ] } ] } }
    • Por ejemplo, los siguientes parámetros sirven para obtener el estado de ejecución del bot para el dispositivo con ID 2:
      { "filter": { "operator": "and", "operands": [ { "operator": "eq", "value": "2", "fileld": "deviceId" }, { "operator": "or", "operands": [ { "operator": "eq", "value": "RUNNING", "fileld": "status" } ] } ] } }
  3. Haga clic en Enviar.
  4. La acción se considera correctamente realizada cuando el estado de respuesta es 200.
  5. Puede ver la respuesta en los datos del cuerpo.
    { "page": { "offset": 0, "total": 3, "totalFilter": 1 }, "list": [ { "id": "6e312e83-4115-4861-b118-26660b2b7b08", "automationName": "Import-Table_18.07.24.16.13.52_ellie.brown_API", "fileName": "Import-Table.atmx", "filePath": "\\My Tasks\\Sample Tasks\\Import-Table.atmx", "type": "TASK", "startDateTime": "2018-07-24T10:43:59Z", "endDateTime": "2018-07-24T10:44:25Z", "command": "Web Recorder", "status": "RUN_PAUSED", "progress": 43, "automationId": "6", "userId": "5", "deviceId": "2", "currentLine": 7, "totalLines": 16, "fileId": "10", "modifiedBy": "5", "createdBy": "1", "modifiedOn": "2018-07-24T10:44:26.209Z", "createdOn": "2018-07-24T10:43:52.808Z", "deploymentId": "e11d7888-1187-4ce7-b9c4-5790715bf93b", "queueName": "", "queueId": "", "usingRdp": false, "message": "Task is stopped by user.\r\n An error occurred at line number 7 of Task 'Import-Table'. Open the Task in Workbench to view action at line number 7.", "canManage": true } ] }

Descripción de los parámetros

Parámetro Descripción
operador
  • NINGUNO
  • lt - menor que
  • le - menor o igual que
  • eq - igual que
  • ne - no es igual que
  • ge - mayor o igual que
  • gt - mayor que
  • substring
  • and
  • or
  • not
valor Estado de la automatización - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT, o DEPLOY_FAILED
fileld Estado del bot para el que se buscan detalles
id ID de ejecución única
automationName Nombre de la automatización a la que está asociada la ejecución
fileName Nombre del bot que se implementa para ejecutar
filePath Ruta relativa del bot que se implementa para ejecutar
type Tipo de actividad - TAREA
startDateTime Fecha y hora en que comenzó la ejecución
endDateTime Fecha y hora en que finalizó la ejecución
command Comando actual de la ejecución
estado Estado actual de la ejecución - IMPLEMENTADO, EN EJECUCIÓN, EJECUCIÓN_PAUSADA, DESCONOCIDO, COMPLETADO, ERROR_DE_EJECUCIÓN, EJECUCIÓN_CANCELADA, EJECUCIÓN_VENCIDA, o ERROR_DE_IMPLEMENTACIÓN
progreso Porcentaje de progreso actual de la ejecución
automationId ID de la automatización con la que está asociada la ejecución
userId ID de usuario correspondiente del dispositivo donde se implementa el bot
deviceId ID del dispositivo donde se implementa el bot
currentLine Línea actual del bot que se implementa para ejecutar
totalLines Líneas totales del bot que se implementa para ejecutar
fileId ID del bot que se implementa para ejecutar
modifiedBy ID del usuario que actualizó por última vez la ejecución
createdBy ID del usuario que creó la automatización asociada a la ejecución
modifiedOn Fecha y hora en que la ejecución se actualizó por última vez
createdOn Fecha y hora en que se creó la ejecución
deploymentId ID de la implementación con la que está asociada la ejecución
queueName Nombre de la lista de prioridad
queueId ID de la lista de prioridad
usingRdp Indica si el bot se debe implementar mediante un proceso de escritorio remoto - verdadero o falso
message Mensaje, si está disponible
canManage Indica si el usuario con sesión iniciada tiene derechos para administrar la ejecución - verdadero o falso

API para implementar el bot

Puede utilizar esta opción para implementar un bot por medio del ID del dispositivo en uno o más dispositivos con el ID de archivo de un bot.

Extremo de API

Use el siguiente extremo para acceder a las API:

<Dirección URL de Enterprise Control Room>/v2/automations/deploy

Por ejemplo, https://crdevenv.com:81/v2/automations/deploy

  1. Incluya los parámetros "X-Authorization" y "Tipo de contenido" en los encabezados.
  2. Puede utilizar el método POST para proporcionar la siguiente solicitud de carga útil en el cuerpo:
    { "fileId": "<file id of bot>", "deviceIds": [ "<device id 1>", "<device id 2>", "<device id 3>" ], "runWithRdp": "<true or false>" }
    • Por ejemplo, los siguientes parámetros sirven para implementar un bot con ID 10 en dispositivos con ID 1, 2 y 3, e implementar un bot con RDP:
      { "fileId": "10", "deviceIds": [ "1", "2", "3" ], "runWithRDP": true }
  3. Haga clic en Enviar.
  4. La acción se considera correctamente realizada cuando el estado de respuesta es 200
  5. Puede ver la respuesta en los datos del cuerpo.
    { "automationId": "6" }

Descripción de los parámetros

Parámetro Descripción
fileId ID del bot para el que se va a implementar
deviceId ID del dispositivo donde se va a implementar el bot
runWithRDP Indica si el bot se debe implementar mediante un proceso de escritorio remoto - verdadero o falso
automationId ID de la automatización con la que está asociada la ejecución

API para monitorear la ejecución del bot

Puede utilizar esta API para supervisar el progreso del bot con base en el ID de automatización que se obtiene al usar la API de implementación de bots.

Nota: Esta API también se usa para obtener una lista de los bots que están en ejecución en los dispositivos.

Extremo de API

Use el siguiente extremo para acceder a las API:

<Enterprise Control Room URL>/v2/activity/list

Por ejemplo, https://crdevenv.com:81/v2/activity/list

  1. Incluya los parámetros "X-Authorization" y "Tipo de contenido" en los encabezados.
  2. Puede utilizar el método POST para proporcionar la siguiente solicitud de carga útil en el cuerpo:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<automationId>", "fileld": "automationId" } }
    • Por ejemplo, los siguientes parámetros sirven para obtener el estado de la automatización con ID 15:
      { "filter": { "operator": "eq", "value": "6", "fileld": "automationId" } }
  3. Haga clic en Enviar.
  4. La acción se considera correctamente realizada cuando el estado de respuesta es 200
  5. Puede ver la respuesta en los datos del cuerpo.
    { "page": { "offset": 0, "total": 3, "totalFilter": 1 }, "list": [ { "id": "6e312e83-4115-4861-b118-26660b2b7b08", "automationName": "Import-Table_18.07.24.16.13.52_ellie.brown_API", "fileName": "Import-Table.atmx", "filePath": "\\My Tasks\\Sample Tasks\\Import-Table.atmx", "type": "TASK", "startDateTime": "2018-07-24T10:43:59Z", "endDateTime": "2018-07-24T10:44:25Z", "command": "Web Recorder", "status": "RUN_PAUSED", "progress": 43, "automationId": "6", "userId": "5", "deviceId": "2", "currentLine": 7, "totalLines": 16, "fileId": "10", "modifiedBy": "5", "createdBy": "1", "modifiedOn": "2018-07-24T10:44:26.209Z", "createdOn": "2018-07-24T10:43:52.808Z", "deploymentId": "e11d7888-1187-4ce7-b9c4-5790715bf93b", "queueName": "", "queueId": "", "usingRdp": false, "message": "Task is stopped by user.\r\n An error occurred at line number 7 of Task 'Import-Table'. Open the Task in Workbench to view action at line number 7.", "canManage": true } ] }

Descripción de los parámetros

Parámetro Descripción
operador
  • NINGUNO
  • lt - menor que
  • le - menor o igual que
  • eq - igual que
  • ne - no es igual que
  • ge - mayor o igual que
  • gt - mayor que
  • substring
  • and
  • or
  • not
valor Estado de la automatización - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT, o DEPLOY_FAILED
fileld ID del bot para el que se buscan detalles
id ID de ejecución única
automationName Nombre de la automatización a la que está asociada la ejecución
fileName Nombre del bot que se implementa para ejecutar
filePath Ruta relativa del bot que se implementa para ejecutar
type Tipo de actividad - TAREA
startDateTime Fecha y hora en que comenzó la ejecución
endDateTime Fecha y hora en que finalizó la ejecución
command Comando actual de la ejecución
estado Estado actual de la ejecución - IMPLEMENTADO, EN EJECUCIÓN, EJECUCIÓN_PAUSADA, DESCONOCIDO, COMPLETADO, ERROR_DE_EJECUCIÓN, EJECUCIÓN_CANCELADA, EJECUCIÓN_VENCIDA, o ERROR_DE_IMPLEMENTACIÓN
progreso Porcentaje de progreso actual de la ejecución
automationId ID de la automatización con la que está asociada la ejecución
userId ID de usuario correspondiente del dispositivo donde se implementa el bot
deviceId ID del dispositivo donde se implementa el bot
currentLine Línea actual del bot que se implementa para ejecutar
totalLines Líneas totales del bot que se implementa para ejecutar
fileId ID del bot que se implementa para ejecutar
modifiedBy ID del usuario que actualizó por última vez la ejecución
createdBy ID del usuario que creó la automatización asociada a la ejecución
modifiedOn Fecha y hora en que la ejecución se actualizó por última vez
createdOn Fecha y hora en que se creó la ejecución
deploymentId ID de la implementación con la que está asociada la ejecución
queueName Nombre de la lista de prioridad
queueId ID de la lista de prioridad
usingRdp Indica si el bot se debe implementar mediante un proceso de escritorio remoto - verdadero o falso
message Mensaje, si está disponible
canManage Indica si el usuario con sesión iniciada tiene derechos para administrar la ejecución - verdadero o falso

Códigos de respuesta de API

Código de estado HTTP(s) Respuesta - Descripción Acción correctiva
200/204 Acción completada correctamente No aplica
304 No se aplicaron cambios Actualizar según sea necesario
400 Parámetro de solicitud incorrecto Vuelva a intentarlo con parámetros válidos
401 Autenticación requerida Proporcionar parámetros de autenticación. Por ejemplo, clave X-Authorization
403 Acceso no autorizado Asegúrese de estar autorizado para acceder a Enterprise Control Room
404 No se encontró Asegúrese de que la solicitud de carga útil esté disponible en Enterprise Control Room
409 Conflicto Asegúrese de que los parámetros proporcionados sean correctos
500 Error de servidor interno Asegúrese de que el servidor esté en funcionamiento
501 Error de permisos Asegúrese de tener los permisos necesarios

Registros de auditoría

La actividad de implementación mediante la API se registra en la página del registro de auditoría de Enterprise Control Room. Al ser un administrador de Enterprise Control Room o un usuario con permisos para Ver las acciones del registro de auditoría de todos, puede ver las entradas de auditoría.

La siguiente ilustración es una muestra de una página de detalles del registro de auditoría para implementar un bot mediante la API de implementación:

Enviar comentarios