Automation Anywhere 설명서 읽기 및 검토

Automation Anywhere

콘텐츠 닫기

콘텐츠

콘텐츠 열기

봇 배포 및 진행 상황 모니터링하는 API

  • 업데이트: 5/10/2019
    • 11.3.x
    • 탐색
    • Enterprise
    • API 문서

봇 배포 및 진행 상황 모니터링하는 API

Enterprise 제어실관리자 또는 예약 된 활동보기 및 관리 권한이있는 사용자는 봇을 배포하고 Enterprise 제어실개 API 세트를 사용하여 진행 상황을 모니터링합니다.

봇 배포 및 모니터링 API를 사용하여 다음 작업을 수행할 수 있습니다.

  1. 서버 리포지터리로부터 특정 봇의 세부 정보를 검색하여 봇 배포에 사용할 파일 ID를 식별
  2. 자동화에 사용 가능한 장치( Bot Runner) 목록 및 해당 자동화 상태를 가져오기
  3. 지정된 장치에 봇을 배치하고 자동화 ID를 가져오기
  4. 자동화 ID를 기반으로 봇 진행 상황을 모니터링
주: 제공된 예시는 참조 전용입니다.

배포 및 모니터링 API에 액세스하기 전에 먼저 인증 API를 사용하여 특정 API를 사용할 토큰으로 전달해야 합니다.

  1. POST 메소드를 사용하여 엔드포인트 http(s)://<hostname:port>/v1/authentication을 사용하는 토큰을 생성합니다. 이를 위해 Enterprise 제어실 인스턴스를 서버 이름/호스트 이름/IP포트 번호로 입력합니다.
    • 예: https://crdevenv.com:81/v1/authentication
  2. 헤더에 다음 요청 페이로드를 입력합니다.

    “X-Authorization" : “Authorization token”

    “Content-Type" : “application/json"

  3. 본문에 다음 요청 페이로드를 입력합니다.
    { "username": "<Username>", "password": "<Password>" }
    • 예를 들어,
      { "usename":"Ellie.Brown", "password":"12345678" }

봇 세부 정보를 가져오는 API

이 API를 사용하여 서버 저장소에서 봇의 세부 사항을 가져옵니다. 이 API에서 가져온 보트 ID는 배포 용 API에서 사용됩니다.

API 종료 지점

다음 엔드 포인트를 사용하여 API에 액세스하십시오.

<Enterprise 제어실 URL>/v2/repository/file/list

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

봇 세부 정보 가져 오기

  1. 헤더에 다음 "X-Authorization" 및 "Content Type" 매개변수를 입력합니다.
  2. POST 메소드를 사용하여 본문에 다음 요청 페이로드를 입력합니다.
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<bot name>", "field": "fileName" } }
    팁: 'name' 필드에 'eq' 또는 'substring' 연산자를 사용하고 필터의 'value'에 봇 이름을 사용하여 제공된 봇 이름과 일치하는 모든 봇의 봇 세부 정보를 가져옵니다. 추가 필터링, 순서 지정 및 페이지 매김 규칙을 요청할 수도 있습니다.
    • 예를 들어 다음은 봇 Import-Table.atmx의 세부 정보를 가져옵니다.
      { "filter": { "operator": "eq", "value": "Import-Table.atmx", "field": "fileName" } }
  3. 를 클릭하십시오.
  4. 응답 상태가 200인 경우 작업이 성공한 것입니다.
  5. 본문 데이터의 응답을 볼 수 있습니다.
    { "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" } ] } 

매개변수 설명

매개변수

셜명

연산자
  • 없음
  • lt - 보다 작음
  • le - 보다 작거나 같음
  • eq - 같음
  • ne - 같지 않음
  • ge - 보다 크거나 같음
  • gt - 보다 큼
  • substring
  • and
  • or
  • not
봇의 이름
fileId 세부 정보가 필요한 봇의 파일 ID
id 봇의 ID
parentId 봇의 상위 디렉토리 ID
이름 봇의 이름
canDelete 로그인한 사용자가 봇을 삭제할 권리가 있음 - true 또는 false
canDownload 로그인한 사용자가 봇을 다운로드할 권리가 있음 - true 또는 false
canExecute 로그인한 사용자가 봇을 실행할 권리가 있음# - true 또는 false
canUpload 로그인한 사용자가 봇을 업로드할 권리가 있음 - true 또는 false
canRun 로그인한 사용자가 봇을 실행/예약할 권리가 있음 - true 또는 false
lastModified 봇이 마지막으로 수정된 날짜 및 시간
path 봇의 상대 경로
directory 디렉터리 플래그 - true 또는 false
크기 봇의 크기(KB)
isLocked 다른 사용자가 봇을 체크아웃했는지 여부* - true 또는 false
productionVersion 봇의 현재 생산 버전*
lockedBy 봇을 잠근 사용자 ID*
latestVersion 봇의 최신 버전*
fileLastModified 봇이 마지막으로 수정된 날짜 및 시간

# MetaBot에만 해당됩니다.

* 버전 관리가 활성화 된 경우 적용 가능

사용 가능한 장치 목록을 가져 오는 API (Bot Runner 클라이언트)

이 API를 사용하여 자동화 배포에 사용할 수 있는 장치의 목록과 현재 자동화 상태를 가져옵니다. 이렇게 하려면 여기에 언급된 워크플로를 따라야 합니다.

  1. 장치 목록, 유형 및 연결 상태를 가져옵니다.
  2. 장치의 봇 실행 상태를 확인합니다.

1. 장치 목록 가져 오기

이 API를 사용하여 봇 배포에 사용할 수있는 Bot Runner 기기 목록을 가져옵니다. 이것에서 검색된 장치 ID는 Deployment API를 사용하는 동안 매개 변수로 전달 될 수 있습니다.

API 종료 지점

다음 엔드 포인트를 사용하여 API에 액세스하십시오.

<Enterprise 제어실 URL>/v2/devices/list

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

  1. 헤더에 다음 "X-Authorization" 및 "Content Type" 매개변수를 입력합니다.
  2. POST 메소드를 사용하여 본문에 다음 요청 페이로드를 입력합니다.
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<connected or disconnected>", "fileld": "<status>" }, "page": {} }
    팁: 봇 유형 및 상태 필터링에 '유형'및 '상태'필드를 사용하십시오. 추가 필터링, 순서 지정 및 페이지 매김 규칙을 요청할 수도 있습니다.
    • 예를 들어, 다음은 연결된 봇 주자 유형의 장치 상태를 가져옵니다.
      { "filter": { "operator": "eq", "value": "CONNECTED", "fileld": "status" }, "page": {} }
  3. 보내기를 클릭합니다.
  4. 응답 상태가 200인 경우 작업이 성공한 것입니다.
  5. 본문 데이터의 응답을 볼 수 있습니다.
    { "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": "" } ] }

매개변수 설명

매개변수 셜명
연산자
  • 없음
  • lt - 보다 작음
  • le - 보다 작거나 같음
  • eq - 같음
  • ne - 같지 않음
  • ge - 보다 크거나 같음
  • gt - 보다 큼
  • substring
  • 또는
  • not
필터링 할 필드의 값입니다.
fileld id, hostName, userId
id 장치의 ID
유형 장치 유형 - BOT_RUNNER 또는 BOT_CREATOR
호스트명 장치가 로그인된 시스템의 호스트 이름
사용자id 장치의 사용자 ID
사용자 이름 장치의 사용자 이름
상태 장치의 상태 - OFFLINE, CONNECTED 또는 DISCONNECTED
poolname 장치 풀의 이름

2. 자동화 상태를 가져오는 API

이 API를 사용하여 현재 자동화 상태(봇이 실행 중인지 여부)를 가져옵니다.

API 종료 지점

다음 엔드 포인트를 사용하여 API에 액세스하십시오.

<Enterprise 제어실 URL>/v2/activity/list

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

  1. 헤더에 다음 "X-Authorization" 및 "Content Type" 매개변수를 입력합니다.
  2. POST 메소드를 사용하여 본문에 다음 요청 페이로드를 입력합니다.
    { "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" } ] } ] } }
    • 예를 들어, 다음은 id가 2인 장치의 봇 실행 상태를 가져옵니다.
      { "filter": { "operator": "and", "operands": [ { "operator": "eq", "value": "2", "fileld": "deviceId" }, { "operator": "or", "operands": [ { "operator": "eq", "value": "RUNNING", "fileld": "status" } ] } ] } }
  3. 를 클릭하십시오.
  4. 응답 상태가 200인 경우 작업이 성공한 것입니다.
  5. 본문 데이터의 응답을 볼 수 있습니다.
    { "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 } ] }

매개변수 설명

매개변수 셜명
연산자
  • 없음
  • lt - 보다 작음
  • le - 보다 작거나 같음
  • eq - 같음
  • ne - 같지 않음
  • ge - 보다 크거나 같음
  • gt - 보다 큼
  • substring
  • 또는
  • not
배포 상태 - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT 또는 DEPLOY_FAILED
fileld 세부 정보가 필요한 봇의 상태
id 고유한 실행 ID
automationName 실행과 관련된 자동화의 이름
fileName 실행을 위해 배포된 봇의 이름
filePath 실행을 위해 배포된 봇의 상대 경로
type 작업 유형 - TASK
startDateTime 실행이 시작된 날짜 및 시간
endDateTime 실행이 종료된 날짜 및 시간
command 실행의 현재 명령
상태 실행의 현재 상태 - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT 또는 DEPLOY_FAILED
진척도 실행의 현재 진행률(%)
automationId 실행과 관련된 자동화의 ID
userId 봇이 배포되는 장치의 해당 사용자 ID
deviceId 봇이 배포되는 장치 ID
currentLine 실행을 위해 배포된 봇의 현재 행
totalLines 실행을 위해 배포된 봇의 총 행 수
fileId 실행을 위해 배포된 봇의 ID
modifiedBy 실행을 마지막으로 업데이트한 사용자의 ID
createdBy 실행과 관련된 자동화를 생성한 사용자의 ID
modifiedOn 실행이 마지막으로 업데이트된 날짜 및 시간
createdOn 실행이 생성된 날짜 및 시간
deploymentId 실행이 연결된 배포 ID
queueName 대기열 이름
queueId 대기열 ID
usingRdp 원격 데스크톱 프로세스를 사용하여 봇을 배포해야 하는지 여부 - true 또는 false
메시지 메시지(사용 가능한 경우)
canManage 현재 로그인한 사용자에게 실행을 관리할 권한이 있는지 여부 - true 또는 false

봇을 배포하는 API

의 파일 아이디를 사용하여 하나 이상의 장치에 장치 ID를 사용하여 봇을 배포합니다.

API 종료 지점

다음 엔드 포인트를 사용하여 API에 액세스하십시오.

<Enterprise 제어실 URL>/v2/automations/deploy

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

  1. 헤더에 다음 "X-Authorization" 및 "Content Type" 매개변수를 입력합니다.
  2. POST 메소드를 사용하여 본문에 다음 요청 페이로드를 입력합니다.
    { "fileId": "<file id of bot>", "deviceIds": [ "<device id 1>", "<device id 2>", "<device id 3>" ], "runWithRdp": "<true or false>" }
    • 예를 들어 다음은 ID가 1, 2 및 3인 장치에서 ID가 10인 봇을 배포하고 RDP를 사용하여 봇을 배포합니다.
      { "fileId": "10", "deviceIds": [ "1", "2", "3" ], "runWithRDP": true }
  3. 보내기를 클릭합니다.
  4. 응답 상태가 200인 경우 작업이 성공한 것입니다.
  5. 본문 데이터의 응답을 볼 수 있습니다.
    { "automationId": "6" }

매개변수 설명

매개변수 셜명
fileId 배포할 봇의 ID
deviceId 봇이 배포되는 장치 ID
runWithRDP 원격 데스크톱 프로세스를 사용하여 봇을 배포해야 하는지 여부 - true 또는 false
automationId 실행과 관련된 자동화의 ID

봇 실행을 모니터링하는 API

이 API를 사용하여 Bot Depolyment API를 사용하여 가져온 automationId를 기반으로 봇 진행 상황을 모니터링합니다.

주: 이 API는 장치에서 현재 실행 중인 봇의 목록을 가져오는데도 사용됩니다.

API 종료 지점

다음 엔드 포인트를 사용하여 API에 액세스하십시오.

<Enterprise 제어실 URL>/v2/activity/list

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

  1. 헤더에 다음 "X-Authorization" 및 "Content Type" 매개변수를 입력합니다.
  2. POST 메소드를 사용하여 본문에 다음 요청 페이로드를 입력합니다.
    { "filter": { "operator": "<eq, ne, lt, le, gt, or ge>", "value": "<automationId>", "fileld": "automationId" } }
    • 예를 들어 다음은 ID가 15인 자동화의 상태를 가져옵니다.
      { "filter": { "operator": "eq", "value": "6", "fileld": "automationId" } }
  3. 보내기를 클릭합니다.
  4. 응답 상태가 200인 경우 작업이 성공한 것입니다.
  5. 본문 데이터의 응답을 볼 수 있습니다.
    { "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 } ] }

매개변수 설명

매개변수 셜명
연산자
  • 없음
  • lt - 보다 작음
  • le - 보다 작거나 같음
  • eq - 같음
  • ne - 같지 않음
  • ge - 보다 크거나 같음
  • gt - 보다 큼
  • substring
  • 또는
  • not
배포 상태 - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT 또는 DEPLOY_FAILED
fileld 세부 정보가 필요한 봇의 ID
id 고유한 실행 ID
automationName 실행과 관련된 자동화의 이름
fileName 실행을 위해 배포된 봇의 이름
filePath 실행을 위해 배포된 봇의 상대 경로
type 작업 유형 - TASK
startDateTime 실행이 시작된 날짜 및 시간
endDateTime 실행이 종료된 날짜 및 시간
command 실행의 현재 명령
상태 실행의 현재 상태 - DEPLOYED, RUNNING, RUN_PAUSED, UNKNOWN, COMPLETED, RUN_FAILED, RUN_ABORTED, RUN_TIMED_OUT 또는 DEPLOY_FAILED
진척도 실행의 현재 진행률(%)
automationId 실행과 관련된 자동화의 ID
userId 봇이 배포되는 장치의 해당 사용자 ID
deviceId 봇이 배포되는 장치 ID
currentLine 실행을 위해 배포된 봇의 현재 행
totalLines 실행을 위해 배포된 봇의 총 행 수
fileId 실행을 위해 배포된 봇의 ID
modifiedBy 실행을 마지막으로 업데이트한 사용자의 ID
createdBy 실행과 관련된 자동화를 생성한 사용자의 ID
modifiedOn 실행이 마지막으로 업데이트된 날짜 및 시간
createdOn 실행이 생성된 날짜 및 시간
deploymentId 실행이 연결된 배포 ID
queueName 대기열 이름
queueId 대기열 ID
usingRdp 원격 데스크톱 프로세스를 사용하여 봇을 배포해야 하는지 여부 - true 또는 false
메시지 메시지(사용 가능한 경우)
canManage 현재 로그인한 사용자에게 실행을 관리할 권한이 있는지 여부 - true 또는 false

API 응답 코드

HTTP (s) 상태 코드 응답 - 설명 수정 조치
200/204 작업이 성공적으로 완료되었습니다. NA
304 적용된 변경사항 없음 필요에 따라 업데이트
400 잘못된 요청 매개 변수 유효한 매개 변수로 다시 시도하십시오.
401 인증 필요 인증 매개변수를 입력하십시오. 예: X-Authorization 키
403 무단 액세스 Enterprise 제어실 액세스 권한이 있는지 확인하십시오.
404 찾을 수 없음 요청 페이로드가 Enterprise 제어실에서 사용 가능한지 확인하십시오.
409 충돌 제공된 매개변수가 올바른지 확인하십시오.
500 내부 서버 오류 서버가 작동되어 실행 중인지 확인하십시오.
501 권한 오류 필요한 권한이 있는지 확인하십시오.

감사 로그

API를 사용한 배포 활동은 Enterprise 제어실 감사 로그 페이지에 로깅됩니다. Enterprise 제어실관리자 또는 모든 사람의 감사 로그 작업 보기 권한이 있는 사용자는 감사 항목을 볼 수 있습니다.

다음 그림은 Deploy API를 사용하여 봇을 배포하기위한 감사 로그 세부 정보 페이지의 예입니다.

피드백을 보내주십시오