CdmApplicationsApi
CdmApplicationsApi는 작업 공간 UI에 있는 구성 요소, 컬렉션, 배포 가능 항목 및 구성 요소 변수 폴더에 구성 데이터를 uploadzoominsoftware.io/utah-devops/ 수 있는 엔드포인트를 DevOps 구성 제공합니다. 또한 배포 가능한 구성 데이터를 파이프라인으로 DevOps 내보내고 공유 구성 요소 및 공유 애플리케이션을 관리할 수 있는 엔드포인트도 있습니다.
내보내기 및 업로드 끝점은 비동기 큐 구현을 사용합니다. 이 유형의 구현에서는 먼저 원하는 내보내기 또는 업로드 요청 엔드포인트를 호출합니다. 이러한 엔드포인트는 요청을 큐에 대기시키고 요청 식별자를 반환합니다. 그런 다음 이 요청 식별자를 사용하여 업로드용 엔드포인트와 내보내기용 엔드포인트를 각각 하나씩 적절한 상태 엔드포인트를 호출하여 업로드/내보내기의 상태를 가져옵니다. 익스포트 요청의 경우 익스포트가 완료되면 익스포트 콘텐츠를 요청할 수도 있습니다.
이 API는 애플리케이션 레코드의 단순 검색을 수행하는 엔드포인트를 제공하지 않습니다. 이러한 레코드를 검색하려면 Table 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 - DELETE /sn_cdm/applications/shared_components
지정된 구성 데이터 관리 (CDM) 애플리케이션에서 공유 구성요소 사용량 참조를 제거합니다.
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 지정된 공유 구성요소 연결을 제거할 애플리케이션의 이름입니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 지정된 응용 프로그램에는 "shared_library"로 설정된 형식 필드가 있어야 합니다. 데이터 유형: 문자열 |
| 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.오류 | 익스포트 중에 발생한 오류에 대한 설명입니다. 데이터 유형: 배열 |
| exporter_result.execution_id | 익스포터 실행 기록의 고유 식별자입니다. sn_cdm_exporter_execution 테이블에 있습니다. 데이터 유형: 문자열 |
| exporter_result.state입니다. | 지정된 익스포트의 현재 상태입니다. 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 | 필수 공유 구성요소 목록을 반환하려는 애플리케이션의 이름입니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 애플리케이션의 유형 필드는 shared_library로 설정해야 합니다. 데이터 유형: 문자열 |
| withUpdatesOnly (업데이트 전용) | 업데이트된 새 버전이 있는 공유 구성요소만 반환할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 기본값: application/json |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| currentVersion | CDM 애플리케이션의 현재 버전입니다. 데이터 형식: 정수 |
| currentVersionName(현재 버전 이름) | 현재 사용 중인 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 |
| 설명 | 공유 구성요소에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 이름 | 공유 구성요소의 고유 이름입니다. 데이터 유형: 문자열 |
| sharedLibraryName | 공유 구성요소가 속한 공유 라이브러리의 이름입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
| 업데이트 버전 이름 | 업데이트할 수 있는 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 |
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 | 필수 맵에 포함할 공유 라이브러리의 이름입니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 지정된 응용 프로그램에는 "shared_library"로 설정된 형식 필드가 있어야 합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 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.description | 현재 사용되지 않습니다. 데이터 유형: 문자열 |
| 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입니다. 데이터 유형: 문자열 |
| output.title | 업로드의 일부로 생성된 변경 세트의 제목입니다. 데이터 유형: 문자열 |
| 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 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 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.링크 | REST 테이블 API를 사용하여 CDM 애플리케이션 기록에 접근하는 데 사용할 호출입니다. 데이터 유형: 문자열 |
| cdm_app.value | 연결된 CDM 애플리케이션 기록의 Sys_id입니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 데이터 유형: 문자열 |
| cdm_ci | 배포 가능 항목과 연결된 애플리케이션 서비스 객체입니다. 데이터 유형: 객체 |
| cdm_ci.링크 | 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 패턴을 따르며, 여기서 Number 는 새 배포 가능 항목 생성에 따라 실행 중인 시퀀스 번호입니다. 예를 들어 엔드포인트 호출에서 테스트 유형의 배포 가능 항목 3개를 생성하는 경우 이름은 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 사용하여 연결된 애플리케이션의 구성 데이터를 검색할 수 있습니다.
스냅샷은 구성 변경이 커밋되는 시점에 배포 가능 항목의 전체 데이터 모델입니다. 여기에는 포함된 모든 구성요소, 컬렉션 및 변수와 배포 가능 항목별 var 및 overrides가 포함됩니다. 배포 가능 항목에 대한 자세한 내용은 배포 가능 항목 생성 및 업데이트를 참조하세요.
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' | 필수 구성 데이터를 익스포트하려는 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| 익스포터 이름 | 필수 스냅샷 데이터를 익스포트하는 데 사용할 익스포터 이름입니다. 익스포터는 구현자에게 사용자 지정합니다. Custom Exporter 생성에 대한 자세한 내용은 Custom Exporter 생성을 참조하십시오. 데이터 유형: 문자열 |
| restrictExport | 데이터를 익스포트할 때 엔드포인트에서 스냅샷의 유효성을 검사하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| snapshotName | 익스포트할 스냅샷의 이름입니다. 또는 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 요청
다음 예제에서는 exporter = exporter-1-primary_deployable를 사용하여 application name = TestAppA, deployable name = DEP에 대한 구성 데이터 내보내기를 요청합니다.
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 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 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.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 설명 | CDM 노드에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 오류에 대한 개요를 제공하는 메시지입니다. 데이터 유형: 문자열 |
| linked_to | 공유 구성요소와 연결된 메인 노드의 ID입니다. 데이터 유형: 문자열 |
| linked_to_version | 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다. 데이터 유형: 객체 |
| linked_to_version.링크 | 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| linked_to_version.값 | 버전 기록의 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| 데이터 포맷 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes (영문) | 매개 변수가 csv로 설정된 경우에만 dataFormat 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 구분하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식의 CDI 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드이며 업로드된 데이터에서 암호화되어야 하는 데이터의 필드입니다 CDM. 보안 헤더의 이름은 headers 특성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호 유형(2단계 암호화됨)의 열에 저장됩니다. 주: 이 속성을 사용해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함할 수 있습니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| 파일 노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 구성 데이터를 익스포트할 때 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에 영향을 주지 않습니다. 데이터 유형: 문자열 |
| 식별자 키 | 동일한 노드를 식별하는 데 사용할 배열 하위 키를 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음과 같은 기존 모델에서: name으로 설정하면 identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 형식: 문자열 배열 |
| ignore속성 | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함할 수 있습니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| 파일 노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 구성 데이터를 익스포트할 때 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출되는 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
주: 지정된 구성요소가 지정된 경로에 없는 경우 시스템은 지정된 경로에 구성요소를 자동으로 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| publishOption | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: 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
지정된 애플리케이션에 대해 시스템 구성요소 폴더 내의 vars 폴더 아래에 전달된 구성 데이터를 업로드하는 요청을 제출합니다.
다음 이미지는 작업 공간 UI를 참조하여 구성요소의 vars 구성 데이터가 업로드되는 위치의 ServiceNow DevOps 구성 예를 보여줍니다. 애플리케이션이 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| 데이터 포맷 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함할 수 있습니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| 파일 노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 구성 데이터를 익스포트할 때 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에 영향을 주지 않습니다. 데이터 유형: 문자열 |
| 식별자 키 | 동일한 노드를 식별하는 데 사용할 배열 하위 키를 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음과 같은 기존 모델에서: name으로 설정하면 identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 형식: 문자열 배열 |
| ignore속성 | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| collectionName | 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다. 주: 지정된 항목이 namePath 이 컬렉션에 없는 경우 시스템은 자동으로 이 컬렉션 아래에 구성요소를 생성한 후 해당 구성 콘텐츠를 업로드합니다. 예를 들어, compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려는 경우 데이터는 /collA/collections/compa/compB/compC 아래에 업로드됩니다.
데이터 유형: 문자열 |
| 데이터 포맷 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes (영문) | 매개 변수가 csv로 설정된 경우에만 dataFormat 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 구분하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식의 CDI 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드이며 업로드된 데이터에서 암호화되어야 하는 데이터의 필드입니다 CDM. 보안 헤더의 이름은 headers 특성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호 유형(2단계 암호화됨)의 열에 저장됩니다. 주: 이 속성을 사용해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| ignore속성 | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| collectionName | 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다. 주: 지정된 namePath 가 이 컬렉션에 없는 경우 시스템은 자동으로 이 컬렉션 아래에 구성요소를 만든 다음 구성 콘텐츠를 업로드합니다. 예를 들어, compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려는 경우 데이터는 /collA/collections/compa/compB/compC 아래에 업로드됩니다. compA는 있지만 compB 및 compC는 없는 경우 엔드포인트는 이러한 구성 요소를 만들고 compC 아래에 데이터를 업로드합니다.데이터 유형: 문자열 |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함할 수 있습니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| 파일 노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 구성 데이터를 익스포트할 때 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출되는 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
주: 지정된 구성요소가 지정된 경로에 없는 경우 시스템은 지정된 경로에 구성요소를 자동으로 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| publishOption | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| 데이터 포맷 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| dataFormatAttributes (영문) | 매개 변수가 csv로 설정된 경우에만 dataFormat 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오. 데이터 유형: 객체 |
| dataFormatAttributes.containsHeaders | 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| dataFormatAttributes.delimeter | 데이터 내에서 필드를 구분하는 데 사용할 문자입니다. 데이터 유형: 문자열 기본값: 쉼표 "," |
| dataFormatAttributes.headers | 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식의 CDI 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다. 데이터 유형: 배열 기본값: 빈 배열 |
| dataFormatAttributes.securedHeaders | 보안 필드이며 업로드된 데이터에서 암호화되어야 하는 데이터의 필드입니다 CDM. 보안 헤더의 이름은 headers 특성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호 유형(2단계 암호화됨)의 열에 저장됩니다. 주: 이 속성을 사용해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다. 데이터 유형: 배열 기본값: 빈 배열 |
| deleteRedundantOverrides | 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: true |
| 'deployableName' | 필수 업로드된 페이로드를 저장할 배포 가능 항목의 이름입니다. 주: 이 배포 가능 항목 아래에 지정된 namePath 항목이 없는 경우 시스템은 이 배포 가능 항목 아래에 구성 요소를 자동으로 생성한 다음 해당 구성 컨텐츠를 업로드합니다. |
| 식별자 키 | 동일한 노드를 식별하는 데 사용할 배열 하위 키를 나타내는 이름 목록입니다. 예를 들어 업로드하는 경우: 다음과 같은 기존 모델에서: name으로 설정하면 identifierKeys 다음과 같은 출력이 생성됩니다. 그렇지 않으면 다음과 같은 출력이 생성됩니다. 데이터 형식: 문자열 배열 |
| ignore속성 | 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만). 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출되는 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
주: 지정된 구성요소가 지정된 경로에 없는 경우 시스템은 지정된 경로에 구성요소를 자동으로 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| publishOption | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: 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 |
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개 변수가 true인 autoCommit 경우에만 사용할 수 있습니다. 데이터 유형: 부울 기본값: false |
| changesetNumber | Chset-102와 같이 응용 프로그램과 연결된 변경 집합을 고유하게 식별하는 문자열입니다. 이 변경 세트는 "열림" 상태여야 합니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 사용할 변경 세트를 만듭니다. 변경 세트 상세 정보는 결과의 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 일부로 반환됩니다. |
| 'deployableName' | 필수 정책을 매핑할 CDM 배포 가능 항목의 이름입니다. CDM 배포 가능 항목 [sn_cdm_deployable] 테이블에 있습니다. 데이터 유형: 문자열 |
| fileName | 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함할 수 있습니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다. 데이터 유형: 문자열 |
| 파일 노드 이름 | 파일 노드의 이름입니다. 이 파일 이름은 구성 데이터를 익스포트할 때 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에 영향을 주지 않습니다. 데이터 유형: 문자열 |
| namePath | 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출되는 엔드포인트에 따라 다름)를 기준으로 합니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
주: 지정된 구성요소가 지정된 경로에 없는 경우 시스템은 지정된 경로에 구성요소를 자동으로 생성한 다음 데이터를 업로드합니다. 데이터 유형: 문자열 |
| publishOption | 연결된 구성된 스냅샷에 대한 게시 옵션입니다.
유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: 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 애플리케이션의 deployables 폴더에 일반 텍스트 파일을 업로드합니다.
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 배포 가능 항목에 대한 설명입니다. 데이터 유형: 문자열 |
| 새 서비스 ID | 옵션입니다. 원하는 애플리케이션 서비스/동적 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 | CDM 배포 가능 항목이 <username>에 의해 업데이트되었습니다. |
| sys_updated_on | 타임스탬프에 의해 업데이트된 CDM 배포 가능 항목(<yyyy-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 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 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.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 설명 | CDM 노드에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 오류에 대한 개요를 제공하는 메시지입니다. 데이터 유형: 문자열 |
| linked_to | 공유 구성요소와 연결된 메인 노드의 ID입니다. 데이터 유형: 문자열 |
| linked_to_version | 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다. 데이터 유형: 객체 |
| linked_to_version.링크 | 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| linked_to_version.값 | 버전 기록의 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
}