CdmApplicationsApi
CdmApplicationsAPI는 구성 데이터를 작업 공간 UI에 있는 구성요소, 컬렉션, 배포 가능 항목 및 구성요소 변수 폴더에 uploadzoominsoftware.io/utah-devops/ 할 수 있는 엔드포인트를 DevOps 구성 제공합니다. 또한 배포 가능 구성 데이터를 파이프라인으로 DevOps 익스포트하고 공유 구성요소 및 공유 애플리케이션을 관리할 수 있는 엔드포인트도 있습니다.
익스포트 및 업로드 엔드포인트는 비동기 큐 구현을 사용합니다. 이 유형의 구현에서는 먼저 원하는 익스포트 또는 업로드 요청 엔드포인트를 호출합니다. 이러한 엔드포인트는 요청을 큐에 추가하고 요청 식별자를 반환합니다. 그런 다음 이 요청 식별자를 사용하여 적절한 상태 엔드포인트(업로드용과 익스포트용으로 하나씩)를 호출하여 업로드/익스포트 상태를 가져옵니다. 익스포트 요청의 경우 익스포트가 완료되면 익스포트 컨텐츠를 요청할 수도 있습니다.
이 API는 애플리케이션 기록의 단순 검색을 수행하는 엔드포인트를 제공하지 않습니다. 이러한 기록을 검색하려면 테이블 API를 사용하십시오.
- 스크립팅된 REST CDM 뷰 ACL(sn_cdm.cdm.viewer)
- 스크립팅된 REST CDM 편집기 ACL(sn_cdm.cdm_editor)
또한 구성 데이터 관리 인스턴스에서 이 API를 사용할 수 있으려면 (CDM) 플러그인을 활성화해야 합니다.
작업 공간 UI에 구성 데이터 관리DevOps 구성 대한 자세한 내용은 구성 데이터 업로드를 참조하세요.
공유 구성요소 및 공유 라이브러리에 대한 자세한 내용은 애플리케이션 간 구성요소 공유 - 구성요소 라이브러리를 참조하십시오.
CdmApplicationsApi - DELETE /sn_cdm/applications/deployables
지정된 구성 데이터 관리(CDM) 배포 가능 항목을 삭제합니다.
이 엔드포인트의 호출자에게 CDM 관리자 역할이 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables
기본 URL: /api/sn_cdm/applications/deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 배포 가능 항목이 연결된 CDM 애플리케이션의 이름입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| 이름 | 삭제할 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 없음 |
cURL 요청
다음 코드 예제에서는 배포 가능 항목을 제거하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password1'
배포 가능 항목을 성공적으로 삭제하면 HTTP 상태 코드 외에는 응답이 반환되지 않습니다.
None - results defined by the HTTP status code
CdmApplicationsApi - 삭제 /sn_cdm/applications/shared_components
지정 구성 데이터 관리 된(CDM) 애플리케이션에서 공유 구성요소 사용 참조를 제거합니다.
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 지정된 공유 구성요소 연결을 제거할 애플리케이션의 이름입니다. 지정된 애플리케이션의 유형 필드가 "shared_library"로 설정되어 있어야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| changesetNumber | 필수 |
| sharedComponentName | 필수 지정된 애플리케이션에서 제거할 공유 구성요소의 고유 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 결과 | 비어 있습니다. HTTP 상태 코드는 호출 결과를 나타냅니다. |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제는 "App1" 애플리케이션에서 "paymentService-V1.1" 공유 구성 요소를 삭제하는 방법을 보여줍니다.
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?appName=App1&sharedComponentName=paymentService-V1.1&changesetNumber=Chset-25" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password'
응답:
""
CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content
지정된 구성 데이터 익스포트 요청과 연결된 컨텐츠를 반환합니다.
엔드포인트에서 완전한 응답을 받은 후에만 이 엔드포인트를 호출합니다 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status . 익스포트가 완료되기 전에 이 엔드포인트를 호출하면 400 상태 오류가 반환됩니다.
URL 형식
버전 관리된 URL: /api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/content
기본 URL: /api/sn_cdm/applications/deployables/exports/{export_id}/content
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| export_id | 반환할 구성 데이터의 익스포트 요청에 대한 고유 식별자입니다. 이 값은 엔드포인트에서 반환됩니다 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports . |
| 이름 | 설명 |
|---|---|
| 안 함 |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 익스포트 중에 발생한 오류에 대한 설명입니다. 데이터 유형: 문자열 |
| export_id | 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다. 데이터 유형: 문자열 |
| exporter_result | 지정된 구성 데이터 익스포트의 컨텐츠입니다. 데이터 유형:
|
| request_id | 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다. 데이터 유형: 문자열 |
| 상태 | 지정된 익스포트의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 테이블: CDM 요청 큐 [sn_cdm_request_queue] 테이블의 상태 열입니다. |
cURL 요청
다음 예제에서는 ID가 3ab14a7d53b1301096edddeeff7b12f인 익스포트 요청의 구성 데이터를 요청합니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/content" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
다음은 가능한 반환 결과를 보여줍니다.
// Successful completion of the export request
{
"result": {
"export_id": "3ab14a7d53b1301096edddeeff7b12f"
"exporter_result": "DEP1.COMP.cdi_1=cdi-1-value"
}
}
// Response when an incorrect export_id is passed. Note: Status code is 200.
{
"result": {
"request_id": "3ab14a7d53b1301096edddeeff7b12e",
"state": "error",
"errors": "Invalid requestId '3ab14a7d53b1301096edddeeff7b12fe'",
"export_id": "3ab14a7d53b1301096edddeeff7b12e"
}
}
CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status
지정된 구성 데이터 익스포트 요청의 현재 상태를 반환합니다.
엔드포인트를 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports 사용하여 익스포트 요청을 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/status
기본 URL: /api/sn_cdm/applications/deployables/exports/{export_id}/status
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| export_id | 상태가 반환될 익스포트 요청의 Sys_id입니다. 이 값은 엔드포인트에서 반환됩니다 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports . |
| 이름 | 설명 |
|---|---|
| 안 함 |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 익스포트 중에 발생한 오류에 대한 설명입니다. 데이터 유형: 문자열 |
| export_id | 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다. 데이터 유형: 문자열 |
| exporter_result | 관련 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| exporter_result.errors | 익스포트 중에 발생한 오류에 대한 설명입니다. 데이터 유형: 배열 |
| exporter_result.execution_id | 익스포터 실행 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: CDM 익스포터 실행 [sn_cdm_exporter_execution] |
| exporter_result.state | 지정된 익스포트의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 테이블: CDM 익스포터 실행 [sn_cdm_exporter_execution] |
| request_id | 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다. 데이터 유형: 문자열 |
| 상태 | 지정된 익스포트의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 테이블: CDM 요청 큐 [sn_cdm_request_queue] 테이블의 상태 열입니다. |
cURL 요청
다음 예제에서는 ID가 3ab14a7d53b1301096edddeeff7b12f인 익스포트 상태를 요청합니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/status" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
다음은 가능한 반환 결과입니다.
// Successful completion of the export request
{
"result": {
"state": "completed",
"export_id": "3ab14a7d53b1301096edddeeff7b12f0"
}
}
// Response when an incorrect export_id is passed. Note: Status code is 200.
{
"result": {
"request_id": "3ac8e1b05311301096edddeeff7b123c",
"state": "error",
"errors": "Invalid requestId '3ac8e1b05311301096edddeeff7b123c'",
"export_id": "3ac8e1b05311301096edddeeff7b123c"
}
}
// Response when the export encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
{
"result": {
"state": "completed",
"export_id": "24536c3353f9301096edddeeff7b12b1",
"exporter_result": {
"execution_id": "81536c3353f9301096edddeeff7b129e",
"state": "failure",
"errors": [
"Snapshot 'SNA-001-published-non_compliant' has not passed validation. All snapshots of deployable '/ApplicationA/deployables/DEP3' are required to pass validation"
]
}
}
}
CdmApplicationsApi - GET /sn_cdm/applications/shared_components
지정된 애플리케이션에서 사용하는 공유 구성요소 목록을 반환합니다. 새 버전을 사용할 수 있는 공유 구성요소만 반환하도록 지정할 수도 있습니다.
이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components
기본 URL: /api/sn_cdm/applications/shared_components
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 반환하려는 공유 구성요소 목록이 있는 애플리케이션의 이름입니다. 애플리케이션의 유형 필드를 shared_library로 설정해야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| withUpdatesOnly | 사용 가능한 새 업데이트된 버전이 있는 공유 구성요소만 반환할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| currentVersion | CDM 애플리케이션의 현재 버전입니다. 데이터 유형: 숫자(정수) |
| currentVersionName | 현재 사용 중인 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 |
| 설명 | 공유 구성요소에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 이름 | 공유 구성요소의 고유 이름입니다. 데이터 유형: 문자열 |
| sharedLibraryName | 공유 구성요소가 속한 공유 라이브러리의 이름입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| updateVersionName | 업데이트에 사용할 수 있는 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 이 엔드포인트를 호출하여 "App1"에서 사용하는 새 버전이 있는 공유 구성 요소를 검색하는 방법을 보여 줍니다.
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?updatesOnly=true&appName=App1" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": [
{
"name": "Component_Name",
"description": "”,
"sharedLibraryName": "Shared Library",
"currentVersion": "2",
"currentVersionName": "Component_A-v2.shc",
"updateVersionName": "Component_A-v3.shc"
}
]
}
CdmApplicationsApi - GET /sn_cdm/applications/shared_libraries/components/applications
지정된 라이브러리 내에 있는 공유 구성요소와 이를 사용하는 애플리케이션의 맵을 반환합니다.
이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_libraries/components/applications
기본 URL: /api/sn_cdm/applications/shared_libraries/components/applications
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| sharedComponentName | 필수 맵에 포함할 공유 구성요소의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| sharedLibraryName | 필수 맵에 포함할 공유 라이브러리의 이름입니다. 지정된 애플리케이션의 유형 필드가 "shared_library"로 설정되어 있어야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 설명 | 공유 구성요소를 사용한 애플리케이션에 대한 설명 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| managed_by_group | 애플리케이션을 관리할 수 있는 그룹 sys_ids의 쉼표로 구분된 목록입니다. 데이터 유형: 문자열 |
| 이름 | 구성요소를 사용하는 애플리케이션의 고유한 이름입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| sys_id | 공유 구성요소를 활용하는 애플리케이션의 Sys_id입니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 이 엔드포인트를 호출하여 "paymentService-V1.1" 공유 구성 요소를 사용하는 "OracleG-Library-10" 공유 라이브러리의 애플리케이션을 보여주는 맵을 검색하는 방법을 보여 줍니다.
curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_libraries/components/applications?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": {
"component_name": [
{
"name": "App Name",
"description": "desc",
"managed_by_group": null,
"sys_id": "4e7808bb1b371110636e0fe0604bcb08"
},
{
"name": "Config App",
"description": "desc",
"managed_by_group": null,
"sys_id": "55a75cfb1b771110636e0fe0604bcb5c"
},
{
"name": "Database App",
"description": "desc",
"managed_by_group": null,
"sys_id": "2eb7503f1b771110636e0fe0604bcb06"
}
]
}
}
CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}
지정된 구성 데이터 업로드 요청의 현재 상태를 반환합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/upload-status/{upload_id}
기본 URL: /api/sn_cdm/applications/upload-status/{upload_id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| upload_id | 상태가 반환될 업로드 요청의 Sys_id입니다. 이 값은 다양한 CdmApplications 업로드 요청 엔드포인트에서 반환됩니다. |
| 이름 | 설명 |
|---|---|
| 안 함 |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 업로드 중 발생한 오류에 대한 설명입니다. 데이터 유형: 문자열 |
| 출력 | 업로드된 데이터에 대한 설명 또는 업로드 중에 오류가 발생한 경우 발생한 오류를 설명하는 오류 메시지입니다. 데이터 유형: 문자열 배열 |
| output.auto_validate | 커밋 후 확인을 호출할지 여부를 나타냅니다. 데이터 유형: 문자열 |
| output.cdm_application | 업로드가 수행된 애플리케이션의 이름입니다. 데이터 유형: 문자열 |
| output.committed_at | 업로드된 콘텐츠가 커밋된 날짜 및 시간입니다. 데이터 유형: 문자열 |
| output.committed_by | 커밋을 수행한 엔터티의 레코드 Sys_id입니다. 데이터 유형: 문자열 |
| 출력.설명 | 현재 사용되지 않습니다. 데이터 유형: 문자열 |
| output.last_conflict_detection_time | 날짜 및 시간 상충 탐지 발동입니다. 데이터 유형: 문자열 |
| 출력.번호 | 변경 세트의 고유 번호입니다. 데이터 유형: 문자열 |
| output.publish_option | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요. 데이터 유형: 문자열 기본값: publish_none 주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. |
| output.snapshot_description | 연결된 스냅샷에 대한 설명입니다. 데이터 유형: 문자열 |
| output.snapshot_name | 연결된 스냅샷의 이름입니다. 데이터 유형: 문자열 |
| 출력.상태 | 업로드 콘텐츠의 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| output.sys_created_by | 기록을 생성한 엔터티의 Sys_id입니다. 데이터 유형: 문자열 |
| output.sys_id | 변경 세트를 포함하는 기록의 Sys_id입니다. 데이터 유형: 문자열 |
| 출력.제목 | 업로드의 일부로 생성된 변경 세트의 제목입니다. 데이터 유형: 문자열 |
| processing_state | 업로드 요청의 현재 처리 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| 상태 | 업로드 요청의 현재 상태입니다. 가능한 값:
|
| 유형 | 업로드 요청의 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 ID가 5560a6895326301096edddeeff7b1230인 업로드 상태 요청을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/upload-status/5560a6895326301096edddeeff7b1230" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
다음은 가능한 반환 결과입니다.
// Successful completion of the upload request
{
"result": {
"type": "upload_and_commit",
"state": "completed",
"output": {
"sys_id": "be681dc95362301096edddeeff7b12ba",
"number": "Chset-102",
"title": "admin2021-09-10 08:09:07",
"description": null,
"committed_at": "2021-09-10 20:23:37",
"committed_by": "6816f79cc0a8016401c5a33be04be441",
"sys_created_by": "admin",
"state": "committed",
"publish_option": "publish_none",
"auto_validate": false,
"snapshot_name": null,
"snapshot_description": null,
"cdm_application": "Demo_App1631126164773",
"last_conflict_detection_time": "1631305417894"
},
"processing_state": "PROCESSED",
"upload_id": "5560a6895326301096edddeeff7b1230"
}
}
// Response when an incorrect upload_id is passed. Note: Status code is 200.
{
"result": {
"state": "error",
"errors": "Invalid requestId '5560a6895326301096edddeeff7b1240'",
"upload_id": "5560a6895326301096edddeeff7b1240"
}
}
// Response when the upload encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
{
"result": {
"type": "upload_and_commit",
"state": "error",
"output": "Error encountered during execution of request.\nError: Node 'dbSettings' of type 'sg_cdm_node_component' cannot create child 'dbSettings' of type 'sg_cdm_node_folder'",
"processing_state": "PROCESSED",
"upload_id": "272f8a415326301096edddeeff7b1232"
}
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables
새 배포 가능 항목을 생성하고 지정된 구성 데이터 관리 (CDM) 애플리케이션에 자동으로 연결합니다.
개발, 테스트 또는 프로덕션의 세 가지 환경 유형 중 하나에 대해 배포 가능 항목을 생성할 수 있습니다.
이 엔드포인트에 액세스하려면 호출자에게 CDM 관리자 역할이 있어야 합니다.
여러 배포 가능 항목을 생성해야 하는 경우 엔드포인트를 CdmApplicationsApi - POST /sn_cdm/applications/deployables/create 사용합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables
기본 URL: /api/sn_cdm/applications/deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 배포 가능 항목과 연결할 기존 활성 CDM 애플리케이션의 이름입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 환경 유형 | 필수 배포 가능 항목의 환경 유형입니다. 유효한 값(대/소문자 구분):
주: 배포 가능 환경 유형은 생성 후 변경할 수 없습니다. 데이터 유형: 문자열 |
| 이름 | 필수 CDM 배포 가능 항목의 이름입니다. 255자를 초과하면 안 됩니다. 허용되는 기본 문자는 0-9, A-Z, a-z, _,-,.,%, $, 공백, :, #입니다. 데이터 유형: 문자열 최대 길이: 255자 허용 가능한 문자: 0-9, A-Z, a-z, _, -, ., %, $, 공백, :, # |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| cdi_count | 연결된 CDM 애플리케이션에 포함된 구성 데이터 항목(CDI) 수입니다. 데이터 유형: 숫자(정수) |
| cdi_usage | 배포 가능 항목에서 사용하는 CDI의 백분율입니다. 데이터 유형: 숫자(정수) |
| cdm_app | 배포 가능 항목과 연결된 CDM 애플리케이션 객체입니다. 데이터 유형: 객체 |
| cdm_app.link | REST 테이블 API를 사용하여 CDM 애플리케이션 기록에 액세스하는 데 사용할 호출입니다. 데이터 유형: 문자열 |
| cdm_app.value | 연결된 CDM 애플리케이션 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| cdm_ci | 배포 가능 항목과 연결된 애플리케이션 서비스 객체입니다. 데이터 유형: 객체 |
| cdm_ci.link | REST 테이블 API를 사용하여 애플리케이션 서비스 기록에 액세스하는 데 사용할 호출입니다. 데이터 유형: 문자열 |
| cdm_ci.value | 연결된 애플리케이션 서비스 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: 구성 항목 [cmdb_ci] |
| 설명 | 생성된 CDM 배포 가능 항목에 대한 설명입니다. 데이터 유형: 문자열 |
| environment_type | 배포 가능 항목의 환경 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| 오류 | 처리 중 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 이름 | CDM 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| 노드 | 배포 가능 노드에 대한 상세 정보입니다. 데이터 유형: 객체 |
| node.link | REST 테이블 API를 사용하여 배포 가능 노드 기록에 액세스하는 데 사용할 호출입니다. 데이터 유형: 문자열 |
| 노드.값 | 배포 가능 노드 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| snapshot_version_counter | 배포 가능 항목에 대해 생성된 스냅샷 수입니다. 데이터 유형: 숫자(정수) |
| 상태 | 배포 가능 항목의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| sys_created_by | CDM 배포 가능 항목을 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_created_on | CDM 배포 가능 항목이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-mm-DD hh:mm:ss |
| sys_id | 생성된 배포 가능 항목의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| sys_updated_by | CDM 배포 가능 항목을 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_updated_on | CDM 배포 가능 항목이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY-mm-DD hh:mm:ss |
cURL 요청
다음 코드 예제에서는 배포 가능 항목을 생성하고 CDM 애플리케이션에 연결하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?name=Dep-1&returnFields=name%2Csys_id%2Cstate&appName=testApp&envType=Test" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password1'
반환 결과:
{
"result": [
{
"cmdb_ci": {
"value": "f5b9e00b53901110a1d3ddeeff7b12b8",
"link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8"
},
"cdi_count": "0",
"snapshot_version_counter": "0",
"description": null,
"sys_updated_on": "2022-06-29 12:53:57",
"environment_type": "Test",
"node": {
"value": "7db9e00b53901110a1d3ddeeff7b12b6",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/7db9e00b53901110a1d3ddeeff7b12b6"
},
"sys_id": "39b9e00b53901110a1d3ddeeff7b12b7",
"sys_updated_by": "admin",
"cdm_app": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_created_on": "2022-06-29 12:53:57",
"cdi_usage": "0",
"name": "Dep-2",
"state": "active",
"sys_created_by": "admin"
}
]
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables/create
하나 이상의 새 배포 가능 항목을 생성합니다.
- 애플리케이션 모델(CI 서비스)에 수동으로 연결해야 하는 배포 가능 항목입니다.
- 동적으로 생성된 새 CI 서비스(애플리케이션 모델)에 자동으로 연결되는 배포 가능 항목입니다.
개발, 테스트 또는 프로덕션의 세 가지 환경 유형 중 하나에 대해 배포 가능 항목을 생성할 수 있습니다. 여러 배포 가능 항목을 만들 때 자동 생성된 배포 가능 항목 이름은 DeployableType_Number 패턴을 따르며, 여기서 번호 는 새 배포 가능 항목 생성을 기준으로 실행 중인 시퀀스 번호입니다. 예를 들어 엔드포인트 호출에서 테스트 유형의 배포 가능 항목을 세 개 만들면 이름이 Test_1, Test_2 및 Test_3으로 지정됩니다. 그런 다음 엔드포인트를 다시 호출하고 다른 테스트 배포 가능 항목을 만들면 자동 생성 이름이 Test_4됩니다. 이 번호는 배포 가능 항목이 삭제되더라도 다시 사용되지 않습니다.
URL 형식
버전 관리된 URL: /api/sn_cdm/{api_version}/applications/deployables/create
기본 URL: /api/sn_cdm/applications/deployables/create
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appSysId | 필수 배포 가능 항목과 연결할 활성 CDM 애플리케이션의 Sys_id입니다. 데이터 유형: 문자열 |
| 자동 커넥트 | 필수 새로 생성된 배포 가능 항목을 동적으로 생성된 애플리케이션 모델에 자동으로 연결할지 여부를 결정하는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| 환경 유형 | 필수 배포 가능 항목의 환경 유형입니다. 유효한 값(대/소문자 구분):
주: 배포 가능 환경 유형은 생성 후 변경할 수 없습니다. 데이터 유형: 문자열 |
| 수량 | 필수 생성할 배포 가능 항목 수입니다. 데이터 유형: 숫자 |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 결과 | 생성된 배포 가능 항목의 Sys_ids입니다. 데이터 유형: 배열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 예는 단일 배포 가능 항목을 생성하고 이를 기존 CDM 애플리케이션과 연결하는 방법을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/create?envType=Production&appSysId=5e118055b712011054c1e5a6ce11a9d4&quantity=5&autoConnect=true" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
다음은 이 호출에 대한 가능한 성공 및 오류로서의 응답을 보여줍니다.
// Successful completion of the upload request
{
"result": [
"8ba43a3db7d6011054c1e5a6ce11a9a4",
"93a47a3db7d6011054c1e5a6ce11a90d",
"dba47a3db7d6011054c1e5a6ce11a91d",
"6fa47a3db7d6011054c1e5a6ce11a921",
"efa47a3db7d6011054c1e5a6ce11a925"
]
}
// Error response
{
"error": {
"message": "Error: CDM Application with SysID 5e118055b712011054c1e5a6ce11a9d1 was not found. (sys_script_include.8cf0fbf453626010a1d3ddeeff7b12fe.script; line 211)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports
지정된 애플리케이션과 하나 이상의 배포 가능 항목에 대한 현재 스냅샷을 CDM 익스포터 캐시[sn_cdm_exporter_cache] 테이블로 익스포트하는 요청을 제출합니다.
이 엔드포인트는 요청에 대한 고유 식별자를 반환하며, 이 식별자를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status 호출하여 익스포트 상태를 검색할 수 있습니다. 익스포트가 완료되면 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content 사용하여 연결된 애플리케이션의 구성 데이터를 검색할 수 있습니다.
스냅샷은 구성 변경이 커밋된 시점의 배포 가능 항목에 대한 전체 데이터 모델입니다. 여기에는 포함된 모든 구성요소, 컬렉션 및 변수뿐만 아니라 배포 가능 항목별 vars 및 재정의가 포함됩니다. 배포 가능 항목에 대한 자세한 내용은 배포 가능 항목 생성 및 업데이트를 참조하세요.
URL 형식
버전 관리 URL: /api/sn_cdm/{api_version}/applications/deployables/exports
기본 URL: /api/sn_cdm/applications/deployables/exports
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| additionalDeployables | 익스포트할 기본이 아닌 배포 가능 항목입니다. 데이터 유형: 객체 배열 예: 기본값: 빈 배열 - [] |
| additionalDeployables.app_이름 | 배열이 지정된 경우 additionalDeployables 필요합니다. 구성 데이터를 익스포트하려는 배포 가능 항목과 연결된 애플리케이션의 이름입니다. 데이터 유형: 문자열 |
| additionalDeployables.deployable_name | 배열이 지정된 경우 additionalDeployables 필요합니다. 구성 데이터를 익스포트하려는 기본이 아닌 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| appName | 필수 구성 데이터를 익스포트할 애플리케이션의 이름입니다. 데이터 유형: 문자열 |
| args | 사용자 지정 인수에 대한 키-값 쌍을 포함하는 JSON 객체입니다. 데이터 유형: 객체 |
| 데이터 형식 | 익스포트한 데이터의 출력 형식입니다. 유효한 값(대/소문자 구분):
데이터 유형: 문자열 기본값: json |
| deployableName | 필수 구성 데이터를 익스포트하려는 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| exporterName | 필수 스냅샷 데이터를 익스포트하는 데 사용할 익스포터의 이름입니다. 익스포터는 구현자에 대한 사용자 지정입니다. 사용자 지정 익스포터 만들기에 대한 자세한 내용은 사용자 지정 익스포터 만들기를 참조하세요. 데이터 유형: 문자열 |
| restrictExport | 엔드포인트가 데이터를 익스포트할 때 스냅샷의 유효성을 검사하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| snapshotName | 익스포트할 스냅샷의 이름입니다. OR additionalDeployables.deployable_name 매개변수에 지정된 대로 배포 가능 항목과 연결된 스냅샷 이름 중 하나만 사용할 수 있습니다.deployableName 기본적으로 엔드포인트는 최근에 게시된 스냅샷을 익스포트합니다. 게시된 스냅샷이 없는 경우 시스템에서 "배포 가능 항목 "{0}"에 대해 최근 게시된 스냅샷을 찾지 못했습니다" 오류가 발생합니다. |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. 가능한 오류 메시지:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 오류 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 배열
|
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| export_id | 익스포트 요청의 고유 식별자입니다. 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status 호출할 때 이 ID를 사용하여 익스포트 요청의 현재 상태를 확인합니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 예시에서는 다음에 대한 구성 데이터의 익스포트를 요청합니다. 애플리케이션 이름 = TestAppA, 배포 가능 항목 이름 = DEP, exporter = exporter-1-primary_deployable 사용.
curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports?appName=TestAppA&args=%7B%22arg_A_required%22%20%3A%20%22value%20A%22%7D&exporterName=exporter-1-primary_deployable&deployableName=DEP1" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
익스포트 요청의 고유 식별자를 반환합니다.
{
"result": {
"export_id": "64b5f79f5379301096edddeeff7b12eb"
}
}
CdmApplicationsApi - POST /sn_cdm/applications/shared_components
지정된 공유 구성요소를 지정된 변경 세트 내의 애플리케이션에 연결합니다.
이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components
기본 URL: /api/sn_cdm/applications/shared_components
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 공유 구성요소와 연결할 애플리케이션의 이름입니다. 데이터 유형: 문자열 |
| changesetNumber | 필수 구성요소와 연결된 변경 세트의 고유 식별자입니다. 데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| sharedComponentName | 필수 지정된 애플리케이션과 연결할 공유 구성요소의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| sharedLibraryName | 필수 구성요소를 작성할 공유 라이브러리의 이름입니다. 공유 라이브러리에는 다음과 같이 정의된 다음 필드가 있어야 합니다.
데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 전달된 변경 세트가 존재하지 않습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
응답 필드는 요청의 매개변수에 returnFields 지정된 필드에 따라 달라집니다. 다음은 보다 중요한 몇 가지 필드에 대해 설명합니다.
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.link | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 설명 | CDM 노드에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 오류에 대한 개요를 제공하는 메시지입니다. 데이터 유형: 문자열 |
| linked_to | 공유 구성요소와 연결된 메인 노드의 ID입니다. 데이터 유형: 문자열 |
| linked_to_version | 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다. 데이터 유형: 객체 |
| linked_to_version.link | 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| linked_to_version.value | 버전 기록의 Sys_id입니다. 데이터 유형: 문자열 |
| 메인 | 연결된 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
|
| main_id | 새로 작성된 메인 노드의 고유 ID입니다. 데이터 유형: 문자열 |
| main_id_encoded | 새로 생성된 메인 노드의 인코딩된 ID입니다. 데이터 유형: 문자열 |
| 이름 | CDM 노드의 이름입니다. 데이터 유형: 문자열 |
| 노드 | 공유 구성요소 노드의 Sys_id입니다. 데이터 유형: 문자열 |
| node_path | 공유 구성요소를 추가할 때 생성되는 새 연결된 노드의 경로입니다. 데이터 유형: 문자열 |
| 상태 | 노드의 상태입니다. 가능한 값: 신규 데이터 유형: 문자열 |
| sys_created_by | CDM 노드를 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_created_on | CDM 노드가 생성된 날짜 및 시간입니다. 형식: YYYY-mm-DD hh:mm:ss 데이터 유형: 문자열 |
| sys_id | 노드의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 노드 [sn_cdm_node] |
| sys_updated_by | CDM 노드를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_updated_on | CDM 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 형식: YYYY-mm-DD hh:mm:ss 데이터 유형: 문자열 |
| 유형 | 노드 유형입니다. 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 이 엔드포인트를 호출하여 애플리케이션 "App1"을 "Chset-20" 변경 세트 내의 공유 라이브러리 "OracleG-Library-10" 아래의 공유 구성요소 "paymentService-V1.1"과 연결하는 방법을 보여줍니다.
curl "https://instance.servicenow.com/api/sn_cdm/applications/shared_components?appName=App1&changesetNumber=Chset-20&sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": {
"changeset_id": {
"value": "74b7ff6fc33711100c257e2cc840dd6b",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/74b7ff6fc33711100c257e2cc840dd6b"
},
"node_path": "!,0!,1!/D",
"description": null,
"sys_updated_on": "2022-12-22 17:07:29",
"type": "sn_cdm_node_linked_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "ff8b37ebc3b711100c257e2cc840ddba",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-12-22 17:07:29",
"value": null,
"effective_from": null,
"linked_to": "210",
"sys_created_by": "admin",
"restricted_to": null,
"linked_to_version": {
"value": "581fc3e9c3b311100c257e2cc840dd17",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_snapshot/581fc3e9c3b311100c257e2cc840dd17"
},
"level": "2",
"conflict_type": null,
"main_id": "483",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/components",
"main_id_encoded": "/D",
"name": "LIB2_C",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/components
지정된 애플리케이션의 시스템 구성요소 폴더 내의 특정 구성요소에 대해 전달된 구성 데이터를 업로드하는 요청을 제출합니다.
다음 이미지는 UI를 참조 ServiceNow DevOps 구성 하여 구성요소 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 구성요소가 dbComponent이고 애플리케이션이 paymentSvc라고 가정합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/components
기본 URL: /api/sn_cdm/applications/uploads/components
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| autoDelete | 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 데이터 형식 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes | 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 설명하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다. 주: 이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| file노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다. 데이터 유형: 문자열 |
| identifierKeys | 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음 기존 모델에서: 이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 유형: 문자열 배열 |
| ignoreAttributes | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당). 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| sharedLibraryName | 필수 삭제할 구성요소가 있는 공유 라이브러리의 이름입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다. |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plain 및 application/x-www-form-urlencoded. 기본값: text/plain |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 예는 애플리케이션 Demo_App1631126164773에 대한 업로드 요청을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components?namePath=%2FSettings%2FdbSettings&dataFormat=json&appName=Demo_App1631126164773&changesetNumber=Chset-8&autoCommit=false&publishOption=publish_none&autoValidate=false&autoDelete=true" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\
"}" \
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST sn_cdm/applications/uploads/components/file
구성 데이터 모델(CDM)의 일부로 파일을 구성요소 폴더에 업로드합니다.
이 방법을 사용하여 구성요소 파일 노드에 업로드합니다.
URL 형식
버전이 지정된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/components/file
기본 URL: POST /api/sn_cdm/applications/uploads/components/file
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| file노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| 게시 옵션 | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요. 데이터 유형: 문자열 기본값: publish_none 주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서. 데이터 유형: 문자열/스트림 |
헤더
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 콘텐츠-형식 | 업로드할 파일의 데이터 유형입니다. 지원되는 유형: application/zip, text/plain, application/json. 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 예시는 텍스트 파일에 컨텐츠를 업로드하는 방법을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/file?autoValidate=true&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/components/vars
지정된 애플리케이션에 대해 system components 폴더 내의 vars 폴더에 전달된 구성 데이터를 업로드하는 요청을 제출합니다.
다음 이미지는 작업 공간 UI를 참조 ServiceNow DevOps 구성 하여 구성요소의 vars 구성 데이터가 업로드되는 경우의 예를 보여줍니다. 애플리케이션이 paymentSvc라고 가정합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/components/vars
기본 URL: /api/sn_cdm/applications/uploads/components/vars
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| autoDelete | 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 데이터 형식 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| file노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다. 데이터 유형: 문자열 |
| identifierKeys | 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음 기존 모델에서: 이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 유형: 문자열 배열 |
| ignoreAttributes | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당). 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| sharedLibraryName | 필수 삭제할 구성요소가 있는 공유 라이브러리의 이름입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다. |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plain 및 application/x-www-form-urlencoded. 기본값: text/plain |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 예는 애플리케이션 Demo_App1631126164773에 대한 vars 업로드 요청을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/vars?changesetNumber=Chset-102&autoValidate=false&autoDelete=true&publishOption=publish_none&appName=Demo_App1631126164773&namePath=%2FSettings%2FdbSettings&autoCommit=false&dataFormat=json" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbSettings\": {
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"username:password server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"username:password server2.xyz.com dbName_payments_backup\"
}
}"
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "d21f71f45322301096eccceaff7b1ce3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections
지정된 애플리케이션의 시스템 컬렉션 폴더 내의 특정 컬렉션에 대해 전달된 구성 데이터를 업로드하는 요청을 제출합니다.
다음 이미지는 작업 공간 UI를 참조 ServiceNow DevOps 구성 하여 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 컬렉션이 db0Release1.0이고 애플리케이션이 paymentSvc라고 가정합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/collections
기본 URL: /api/sn_cdm/applications/uploads/collections
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| autoDelete | 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| collectionName | 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다. 주: 지정된 항목이 이 컬렉션 아래에 없 namePath 으면 시스템은 이 컬렉션 아래에 구성요소를 자동으로 생성한 다음 구성 컨텐츠를 업로드합니다. 예를 들어 compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려면 데이터가 /collA/collections/compa/compB/compC 아래에 업로드됩니다.
데이터 유형: 문자열 |
| 데이터 형식 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes | 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 설명하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다. 주: 이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| ignoreAttributes | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당). 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다. |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plain 및 application/x-www-form-urlencoded. 기본값: text/plain |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
이 예시에서는 JSON 형식의 dbSettings 구성 날짜를 애플리케이션 Demo_App1631126164773의 컬렉션 폴더에 업로드하는 방법을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections?dataFormat=json&autoValidate=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&autoDelete=true&namePath=%2FSettings%2FdbSettings&collectionName=release-1.0&autoCommit=false&publishOption=publish_none" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbSettings\": {
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\"
}
}" \
--user 'username':'password'
다음은 이 호출에 대한 가능한 성공 및 오류로서의 응답을 보여줍니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections/file
구성 데이터 모델(CDM)의 컬렉션 폴더에 파일을 업로드합니다.
URL 형식
버전이 지정된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/collections/file
기본 URL: POST /api/sn_cdm/applications/uploads/collections/file
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| collectionName | 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다. 주: 지정된 namePath 가 이 컬렉션 아래에 없으면 시스템은 이 컬렉션 아래에 구성요소를 자동으로 생성한 다음 구성 콘텐츠를 업로드합니다. 예를 들어 compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려면 데이터가 /collA/collections/compa/compB/compC 아래에 업로드됩니다. compA가 있지만 compB 및 compC는 없는 경우 엔드포인트는 이러한 구성요소를 생성하고 compC 아래에 데이터를 업로드합니다.데이터 유형: 문자열 |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| file노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| 게시 옵션 | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요. 데이터 유형: 문자열 기본값: publish_none 주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서. 데이터 유형: 문자열/스트림 |
헤더
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 콘텐츠-형식 | 업로드할 파일의 콘텐츠 유형입니다. 예: application/zip, text/plain, application/json. |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 호출은 일반 텍스트 파일을 CDM 컬렉션 폴더에 업로드합니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections/file?autoValidate=true&collectionName=collA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables
지정된 애플리케이션의 배포 가능 항목 시스템 폴더 내에서 특정 배포 가능 항목에 대한 구성 콘텐츠를 업로드하는 요청을 제출합니다.
다음 이미지는 UI를 참조 ServiceNow DevOps 구성 하여 배포 가능 항목 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 배포 가능 항목이 Development_1 이고 애플리케이션이 paymentSvc라고 가정합니다.
URL 형식
버전 관리된 URL: /api/sn_cdm/{api_version}/applications/uploads/deployables
기본 URL: /api/sn_cdm/applications/uploads/deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| autoDelete | 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 데이터 형식 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes | 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 설명하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다. 주: 이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| deployableName | 필수 업로드된 페이로드를 저장할 배포 가능 항목의 이름입니다. 주: 이 배포 가능 항목에 지정된 namePath 항목이 없는 경우, 시스템은 이 배포 가능 항목 아래에 구성요소를 자동으로 생성한 다음 구성 콘텐츠를 업로드합니다. |
| identifierKeys | 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음 기존 모델에서: 이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 유형: 문자열 배열 |
| ignoreAttributes | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당). 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| 게시 옵션 | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요. 데이터 유형: 문자열 기본값: publish_none 주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다. |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 콘텐츠-형식 | 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plain 및 application/x-www-form-urlencoded. 기본값: text/plain |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 예는 애플리케이션 Demo_App1631126164773에 대한 업로드 요청을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables?deployableName=TST-1&autoValidate=false&dataFormat=json&autoDelete=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&publishOption=publish_none&autoCommit=true&namePath=%2FSettings%2FdbSettings" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "{
\"dbIPAddress\": \"10.10.10.110\",
\"dbPort\": \"8080\",
\"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
\"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\"
}" \
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables/file
구성 데이터 모델(CDM)의 배포 가능 항목 폴더에 파일을 업로드합니다.
URL 형식
버전 관리된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/deployables/file
기본 URL: POST /api/sn_cdm/applications/uploads/deployables/file
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 자동 커밋 | 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 자동 확인 | 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| deployableName | 필수 정책을 매핑할 CDM 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| file노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
주: 지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| 게시 옵션 | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요. 데이터 유형: 문자열 기본값: publish_none 주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. |
| 이름 | 설명 |
|---|---|
| 변수 업로드 데이터 | 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서. 데이터 유형: 문자열/스트림 |
헤더
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 콘텐츠-형식 | 업로드할 파일의 데이터 유형입니다. 지원되는 유형: application/zip, text/plain, application/json. 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 업로드 요청이 거부되었습니다. 가능한 문제:
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| upload_id | 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다. 데이터 유형: 문자열 |
cURL 요청
다음 요청은 일반 텍스트 파일을 CDM 애플리케이션의 배포 가능 항목 폴더에 업로드합니다.
curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables/file?autoValidate=true&deployableName=depA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:text/plain" \
--data "This is sample content that will be uploaded to a plain text file."\
--user 'username':'password'
다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.
// Successful completion of the upload request
{
"result": {
"upload_id": "ec1f71f45322301096edddeeff7b12b3"
}
}
// Error response. Payload is too large.
{
"error": {
"message": "Could not find active application with name: ‘testApp’ of type application",
"detail": ""
},
"status": "failure"
}
CdmApplicationsApi - PUT /sn_cdm/applications/deployables
지정된 변경 세트 내의 애플리케이션에서 지정된 공유 구성요소를 업데이트합니다.
- 이름
- 설명
- 애플리케이션 서비스\동적 CI 그룹
- 배치 가능 항목 식별자
이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables
기본 URL: /api/sn_cdm/applications/deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 CDM 애플리케이션의 이름입니다. 데이터 유형: 문자열 |
| 이름 | 필수 CDM 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| newDescription | 옵션입니다. CDM 배포 가능 항목에 대한 설명입니다. 데이터 유형: 문자열 |
| newServiceId | 옵션입니다. 원하는 애플리케이션 서비스/동적 CI 그룹의 ID입니다. cURL 요청에서 서비스에서 배포 가능 항목의 연결을 끊으려면 "" 를 제공하십시오. |
| 새 식별자 | 옵션입니다. 배포 가능 항목의 식별자입니다. 데이터 유형: 선택(개발/테스트/프로덕션 |
| 새 이름 | 옵션입니다. 배포 가능 항목의 새 이름입니다. 데이터 유형: 문자열 |
| returnFields | 옵션입니다. 응답의 일부로 반환될 필드의 쉼표로 구분된 목록입니다. |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형: application/json |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| sys_id | CDM 배포 가능 항목 sys_Id. |
| 이름 | CDM 배포 가능 항목의 이름입니다. |
| 노드 | 배포 가능 노드 객체입니다.
|
| 설명 | CDM 배포 가능 항목 설명입니다. |
| 식별자 | 배포 가능 항목의 식별자입니다. |
| cmdb_ci | 배포 가능 항목에 연결된 앱 서비스 개체입니다.
|
| cmdb_app | CDM 애플리케이션 객체입니다.
|
| snapshot_version_counter | 배포 가능 항목에 대해 생성된 스냅샷 수입니다. |
| cdi_count | 이 CDM 배포 가능 항목에 포함된 CDI의 수입니다. |
| cdi_usage | CDI 사용량 백분율입니다. |
| environment_type | 환경 유형입니다. 가능한 값:
|
| 상태 | 활성 또는 삭제된 상태 . 가능한 값:
|
| sys_created_by | <username>으로 생성한 CDM 배포 가능 항목입니다. |
| sys_created_on | <yyyy-MM-dd hh:mm:ss> 형식의 CDM 배포 가능 항목 생성 타임스탬프입니다. |
| sys_updated_by | <username>으로 업데이트된 CDM 배포 가능 항목 |
| sys_updated_on | CDM 배포 가능 항목은 타임스탬프에 의해 <y-MM-dd hh:mm:ss> 형식으로 업데이트되었습니다. |
cURL 요청
curl "http://localhost:8080/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \
--request PUT\
--header "Accept:application/json" \
--user 'cdm_admin':'password1!'
출력:
{
"result": {
"identifier": "identiy1",
"cmdb_ci": {
"value": "f5b9e00b53901110a1d3ddeeff7b12b8",
"link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8"
},
"cdi_count": "3",
"snapshot_version_counter": "1",
"description": "cdcds",
"sys_updated_on": "2022-07-27 13:40:13",
"environment_type": "Test",
"node": {
"value": "30c00d4053015110a1d3ddeeff7b12bf",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/30c00d4053015110a1d3ddeeff7b12bf"
},
"sys_id": "39b9e00b53901110a1d3ddeeff7b12b7",
"sys_updated_by": "admin",
"cdm_app": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_created_on": "2022-06-29 12:53:57",
"cdi_usage": "0.03",
"name": "Dep-2",
"state": "active",
"sys_created_by": "admin"
}
}
CdmApplicationsApi - PUT /sn_cdm/applications/shared_components
지정된 변경 세트 내의 애플리케이션에서 지정된 공유 구성요소를 업데이트합니다.
이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components
기본 URL: /api/sn_cdm/applications/shared_components
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 구성요소와 연결된 변경 세트의 고유 식별자입니다. 데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| sharedComponentName | 필수 지정된 애플리케이션과 연결된 공유 구성요소의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| sharedLibraryName | 필수 구성요소가 있는 공유 라이브러리의 이름입니다. 공유 라이브러리에는 다음과 같이 정의된 다음 필드가 있어야 합니다.
데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 버전 | 필수 공유 구성요소와 연결된 버전 이름입니다. 데이터 유형: 문자열 테이블: CDM 스냅샷 [sn_cdm_snapshot] |
| 이름 | 설명 |
|---|---|
| 안 함 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.
| 머리글 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 머리글 | 설명 |
|---|---|
| 안 함 |
상태 코드
이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 전달된 변경 세트가 존재하지 않습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
응답 필드는 요청의 매개변수에 returnFields 지정된 필드에 따라 달라집니다. 다음은 보다 중요한 몇 가지 필드에 대해 설명합니다.
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.link | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 설명 | CDM 노드에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 오류에 대한 개요를 제공하는 메시지입니다. 데이터 유형: 문자열 |
| linked_to | 공유 구성요소와 연결된 메인 노드의 ID입니다. 데이터 유형: 문자열 |
| linked_to_version | 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다. 데이터 유형: 객체 |
| linked_to_version.link | 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| linked_to_version.value | 버전 기록의 Sys_id입니다. 데이터 유형: 문자열 |
| 메인 | 연결된 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
|
| main_id | 새로 작성된 메인 노드의 고유 ID입니다. 데이터 유형: 문자열 |
| main_id_encoded | 새로 생성된 메인 노드의 인코딩된 ID입니다. 데이터 유형: 문자열 |
| 이름 | CDM 노드의 이름입니다. 데이터 유형: 문자열 |
| 노드 | 공유 구성요소 노드의 Sys_id입니다. 데이터 유형: 문자열 |
| node_path | 공유 구성요소를 추가할 때 생성되는 새 연결된 노드의 경로입니다. 데이터 유형: 문자열 |
| 상태 | 노드의 상태입니다. 가능한 값: 신규 데이터 유형: 문자열 |
| sys_created_by | CDM 노드를 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_created_on | CDM 노드가 생성된 날짜 및 시간입니다. 형식: YYYY-mm-DD hh:mm:ss 데이터 유형: 문자열 |
| sys_id | 노드의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 노드 [sn_cdm_node] |
| sys_updated_by | CDM 노드를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다. 데이터 유형: 문자열 |
| sys_updated_on | CDM 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 형식: YYYY-mm-DD hh:mm:ss 데이터 유형: 문자열 |
| 유형 | 노드 유형입니다. 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 이 엔드포인트를 호출하여 "Chset-20" 변경 세트 내의 공유 라이브러리 "OracleG-Library-10" 아래에서 공유 구성요소 "paymentService-V1.1"로 애플리케이션 "App1"을 업데이트하는 방법을 보여줍니다.
"https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?sharedComponentName=paymentService-V1.1&sharedLibraryName=OracleG-Library-10&changesetNumber=Chset-20&versionName=sComp3-v2.shc&appName=App1" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
응답:
"result": {
"changeset_id": {
"value": "7343d0f71b771110636e0fe0604bcb0b",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_changeset/7343d0f71b771110636e0fe0604bcb0b"
},
"node_path": "!2!3!&`",
"description": null,
"sys_updated_on": "2022-12-22 18:52:38",
"type": "sn_cdm_node_linked_shared_component",
"sys_class_name": "sn_cdm_node",
"sys_id": "339314b71b771110636e0fe0604bcba3",
"sys_updated_by": ”admin",
"previous_version": {
"value": "a9ce80bf1b371110636e0fe0604bcb10",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_node/a9ce80bf1b371110636e0fe0604bcb10"
},
"sys_created_on": "2022-12-22 18:52:38",
"value": null,
"effective_from": null,
"linked_to": "146",
"sys_created_by": ”admin",
"restricted_to": null,
"linked_to_version": {
"value": "54115c371b771110636e0fe0604bcb77",
"link": "https://instance-name.service-now.com/api/now/table/sn_cdm_snapshot/54115c371b771110636e0fe0604bcb77"
},
"level": "2",
"conflict_type": null,
"main_id": "166",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/components",
"main_id_encoded": "&`",
"name": "Component_A",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "updated",
"conflict": false
}