Lesen und beachten Sie die Automation Anywhere-Dokumentation

Automation Anywhere

Inhalt schließen

Inhalte

Inhalt öffnen

API zum Bereitstellen und Überwachen des Bot-Fortschritts

  • Aktualisiert: 5/10/2019
    • 11.3.x
    • Erkunden
    • Enterprise
    • API-Dokumente

API zum Bereitstellen und Überwachen des Bot-Fortschritts

Als Enterprise Control Room-Administrator oder Nutzer mit der Berechtigung „Geplante Aktivitäten anzeigen und verwalten” können Sie Bots bereitstellen und ihren Fortschritt mithilfe einer Reihe von Enterprise Control Room-APIs überwachen.

Mit den APIs „Bot bereitstellen“ und „Bot überwachen“ können Sie …

  1. Details zu einem bestimmten Bot aus dem Server-Repository abrufen, um die für die Bot-Bereitstellung zu verwendende Datei-ID zu ermitteln.
  2. eine Liste der für die Automatisierung verfügbaren Geräte (Bot Runner) und ihren Automatisierungsstatus abrufen.
  3. einen Bot auf bestimmten Geräten bereitstellen und seine Automatisierungs-ID abrufen.
  4. den Bot-Fortschritt anhand der Automatisierungs-ID überwachen.
Anmerkung: Die Beispiele in diesem Thema dienen lediglich als Referenz.

Bevor Sie auf die APIs zum Bereitstellen und Überwachen zugreifen können, müssen Sie zuerst die Authentifizierungs-API verwenden und sie als Token weitergeben, um eine bestimmte API zu verwenden.

  1. Verwenden Sie die POST-Methode, um ein Token anhand des Endpunkts https://<Hostname:Port>/v1/authentication zu generieren. Geben Sie hierzu die Enterprise Control Room-Instanz als Servernamen/Hostnamen/IP und die Port-Nummer an.
    • Zum Beispiel https://crdevenv.com:81/v1/authentication
  2. Geben Sie die folgende Anfrage-Payload in Headern an:

    "X-Authorization": "Authorization Token"

    "Content-Type": "application/json"

  3. Geben Sie die folgende Anfrage-Payload im Textkörper an:
    { "username": "<Username>", "password": "<Password>" }
    • Beispiel:
      { "usename":"Ellie.Brown", "password":"12345678" }

API zum Abrufen von Bot-Details

Verwenden Sie diese API, um Details eines Bots aus dem Server-Repository abzurufen. Die von dieser API abgerufene Bot-ID wird in der API für die Bot-Bereitstellung verwendet.

API-Endpunkt

Greifen Sie über den folgenden Endpunkt auf die APIs zu:

<Enterprise Control Room-URL>/v2/repository/file/list

Beispiel: https://crdevenv.com:81/v2/repository/file/list

Abrufen von Bot-Details

  1. Geben Sie die Parameter „X-Authorization“ und „Content Type“ in Headern an.
  2. Geben Sie mit der POST-Methode die folgende Anfrage-Payload im Textkörper an:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<bot name>", "field": "fileName" } }
    Tipp: Verwenden Sie den Operator „eq“ oder „substring“ mit der Datei-ID als „name“ und den Bot-Namen im „value“ des Filters, um Bot-Details aller Bots abzurufen, die dem angegebenen Bot-Namen entsprechen. Zusätzliche Filter‑, Ordnungs‑ und Nummerierungsregeln können ebenfalls angefordert werden.
    • Im Folgenden werden beispielsweise Details zum Bot Import-Table.atmx abgerufen:
      { "filter": { "operator": "eq", "value": "Import-Table.atmx", "field": "fileName" } }
  3. Klicken Sie auf Senden.
  4. Die Aktion war erfolgreich, wenn der Antwortstatus 200 lautet.
  5. Sie können die Antwort in den Textkörperdaten anzeigen.
    { "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" } ] } 

Parameterbeschreibung

Parameter

Beschreibung

operator
  • NONE (Keiner)
  • lt - less than (kleiner als)
  • le - less than equal to (kleiner gleich)
  • eq - equal to (gleich)
  • ne - not equal to (ungleich)
  • ge - greater than equal to (größer gleich)
  • gt - greater than (größer als)
  • substring (Unterzeichenfolge)
  • and (und)
  • or (oder)
  • not (nicht)
value (Wert) Name des Bots
fileId Datei-ID des Bots, für den Details gesucht werden
id ID des Bots
parentId ID des übergeordneten Verzeichnisses des Bots
name Name des Bots
canDelete Angemeldeter Nutzer hat das Recht, den Bot zu löschen – „true“ oder „false“
canDownload Angemeldeter Nutzer hat das Recht, den Bot herunterzuladen – „true“ oder „false“
canExecute Angemeldeter Nutzer hat das Recht, den Bot auszuführen # – „true“ oder „false“
canUpload Angemeldeter Nutzer hat das Recht, den Bot hochzuladen – „true“ oder „false“
canRun Angemeldeter Nutzer hat das Recht, den Bot auszuführen bzw. zu planen – „true“ oder „false“
lastModified Datum und Uhrzeit der letzten Aktualisierung des Bots
path Relativer Pfad des Bots
directory Kennzeichnung für Verzeichnis – „true“ oder „false“
size Größe des Bots in KB
isLocked Ob der Bot von einem anderen Nutzer ausgecheckt ist* – „true“ oder „false“
productionVersion Aktuelle Produktionsversion des Bots*
lockedBy Nutzer-ID, die den Bot gesperrt hat*
latestVersion Aktuelle Version des Bots*
fileLastModified Datum und Uhrzeit der letzten Aktualisierung des Bots

# gilt nur für MetaBots

* Gilt, wenn die Versionskontrolle aktiviert ist.

API zum Abrufen der Liste verfügbarer Geräte (Bot Runner-Clients)

Verwenden Sie diese API, um die Liste der für die Automatisierungsbereitstellung verfügbaren Geräte und ihren aktuellen Automatisierungsstatus abzurufen. Dazu müssen Sie den hier genannten Workflow befolgen:

  1. Liste der Geräte, ihren Typ und Verbindungsstatus abrufen
  2. Status der Bot-Ausführung von Geräten überprüfen

1. Liste der Geräte abrufen

Verwenden Sie diese API, um die Liste der Geräte abzurufen, z. B. für die Bot-Bereitstellung verfügbare Bot Runner. Die dabei abgerufene Geräte-ID kann bei Verwendung der Bereitstellungs-API als Parameter übergeben werden.

API-Endpunkt

Greifen Sie über den folgenden Endpunkt auf die APIs zu:

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

Beispiel: https://crdevenv.com:81/v2/devices/list

  1. Geben Sie die Parameter „X-Authorization“ und „Content Type“ in Headern an.
  2. Geben Sie mit der POST-Methode die folgende Anfrage-Payload im Textkörper an:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<connected or disconnected>", "fileld": "<status>" }, "page": {} }
    Tipp: Verwenden Sie das Feld „type“ und „status“, um nach Bot-Typ und ‑Status zu filtern. Zusätzliche Filter‑, Ordnungs‑ und Nummerierungsregeln können ebenfalls angefordert werden.
    • Im folgenden Beispiel wird der Status von verbundenen Geräten des Typs „Bot Runner“ abgerufen:
      { "filter": { "operator": "eq", "value": "CONNECTED", "fileld": "status" }, "page": {} }
  3. Klicken Sie auf Senden
  4. Die Aktion war erfolgreich, wenn der Antwortstatus 200 lautet.
  5. Sie können die Antwort in den Textkörperdaten anzeigen.
    { "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": "" } ] }

Parameterbeschreibung

Parameter Beschreibung
operator
  • NONE (Keiner)
  • lt - less than (kleiner als)
  • le - less than equal to (kleiner gleich)
  • eq - equal to (gleich)
  • ne - not equal to (ungleich)
  • ge - greater than equal to (größer gleich)
  • gt - greater than (größer als)
  • substring (Unterzeichenfolge)
  • and (und)
  • or (oder)
  • not (nicht)
value Wert des zu filternden Feldes
fileld id, hostName, userId
id ID des Geräts
Typ Gerätetyp: BOT_RUNNER oder BOT_CREATOR
hostname Hostname des Computers, an dem das Gerät angemeldet ist
userid Nutzer-ID des Geräts
username Nutzername des Geräts
status Status des Geräts: OFFLINE, CONNECTED oder DISCONNECTED
poolname Name des Gerätepools

2. API zum Abrufen des Automatisierungsstatus

Verwenden Sie diese API, um den aktuellen Status der Automatisierung abzurufen – unabhängig davon, ob ein Bot ausgeführt wird oder nicht.

API-Endpunkt

Greifen Sie über den folgenden Endpunkt auf die APIs zu:

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

Beispiel: https://crdevenv.com:81/v2/activity/list

  1. Geben Sie die Parameter „X-Authorization“ und „Content Type“ in Headern an.
  2. Geben Sie mit der POST-Methode die folgende Anfrage-Payload im Textkörper an:
    { "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" } ] } ] } }
    • Beispiel: Durch den folgenden Code wird der Status der Bot-Ausführung für das Gerät mit ID 2 abgerufen:
      { "filter": { "operator": "and", "operands": [ { "operator": "eq", "value": "2", "fileld": "deviceId" }, { "operator": "or", "operands": [ { "operator": "eq", "value": "RUNNING", "fileld": "status" } ] } ] } }
  3. Klicken Sie auf Senden.
  4. Die Aktion war erfolgreich, wenn der Antwortstatus 200 lautet.
  5. Sie können die Antwort in den Textkörperdaten anzeigen.
    { "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 } ] }

Parameterbeschreibung

Parameter Beschreibung
operator
  • NONE (Keiner)
  • lt - less than (kleiner als)
  • le - less than equal to (kleiner gleich)
  • eq - equal to (gleich)
  • ne - not equal to (ungleich)
  • ge - greater than equal to (größer gleich)
  • gt - greater than (größer als)
  • substring (Unterzeichenfolge)
  • and (und)
  • or (oder)
  • not (nicht)
value Automatisierungsstatus: DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT oder DEPLOY_FAILED
fileld Status des Bots, für den Details gesucht werden
id Eindeutige Ausführungs-ID
automationName Name der Automatisierung, der die Ausführung zugeordnet ist
fileName Name des Bots, der zur Ausführung bereitgestellt wird
filePath Relativer Pfad des Bots, der zur Ausführung bereitgestellt wird
type Aktivitätstyp: TASK
startDateTime Datum und Uhrzeit des Ausführungsbeginns
endDateTime Datum und Uhrzeit des Ausführungsendes
command Aktueller Befehl der Ausführung
status Aktueller Status der Ausführung: DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT oder DEPLOY_FAILED
progress Aktueller Fortschritt der Ausführung in Prozent
automationId ID der Automatisierung, der die Ausführung zugeordnet ist
userId Entsprechende Nutzer-ID des Geräts, auf dem der Bot bereitgestellt wird
deviceId Geräte-ID, an der der Bot bereitgestellt wird
currentLine Aktuelle Zeile des Bots, der zur Ausführung bereitgestellt wird
totalLines Gesamtzeilen des Bots, der zur Ausführung bereitgestellt wird
fileId ID des Bots, der zur Ausführung bereitgestellt wird
modifiedBy ID des Nutzers, der die Ausführung zuletzt aktualisiert hat
createdBy ID des Nutzers, der die mit der Ausführung verbundene Automatisierung erstellt hat
modifiedOn Datum und Uhrzeit der letzten Aktualisierung der Ausführung
createdOn Datum und Uhrzeit der Erstellung der Ausführung
deploymentId Bereitstellungs-ID, der die Ausführung zugeordnet ist
queueName Name der Warteschlange
queueId Warteschlangen-ID
usingRdp Gibt an, ob der Bot mithilfe eines Remote-Desktop-Prozesses bereitgestellt werden soll – „true“ oder „false“
message Meldung, falls verfügbar
canManage Ob der aktuell angemeldete Nutzer über Rechte zum Verwalten der Ausführung verfügt – „true“ oder „false“

API zum Bereitstellen des Bots

Verwenden Sie die API, um einen Bot mit Geräte-ID auf einem oder mehreren Geräten mit der Datei-ID eines Bots bereitzustellen.

API-Endpunkt

Greifen Sie über den folgenden Endpunkt auf die APIs zu:

<Enterprise Control Room-URL>/v2/automations/deploy

Beispiel: https://crdevenv.com:81/v2/automations/deploy

  1. Geben Sie die Parameter „X-Authorization“ und „Content Type“ in Headern an.
  2. Geben Sie mit der POST-Methode die folgende Anfrage-Payload im Textkörper an:
    { "fileId": "<file id of bot>", "deviceIds": [ "<device id 1>", "<device id 2>", "<device id 3>" ], "runWithRdp": "<true or false>" }
    • Beispiel: Durch den folgenden Code werden ein Bot mit ID 10 auf Geräten mit ID 1, 2 und 3 sowie ein Bot mit RDP bereitgestellt:
      { "fileId": "10", "deviceIds": [ "1", "2", "3" ], "runWithRDP": true }
  3. Klicken Sie auf Senden
  4. Die Aktion war erfolgreich, wenn der Antwortstatus 200 lautet.
  5. Sie können die Antwort in den Textkörperdaten anzeigen.
    { "automationId": "6" }

Parameterbeschreibung

Parameter Beschreibung
fileId ID des Bots, der bereitgestellt werden soll
deviceId Geräte-ID, an der der Bot bereitgestellt werden soll
runWithRDP Gibt an, ob der Bot mithilfe eines Remote-Desktop-Prozesses bereitgestellt werden soll – „true“ oder „false“
automationId ID der Automatisierung, der die Ausführung zugeordnet ist

API zum Überwachen der Bot-Ausführung

Verwenden Sie diese API, um den Bot-Fortschritt anhand der „automationId“ zu überwachen, die mithilfe der Bot-Bereitstellungs-API abgerufen wird.

Anmerkung: Diese API wird auch verwendet, um eine Liste der aktuell auf den Geräten ausgeführten Bots abzurufen.

API-Endpunkt

Greifen Sie über den folgenden Endpunkt auf die APIs zu:

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

Beispiel: https://crdevenv.com:81/v2/activity/list

  1. Geben Sie die Parameter „X-Authorization“ und „Content Type“ in Headern an.
  2. Geben Sie mit der POST-Methode die folgende Anfrage-Payload im Textkörper an:
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<automationId>", "fileld": "automationId" } }
    • Beispiel: Durch den folgenden Code wird der Status der Automatisierung mit ID 15 abgerufen:
      { "filter": { "operator": "eq", "value": "6", "fileld": "automationId" } }
  3. Klicken Sie auf Senden
  4. Die Aktion war erfolgreich, wenn der Antwortstatus 200 lautet.
  5. Sie können die Antwort in den Textkörperdaten anzeigen.
    { "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 } ] }

Parameterbeschreibung

Parameter Beschreibung
operator
  • NONE (Keiner)
  • lt - less than (kleiner als)
  • le - less than equal to (kleiner gleich)
  • eq - equal to (gleich)
  • ne - not equal to (ungleich)
  • ge - greater than equal to (größer gleich)
  • gt - greater than (größer als)
  • substring (Unterzeichenfolge)
  • and (und)
  • or (oder)
  • not (nicht)
value Automatisierungsstatus: DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT oder DEPLOY_FAILED
fileld ID des Bots, für den Details gesucht werden
id Eindeutige Ausführungs-ID
automationName Name der Automatisierung, der die Ausführung zugeordnet ist
fileName Name des Bots, der zur Ausführung bereitgestellt wird
filePath Relativer Pfad des Bots, der zur Ausführung bereitgestellt wird
type Aktivitätstyp: TASK
startDateTime Datum und Uhrzeit des Ausführungsbeginns
endDateTime Datum und Uhrzeit des Ausführungsendes
command Aktueller Befehl der Ausführung
status Aktueller Status der Ausführung: DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT oder DEPLOY_FAILED
progress Aktueller Fortschritt der Ausführung in Prozent
automationId ID der Automatisierung, der die Ausführung zugeordnet ist
userId Entsprechende Nutzer-ID des Geräts, auf dem der Bot bereitgestellt wird
deviceId Geräte-ID, an der der Bot bereitgestellt wird
currentLine Aktuelle Zeile des Bots, der zur Ausführung bereitgestellt wird
totalLines Gesamtzeilen des Bots, der zur Ausführung bereitgestellt wird
fileId ID des Bots, der zur Ausführung bereitgestellt wird
modifiedBy ID des Nutzers, der die Ausführung zuletzt aktualisiert hat
createdBy ID des Nutzers, der die mit der Ausführung verbundene Automatisierung erstellt hat
modifiedOn Datum und Uhrzeit der letzten Aktualisierung der Ausführung
createdOn Datum und Uhrzeit der Erstellung der Ausführung
deploymentId Bereitstellungs-ID, der die Ausführung zugeordnet ist
queueName Name der Warteschlange
queueId Warteschlangen-ID
usingRdp Gibt an, ob der Bot mithilfe eines Remote-Desktop-Prozesses bereitgestellt werden soll – „true“ oder „false“
message Meldung, falls verfügbar
canManage Ob der aktuell angemeldete Nutzer über Rechte zum Verwalten der Ausführung verfügt – „true“ oder „false“

API-Antwortcodes

Http(s)-Statuscode Antwort/Beschreibung Maßnahme
200/204 Aktion erfolgreich abgeschlossen n. v.
304 Keine Änderungen vorgenommen Aktualisieren nach Bedarf
400 Fehlerhafter Anfrageparameter Mit gültigen Parametern erneut versuchen
401 Authentifizierung erforderlich Authentifizierungsparameter angeben. Beispiel: Schlüssel für die X-Autorisierung
403 Nicht autorisierter Zugriff Sie müssen berechtigt sein, auf den Enterprise Control Room zuzugreifen.
404 Nicht gefunden Achten Sie darauf, dass die Anforderungs-Payload im Enterprise Control Room verfügbar ist
409 Konflikt Die angegebenen Parameter müssen korrekt sein
500 Interner Serverfehler Der Server muss betriebsbereit sein
501 Berechtigungsfehler Sicherstellen, dass Sie über die erforderliche Berechtigung verfügen

Auditprotokolle

Die Bereitstellungsaktivität, die die API verwendet, wird auf der Seite „Auditprotokoll“ des Enterprise Control Room protokolliert. Als Enterprise Control Room-Administrator oder -Nutzer mit der Berechtigung „Auditprotokoll-Aktionen aller Nutzer anzeigen” können Sie die Auditeinträge anzeigen.

Die folgende Abbildung zeigt ein Beispiel für eine Auditprotokoll-Detailseite zur Bereitstellung eines Bots mithilfe der Bereitstellungs-API:

Feedback senden