CdmVersionApi
CdmVersionAPI는 공유 라이브러리에서 공유 구성요소에 대한 버전(스냅샷)을 (CDM)에서 구성 데이터 관리 게시, 게시 취소 및 익스포트할 수 있는 엔드포인트를 제공합니다.
내보낼 수 있도록 스냅샷을 게시하면 파이프라인이 CICD(지속적 통합 및 지속적 제공) 연결된 공유 구성 요소 및 라이브러리에 액세스하고 사용할 수 있습니다. 익스포터는 게시된 스냅샷에서만 실행할 수 있습니다. 스냅샷이 더 이상 필요하지 않은 경우 스냅샷을 게시 취소하여 스냅샷이 더 이상 실행 가능한지 여부에 대한 혼란을 줄일 수 있습니다.
- 스크립팅된 REST CDM 뷰 ACL(sn_cdm.cdm.viewer)
- 스크립트된 REST CDM 편집기 ACL(sn_cdm.cdm_editor)
또한 구성 데이터 관리 인스턴스에서 이 API를 사용할 수 있으려면 (CDM) 플러그인을 활성화해야 합니다.
스냅샷에 대한 자세한 내용은 스냅샷 보기 섹션을 참조하세요.
CdmVersionApi - GET /sn_cdm/versions/export
지정된 게시된 버전에 대해 지정된 공유 라이브러리 내에서 지정된 공유 구성요소에 대한 구성 데이터를 반환합니다.
이 엔드포인트에 액세스하려면 CDM 편집자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/versions/export
기본 URL: /api/sn_cdm/versions/export
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 데이터 형식 | 필수 구성 데이터의 형식입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| 암호 해독 | 인코딩된 암호 값 또는 암호 해독된 값을 표시할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false |
| sharedComponentName | 필수 익스포트할 구성 데이터가 포함된 공유 구성요소의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| sharedLibraryName | 필수 구성 데이터를 반환할 구성요소가 들어 있는 공유 라이브러리의 이름입니다. 지정된 애플리케이션의 유형 필드는 "shared_library"로 설정되어 있어야 합니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| 대체 변수 | 변수를 따를지 여부를 나타내는 플래그입니다. 변수 팔로우에 대한 정보는 구성 데이터 유효성 확인 및 수정을 참조하십시오. 유효한 값은 다음과 같습니다.
기본값: true |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형:
기본값: application/json |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 다음 문제 중 하나가 발생했을 수 있습니다.
|
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 결과 | 지정된 형식의 구성 데이터입니다. |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 요청의 오류 상태입니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제는 "JavaLib" 공유 라이브러리에서 "jdk8" 구성 요소의 구성 데이터를 내보내는 방법을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/shared_libraries/components/exports?sharedLibraryName=JavaLib&componentName=jdk8
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": {
"sharedComponentA": { "cdi": "val" }
}
}
CdmVersionApi - PUT /sn_cdm/versions/publish
지정된 공유 라이브러리에 공유 구성요소 버전을 게시합니다.
이 엔드포인트에 액세스하려면 CDM 편집자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/versions/publish
기본 URL: /api/sn_cdm/versions/publish
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 이름 | 필수 게시할 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| returnFields | 응답의 일부로 반환할 CDM 스냅샷[sn_cdm_snapshot] 테이블의 쉼표로 구분된 필드 목록입니다. 데이터 유형: 문자열 기본값: 시스템이 아닌 모든 필드를 반환합니다. |
| 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 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| cdm_application_id | 스냅샷과 연결된 CDM 애플리케이션에 대한 상세 정보입니다. 데이터 유형: 객체 |
| cdm_application_id.링크 | REST 테이블 API를 사용하여 CDM 애플리케이션 기록에 액세스하는 데 사용하는 호출입니다. 데이터 유형: 문자열 |
| cdm_application_id.값 | 연결된 CDM 애플리케이션 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| cdm_deployable_id | 스냅샷과 연결된 CDM 배포 가능 항목에 대한 상세 정보입니다. 데이터 유형: 객체 |
| cdm_deployable_id.링크 | 테이블 REST API를 사용하여 이 배포 가능 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| cdm_deployable_id.값 | 배포 가능 항목 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| changeset_id | 스냅샷과 연결된 변경 세트에 대한 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.값 | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 설명 | 스냅샷에 대한 간략한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| last_published | 스냅샷이 마지막으로 게시된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| last_validated | 스냅샷이 마지막으로 확인된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 이름 | 스냅샷의 이름입니다. 데이터 유형: 문자열 |
| 번호 | 스냅샷을 식별하는 고유 번호입니다. 이 값은 매핑에 대해 사용자가 읽을 수 있는 식별자를 제공합니다. 데이터 유형: 문자열 |
| 게시됨 | 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| sys_created_by | 스냅샷을 생성한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_created_on | 스냅샷이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| sys_id | 스냅샷의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 스냅샷 [sn_cdm_snapshot] |
| sys_updated_by | 스냅샷을 업데이트한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_updated_on | 스냅샷이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 확인 | 스냅샷의 현재 확인 상태입니다. 가능한 값:
데이터 유형: 문자열 |
cURL 요청
이 코드 예제에서는 버전 이름이 "Development-v1.shc"인 공유 구성 요소 "Development"를 게시하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/versions/publish?sharedLibraryName=LibraryJdk&componentName=Development&name=Development-v1.shc" \
--request PUT\
--header "Accept:application/json" \
--user 'username':'password
응답:
{
"result": {
"changeset_id": {
"value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
},
"cdm_deployable_id": null,
"cdm_shared_component_node_id": {
"value": "fe2b155c7764a1109ac0cf0bbb5a995d",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
},
"cdm_shared_component_id": {
"value": "362b155c7764a1109ac0cf0bbb5a9970",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
},
"description": null,
"cdm_application_id": {
"value": "122bd15c7764a1109ac0cf0bbb5a99fa",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
},
"published": true,
"sys_updated_on": "2023-01-18 14:15:44",
"last_published": "2023-01-18 09:53:37",
"sequence_number": "1",
"number": "SNAP0001110",
"sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
"sys_updated_by": "admin",
"sys_created_on": "2023-01-18 09:53:36",
"name": "logonService-V2.1-v1.shc",
"last_validated": "",
"validation": "passed",
"sys_created_by": "admin"
}
}
CdmVersionApi - PUT /sn_cdm/versions/unpublish
지정된 공유 라이브러리에서 공유 구성요소 버전의 게시를 취소합니다.
이 엔드포인트에 액세스하려면 CDM 편집자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/versions/publish
기본 URL: /api/sn_cdm/versions/publish
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 이름 | 필수 게시를 취소할 공유 구성요소 버전의 이름입니다. 데이터 유형: 문자열 테이블: CDM 공유 구성요소 [sn_cdm_shared_component] |
| returnFields | 응답의 일부로 반환할 CDM 스냅샷[sn_cdm_snapshot] 테이블의 쉼표로 구분된 필드 목록입니다. 데이터 유형: 문자열 기본값: 시스템이 아닌 모든 필드를 반환합니다. |
| 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 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| cdm_application_id | 스냅샷과 연결된 CDM 애플리케이션에 대한 상세 정보입니다. 데이터 유형: 객체 |
| cdm_application_id.링크 | REST 테이블 API를 사용하여 CDM 애플리케이션 기록에 액세스하는 데 사용하는 호출입니다. 데이터 유형: 문자열 |
| cdm_application_id.값 | 연결된 CDM 애플리케이션 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 애플리케이션 [sn_cdm_application] |
| cdm_deployable_id | 스냅샷과 연결된 CDM 배포 가능 항목에 대한 상세 정보입니다. 데이터 유형: 객체 |
| cdm_deployable_id.링크 | 테이블 REST API를 사용하여 이 배포 가능 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| cdm_deployable_id.값 | 배포 가능 항목 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 배포 가능 항목 [sn_cdm_deployable] |
| changeset_id | 스냅샷과 연결된 변경 세트에 대한 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.값 | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| 설명 | 스냅샷에 대한 간략한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| last_published | 스냅샷이 마지막으로 게시된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| last_validated | 스냅샷이 마지막으로 확인된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 이름 | 스냅샷의 이름입니다. 데이터 유형: 문자열 |
| 번호 | 스냅샷을 식별하는 고유 번호입니다. 이 값은 매핑에 대해 사용자가 읽을 수 있는 식별자를 제공합니다. 데이터 유형: 문자열 |
| 게시됨 | 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| sys_created_by | 스냅샷을 생성한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_created_on | 스냅샷이 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| sys_id | 스냅샷의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 스냅샷 [sn_cdm_snapshot] |
| sys_updated_by | 스냅샷을 업데이트한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_updated_on | 스냅샷이 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 확인 | 스냅샷의 현재 확인 상태입니다. 가능한 값:
데이터 유형: 문자열 |
cURL 요청
다음 코드 예제는 "OracleG-Library-10" 공유 라이브러리에서 "paymentService-V1" 공유 컴포넌트의 게시를 취소하는 방법을 보여줍니다.
curl "https://instance-name.service-now.com/api/sn_cdm/versions/unpublish?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1&name=paymentService-V1.1-v1.shc" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": {
"changeset_id": {
"value": "1a2bd15c7764a1109ac0cf0bbb5a99fc",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_changeset/1a2bd15c7764a1109ac0cf0bbb5a99fc"
},
"cdm_deployable_id": null,
"cdm_shared_component_node_id": {
"value": "fe2b155c7764a1109ac0cf0bbb5a995d",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_node/fe2b155c7764a1109ac0cf0bbb5a995d"
},
"cdm_shared_component_id": {
"value": "362b155c7764a1109ac0cf0bbb5a9970",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_shared_component/362b155c7764a1109ac0cf0bbb5a9970"
},
"description": null,
"cdm_application_id": {
"value": "122bd15c7764a1109ac0cf0bbb5a99fa",
"link": "http://192.168.0.129:8080/api/now/table/sn_cdm_application/122bd15c7764a1109ac0cf0bbb5a99fa"
},
"published": false,
"sys_updated_on": "2023-01-18 14:15:44",
"last_published": "2023-01-18 09:53:37",
"sequence_number": "1",
"number": "SNAP0001110",
"sys_id": "df2b155c7764a1109ac0cf0bbb5a9949",
"sys_updated_by": "admin",
"sys_created_on": "2023-01-18 09:53:36",
"name": "logonService-V2.1-v1.shc",
"last_validated": "",
"validation": "passed",
"sys_created_by": "admin"
}
}