阅读和查看 Automation Anywhere 文档

Automation Anywhere

关闭内容

内容

打开内容

用于为机器人生命周期管理导出和导入机器人的 API

  • 已更新:5/10/2019
    • 11.3.x
    • 管理
    • Enterprise
    • API 文档

用于为机器人生命周期管理导出和导入机器人的 API

使用导出和导入机器人 API 可自定义组织的机器人生命周期管理解决方案,实现不间断的自动化生命周期。

通常,Enterprise Control Room用户必须依赖于Enterprise Control Room之外的方式(例如电子邮件)将TaskBot从一个环境部署到另一个环境。通过使用导出和导入 API,您可以轻松地引入自定义的机器人生命周期管理 (BLM) 解决方案,从而消除可能中断自动化生命周期的所有外部因素。

作为具有导出机器人下载机器人权限的Enterprise Control Room用户,您可以导出机器人及其依赖文件。同样,作为具有导入机器人上传机器人权限的用户,您也可以导入机器人及其依赖文件。

例如,您可以将经验证处于生产就绪状态的机器人从暂存移到生产环境。

您可以根据贵组织的自动化需求,使用Enterprise Control Room导出和导入 REST API 管理自动化TaskBot,其中包括开发、测试、验收和正式部署等不同环境中的依赖文件。

要使用Enterprise Control Room用户界面中的功能,请参阅“导出机器人”和“导入机器人”这两篇文章。

特点和优点

  • 针对机器人生命周期管理的基于角色的访问控制
  • 依赖项(文件和机器人)自动导出
  • 对源和目标环境合规性进行审核和跟踪
  • 有关导出和导入成功执行或失败的电子邮件通知。

导出

  • 凭证用于身份验证的Enterprise Control Room用户必须具有导出机器人权限
  • 凭证用于身份验证的Enterprise Control Room用户必须具有机器人下载权限,且至少具有MetaBot及正在导出的依赖项的执行权限。
  • 如果在源Enterprise Control Room中启用了版本控制,则必须设置要导出的所有机器人和依赖项的正式版本。
  • 用于运行Enterprise Control Room服务的用户账户必须有权访问包要导出到的位置,例如网络位置(共享驱动器)或Enterprise Control Room服务器计算机。

导入

  • 凭证用于身份验证的Enterprise Control Room用户必须具有导入机器人权限
  • 凭证用于身份验证的Enterprise Control Room用户必须具有机器人及正在导入的依赖项的上传权限。
  • 要使用实用工具来导入多个机器人的 Enterprise Control Room用户必须有权访问 Automation Anywhere 提供的导出包文件。

API 端点

  • 导出 - <Enterprise Control Room URL>/v1/blm/export

    例如,https://crdevenv.com:81/v1/alm/export

  • 导入 - <Enterprise Control Room URL>/v1/blm/import

    例如,https://crtestenv.com:82/v1/alm/import

通过使用以上 BLM 导出/导入 API 端点,您可以导出和导入单个机器人及其所有依赖项。

导出机器人

使用 Automation Anywhere 附带的导出 API 导出单个机器人及其依赖文件:

  1. 使用 Post 方法生成使用端点 http(s)://<hostname:port>/v1/authentication 的令牌。为此,请以服务器名称/主机名/IP端口号的形式提供Enterprise Control Room实例。

    例如,https://crdevenv.com:81/v1/authentication

  2. 使用 Post 方法并在正文数据中指出凭证的参数。参考示例:

    {

    "username":"cradmin",

    "password":"cr@admin"

    }

  3. 单击播放/开始
  4. BLM 导出 API 将使用通过身份验证 API 获取的身份验证令牌。该身份验证令牌必须作为某一标头输入传递给 BLM 导出 API。
  5. 在正文数据中提供 filePathdestinationPathpackageName 等参数,以便导出机器人。以下列表提供了参数描述:
    • filePath - 使用此参数指定以要导出机器人的名称结尾的文件路径
    • destinationPath - 使用此参数指定要存储导出包的目标路径
    • packageName - 使用此参数指定要分配给导出包的包名称

      参考示例

      {

      "filePath":"Automation Anywhere\\My Tasks\\Finance\\Account Reconciliation.atmx",

      "destinationPath":"tempshare\\datashare\\Finance Department",

      "packageName":"Finance package"

      }

  6. 单击播放/开始
  7. 您可以使用多个源通过以下途径查看导出结果:
    • 包含 packagePathchecksum 的响应数据。
    • 审核日志页面(登录页面和详细信息页面)
    • 在成功或失败时接收通知的电子邮箱(如果配置)

导入机器人

在将机器人成功导出到网络驱动器或Enterprise Control Room计算机路径后,其他授权用户可以使用导入 API 将该包导入到其他Enterprise Control Room

  1. 使用 Post 方法生成使用端点 http(s)://<hostname:port>/v1/authentication 的令牌。以服务器名称/主机名/IP端口号的形式提供Enterprise Control Room实例。

    例如,https://crtestenv.com:82/v1/authentication

  2. 使用 Post 方法并在正文数据中指出凭证的参数。

    参考示例:

    {

    "username":"cradmin2",

    "password":"cr@admin"

    }

  3. 单击播放/开始
  4. BLM 导入 API 将使用通过身份验证 API 获取的身份验证令牌。该身份验证令牌必须作为某一标头输入传递给 BLM 导入 API。
  5. 在对凭证进行身份验证后,提供正文数据中导出期间生成为令牌的 package pathchecksum 等参数。

    参考示例:

    {

    "packagePath":"tempshare\\datashare\\Finance Department\\Finance Package_20171221-154403.aapkg",

    "checksum":"ZLyQ+Lbu2N+beEuXf6qd2Qi9uwi3BZxApn57C7mYjKQ="

    }

提示: 您可以复制 BLM 导出 API 的响应,并直接将其作为输入传递给 BLM 导入 API(如果包路径相同并可供 BLM 导入 API 用户访问)。

API 响应代码

Http(s) 状态代码 响应 - 描述 纠正措施
200 已成功创建包 不适用
400 请求参数错误 使用有效参数重试
404 未找到文件 确保文件/机器人位于Enterprise Control Room
501 权限错误 确保您具有导出/导入机器人上传/下载权限

导出和导入 API 实用工具

要导出和导入多个机器人,您可以使用 Automation Anywhere 提供的实用工具,其中包括批处理文件和 jar 文件*

*Java 1.8 版及更高版本。

导出机器人

您可以使用Enterprise Control Room生命周期管理导出实用工具从Enterprise Control Room存储库导出多个机器人。下面说明了使用批处理文件从Enterprise Control Room导出TaskBot的方法:

  1. 打开 BLM 导出批处理文件,其中包含从Enterprise Control Room导出机器人所需的 API 命令和参数。该文件还提供了简单易用的示例参数。
    注: 此实用工具使用 BLM 导出 API 在后台导出多个机器人。请参阅先决条件。BLM 导出批处理文件
    提示: 建议您在开始导出过程之前创建批处理文件的副本。
  2. 您现在必须在该文件中提供以下参数以导出TaskBot及依赖文件
    • Enterprise Control Room实例作为 source_CR 参数。

      例如,http://stagingCR-mydomain.com:8081/

    • Enterprise Control Room登录凭证作为 usernamepassword 参数。

      例如,username:Mike,password:Mike@123

    • TaskBot文件名作为 export_files 参数。您可以指定以逗号分隔的机器人/文件。

      例如,Automation Anywhere\\My Tasks\\Finance Bots\\Account Reconciliation_master.atmx,Automation Anywhere\\My Tasks\\Finance REM Bots\\Comparison Data.atmx

    • TaskBot存储库路径名称作为 export_directories 参数。如果要从文件夹导出大量机器人,请使用此参数。

      例如,Automation Anywhere\\My Tasks\\Utilities Bots\\312018, Automation Anywhere\\My Tasks\\Sample Tasks\\Analytics Tasks

    • CSV 文件名及其路径作为 export_CSVs 参数。如果要从外部 .csv/.txt 文件导出机器人/文件,请使用此参数。
      • 您可以组合文件名、目录和 .csv 文件,以便从多个源导出多个文件。

        例如,Automation Anywhere\My Tasks\Finance\Bank Account Reconcilation.atmx, Automation Anywhere\My Tasks\Banking\Audit Certification Generation.atmx, Automation Anywhere\My MetaBots\Import Customer Data.mbot, Automation Anywhere\My Docs\daily sales data.xlsx

      • 您应至少传递一个参数,并将不需要的参数的值留空。

        例如,SET export_CSVs=""

    • 包的名称作为 package_name 参数。此文件会被保存为一个压缩文件,用于将机器人导入到另一个Enterprise Control Room实例。

      例如,Bank Account Reconciliation

    • 包的目标路径作为 package_path 参数。
      注: 这可以是共享驱动器,也可以是应具有其写入权限的Enterprise Control Room服务用户的Enterprise Control Room计算机路径。
      例如,\\\\network_share\\BLM Export Packages
  3. 运行批处理文件以启动导出命令。
  4. 验证该包是否在指定为 package_path 参数的位置创建。

    Enterprise Control Room用户使用此包将机器人导入到Enterprise Control Room的另一个实例。

示例代码

SET source_CR=<Enterprise Control Room URL>

SET username=<Enterprise Control Room Username>

SET password=<Enterprise Control Room Password>

SET export_files="<Comma separated list of bots to be exported>"

SET export_directories="<Comma separated list of directories to be exported>"

SET export_CSVs="<Comma separated list of CSVs whose content are to be exported>"

SET package_name=<Name of the export package>

SET package_path=<Path at which package will be exported>

java -jar %utility_path% -Oexport -H%source_CR% -U%username% -P%password% -N%package_name% -K%package_path% -F%export_files% -D%package_path% -C%export_CSVs%

pause

@echo off

REM *****************************示例参数***************************************

REM SET source_CR=http://123.456.78.90:8080

REM SET username=Mike

REM SET password=Mike@123

REM SET export_files="Automation Anywhere\\My Tasks\\Finance Bots\\Account Reconciliation_master.atmx,Automation Anywhere\\My Tasks\\Finance REM Bots\\Comparison Data.atmx"

REM SET export_directories="Automation Anywhere\\My Tasks\\Utilities Bots\\312018"

REM SET export_CSVs="D:\BLM\Account Reconciliation Bots.csv"

REM SET package_name=Bank Account Reconciliation

REM SET package_path=\\\\network_share\\BLM Export Packages

REM SET utility_path=D:\BLM\BLM_Export_Import_Utility-1.0.jar

导入机器人

您可以使用Enterprise Control Room生命周期管理导入实用工具将多个机器人导入到Enterprise Control Room存储库。下面说明了使用批处理文件将Enterprise Control Room导入到TaskBot存储库的方法:

  1. 打开 BLM 导入批处理文件,其中包含将机器人导入Enterprise Control Room所需的 API 命令和参数。该文件还提供了简单易用的示例参数。
    提示: 建议您在开始导入过程之前创建批处理文件的副本。
  2. 您现在必须在该文件中提供以下参数以导入TaskBot及依赖文件:
    1. 目标Enterprise Control Room实例作为 target_CR 参数。

      例如,http://prodCR-mydomain.com:80/

    2. Enterprise Control Room登录凭证作为 usernamepassword 参数。

      例如,username:John.Smith,password:John@123

    3. 导出包的绝对路径名称作为 package_path 参数。

      例如,\\\\network_share\\BLM Export Packages

  3. 运行批处理文件以启动导入命令。
  4. 您可以验证机器人是否是从 BLM Logs.log 文件中导出或导入的机器人/文件的列表导入到Enterprise Control Room机器人的存储库中。此日志文件与实用工具(.jar 文件)保存在同一文件夹中。

示例代码

SET target_CR=<Target Enterprise Control Room URL>

SET username=<Enterprise Control Room Username>

SET password=<Enterprise Control Room Password>

SET package_path=<Absolute path of the export package>

java -jar %utility_path% -Oimport -S%package_path% -U%username% -P%password% -H%target_CR%

pause

@echo off

REM *****************************示例参数***************************************

REM SET target_CR=http://987.654.32.10:8080

REM SET username=John

REM SET password=John@123

REM SET package_path=\\\\network_share\\BLM Export Packages

REM SET utility_path=D:\BLM\BLM_Export_Import_Utility-1.0.jar

审核日志

当您导出或导入机器人时,系统会在Enterprise Control Room审核日志页面中记录审核条目。

发送反馈