자동화 센터 API
자동화 센터 API는 로봇, 프로세스 및 실행 작업과 관련된 데이터를 생성하고 업데이트하는 엔드포인트를 제공합니다. 이 API를 활용하면 자동화 워크플로우의 세부 정보를 대시보드에 자동화 센터 통합하고 반영할 수 있습니다.
- 로봇: 봇 프로세스를 실행하는 소프트웨어 에이전트입니다. RPA 로봇은 유인 또는 무인 모드에서 작동할 수 있습니다.
- 프로세스: 특정 로봇에서 실행되는 RPA 워크플로우의 인스턴스입니다. 프로세스를 고유하게 식별하려면 프로세스 ID와 로봇 ID를 모두 지정해야 합니다.
- 실행: 한 자원에서 다른 자원으로 정보 전송(예: 이메일에서 스프레드시트로 데이터 복사)과 같이 프로세스 내에서 수행되는 개별 작업입니다.
API 사용 방법:
API를 사용하여 로봇, 프로세스 및 실행을 포함한 외부 공급업체 RPA 도구에서 로 자동화 센터데이터를 보낼 수 있습니다.
- 로봇 데이터를 보냅니다.
- 전송된 로봇에 연결된 프로세스 데이터를 전송합니다.
- 해당 로봇 및 프로세스를 참조하는 실행 데이터를 보냅니다.주:연결된 로봇 및 프로세스가 이미 캡처되지 자동화 센터 않은 실행 데이터는 대시보드에 표시되지 않습니다.
- 이벤트 보존: 이 API를 사용하여 생성된 이벤트는 14일 후에 인스턴스에서 자동으로 제거됩니다(기본 설정).
- 기록 제한: 각 API 호출은 최대 2,000개의 기록을 처리할 수 있습니다. 이 제한은 변경할 수 없습니다.
- 이벤트 삭제: 이 API는 이벤트 삭제를 지원하지 않습니다.
이 API를 사용하려면 플러그인이 자동화 센터 활성화되어 있어야 하며 사용자에게 sn_as.automation_technical_user 또는 sn_ac.automation_admin 역할이 있어야 합니다.
자동화 센터 - POST /sn_ac/automation/rpa
로봇, 프로세스 및 실행 이벤트를 생성합니다.
이러한 이벤트는 프로세스 자동화를 제공합니다. 이는 개요 및 실행 자동화 센터 대시보드에 표시되어 여러 RPA 벤더의 출력을 측정하고 모니터링합니다.
URL 형식
버전이 지정된 URL: /api/sn_ac/{api_version}/automation/rpa
기본 URL: /api/sn_ac/v1/automation/rpa
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 안 함 |
| 이름 | 설명 |
|---|---|
| departmentName | 프로세스 및 로봇 이벤트 유형만 해당됩니다. 이벤트가 속한 부서의 이름입니다. 이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 |
| domainId | 이벤트가 속한 도메인의 Sys_id입니다. 이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 |
| endtime | 실행 이벤트 유형만. 실행의 종료 시간입니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 end_time 필드에 저장됩니다. 형식: YYYY-MM-DD HH:MM:SS 데이터 유형: 문자열 |
| 환경 | 실행 이벤트 유형만. URL과 같은 실행 환경입니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 environment 필드에 저장됩니다. 주: 이 값은 인스턴스에서 ServiceNow 사용되지 않으며 구현에 필요한 값을 포함할 수 있습니다. 데이터 유형: 문자열 |
| errorMessage | 실행 이벤트 유형만. 오류 메시지 로그의 이름입니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 메시지 필드에 저장됩니다. 데이터 유형: 문자열 |
| eventName | 필수 이벤트 유형의 이름입니다. 이 값은 처리할 이벤트의 유형을 결정합니다. 유효한 값(대/소문자 구분):
데이터 유형: 문자열 |
| ID | 필수 관련 이벤트의 고유한 숫자 식별자입니다. 이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 숫자(정수) |
| 이름 | 프로세스 및 로봇 이벤트 유형만 해당됩니다. 필수입니다. 이벤트의 이름입니다. 이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 |
| 우선순위 | 실행 이벤트 유형만. 실행의 우선순위입니다. 유효한 값(대/소문자 구분): 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 우선순위 필드에 저장됩니다.
데이터 유형: 문자열 기본값: 없음 - 대시보드에 표시되지 않습니다. |
| processId | 실행 이벤트 유형만. 필수입니다. 실행을 실행할 프로세스의 고유 식별자입니다. 이 값은 기본 봇 프로세스 [cmdb_ci_base_rpa_process] 테이블의 해당 프로세스 기록에 대한 correlation_id 필드에 있습니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 자동화 필드에 저장됩니다. 데이터 유형: 문자열 |
| robotId | 실행 이벤트 유형만. 필수입니다. 실행을 실행할 로봇의 고유 식별자입니다. 이 값은 기본 로봇 [cmdb_ci_base_rpa_robot] 테이블의 해당 로봇 기록의 correlation_id 필드에 있습니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 로봇 필드에 저장됩니다. 데이터 유형: 문자열 |
| 소스 | 필수 이벤트가 속한 소스입니다(예: "servicenow_rpa"). 이 값은 자동화 소스 [sn_ac_automation_source] 테이블의 internal_name 필드에 있습니다. 이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 |
| starttime | 실행 이벤트 유형만. 실행의 시작 시간입니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 start_time 필드에 저장됩니다. 데이터 유형: 문자열 형식: YYYY-MM-DD HH:MM:SS |
| 상태 | 로봇 및 실행 이벤트 유형만 해당됩니다. 관련 이벤트의 상태입니다. 로봇에 유효한 값(대/소문자 구분):
실행에 사용할 수 있는 값(대/소문자 구분):
이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 |
| 상태 | 이벤트 유형만 처리합니다. 필수입니다. 프로세스의 상태입니다. 가능한 값(대/소문자 구분): 이 값은 기본 봇 프로세스[cmdb_ci_base_rpa_process] 테이블의 life_cycle_stage_status 필드에 저장됩니다.
데이터 유형: 문자열 |
| triggeredBy | 실행 이벤트 유형만. 실행의 트리거 소스입니다. 이 값은 자동화 실행 [sn_ac_automation_execution] 테이블의 trigger_by 필드에 저장됩니다. 주: 이 값은 인스턴스에서 ServiceNow 사용되지 않으며 구현에 필요한 값을 포함할 수 있습니다. 데이터 유형: 문자열 |
| 유형 | 프로세스 및 로봇 이벤트 유형만 해당됩니다. 프로세스에 필요, 로봇의 경우 선택 사항입니다. 수행할 처리 유형입니다. 유효한 값(대/소문자 구분):
이 값은 이벤트 유형에 따라 다음 테이블에 저장됩니다.
데이터 유형: 문자열 기본값: 로봇의 경우 무인 |
| 버전 | 로봇 이벤트 유형만 해당합니다. 로봇의 버전입니다. 이 값은 기본 로봇 [cmdb_ci_base_rpa_robot] 테이블의 버전 필드에 저장됩니다. 데이터 유형: 문자열 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 실패. 필수 필드가 누락되었거나 요청에 잘못된 값이 포함되어 있어 요청이 거부되었습니다. 관련된 오류 메시지는 실패의 이유를 설명합니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 결과 | 요청이 성공하면 비어 있습니다. 실패의 경우 추가 정보가 제공됩니다. 데이터 유형: 객체 예를 들어 기록 1, 2, 3에 모두 필수 필드가 없는 경우 다음과 유사한 메시지가 반환됩니다. |
cURL 요청
다음 코드 예제는 세 개의 로봇 이벤트 유형 기록을 게시하는 방법을 보여줍니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 8001,
name: "Quotes system Automation Robot",
state: "Available",
status: "In Use",
version: 5.6,
departmentName: "Customer Support",
type: "Unattended",
source: "servicenow_rpa",
eventName: "robot"
},
{
id: 8002,
name: "Invoice Matching Robot",
state: "Responsive",
status: "In Maintenance",
version: 3,
departmentName: "HR",
type: "Unattended",
source: "servicenow_rpa",
eventName: "robot"
},
{
id: 8003,
name: "Data Reconciliation Robot",
state: "Busy",
status: "Retired",
version: 2,
departmentName: "Finance",
type: "Unattended",
source: "servicenow_rpa",
eventName: "robot"
}]
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제에서는 세 가지 프로세스 이벤트 형식 기록을 게시하는 방법을 보여 줍니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 9001,
name: "RPA Execution Process",
status: "In Maintenance",
type: "Attended",
departmentName: "Customer Support",
source: "servicenow_rpa",
eventName: "process"
},
{
id: 9002,
name: "Customer Onboarding",
status: "In Use",
type: "Attended",
departmentName: "Finance",
source: "servicenow_rpa",
eventName: "process"
},
{
id: 9003,
name: "Data Reconciliation",
status: "Retired",
type: "Unattended",
departmentName: "HR",
source: "servicenow_rpa",
eventName: "process"
}]
}" \
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제에서는 세 개의 실행 이벤트 형식 레코드를 게시하는 방법을 보여 줍니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 7001,
name: "Customer Onboarding",
starttime: "2022-03-18 00:49:13",
endtime: "2022-03-20 00:58:03",
state: "Running",
priority: "Critical",
environment: "system",
triggeredBy: "Schedule",
processId: 9001,
robotId: 8001,
source: "servicenow_rpa",
eventName: "execution"
},
{
id: 7002,
name: "Data Reconciliation",
starttime: "2022-04-30 00:19:11",
endtime: "2022-05-02 00:41:35",
state: "Error",
priority: "Low",
environment: "system",
triggeredBy: "API",
processId: 9002,
robotId: 8002,
source: "servicenow_rpa",
eventName: "execution"
},
{
id: 7003,
name: "Customer Onboarding",
starttime: "2022-01-22 02:38:53",
endtime: "2022-01-23 02:50:44",
state: "Queued",
priority: "Moderate",
environment: "system",
triggeredBy: "Schedule",
processId: 9003,
robotId: 8003,
source: "servicenow_rpa",
eventName: "execution"
}]
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제에서는 프로세스를 만들거나 업데이트하는 방법을 보여 줍니다. 프로세스가 실행되는 데 필요한 모든 필수 매개변수를 "프로세스" 세트와 함께 eventName 전달하여 프로세스를 생성합니다. 프로세스를 id만드는 데 필요한 필수 매개변수는 , , type, statusname, 및 source입니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 9001,
name: "RPA Execution Process",
status: "In Maintenance",
type: "Attended",
departmentName: "Customer Support",
source: "servicenow_rpa",
eventName: "process"
}]
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제에서는 프로세스를 게시하는 방법을 보여 줍니다. 매개변수 세트를 status "게시됨"으로 전달하여 프로세스를 게시할 수 있습니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 9002,
name: "RPA Execution Process",
status: "Published",
type: "Attended",
departmentName: "Customer Support",
source: "servicenow_rpa",
eventName: "process"
}]
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제는 로봇을 만들거나 업데이트하는 방법을 보여줍니다. 로봇에 대한 모든 필수 매개변수를 "robot"으로 설정된 것과 eventName 함께 전달하여 로봇을 만듭니다. 로봇id을 만드는 데 필요한 필수 매개변수는 , , statusname, source및 입니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 8001,
name: "Quotes system Automation Robot",
state: "Available",
status: "In Use",
version: 5.6,
departmentName: "Customer Support",
type: "Unattended",
source: "servicenow_rpa",
eventName: "robot"
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None
cURL 요청
다음 코드 예제에서는 실행을 만들거나 업데이트하는 방법을 보여 줍니다. 실행에 대한 모든 필수 매개변수를 "실행"에 대한 세트와 eventName 함께 전달하여 실행을 생성합니다. 실행을 만드는 데 필요한 필수 매개변수는 id, , processIdrobotId, 및 source입니다.
curl "https://instance.servicenow.com/api/sn_ac/automation/rpa" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data "{
records: [{
id: 7001,
name: "Customer Onboarding",
starttime: "2022-03-18 00:49:13",
endtime: "2022-03-20 00:58:03",
state: "Running",
priority: "Critical",
environment: "http://acqa.servicenow.com",
triggeredBy: "Schedule",
processId: 9001,
robotId: 8001,
source: "servicenow_rpa",
eventName: "execution",
errorMessage:"Error due to Inactivity"
}]
} "\
--user "username":"password"
이 엔드포인트는 성공 시 HTTP 상태 코드만 반환하고 실패 시 HTTP 상태 코드와 오류 메시지를 반환합니다.
None