CdmEditorApi (영문)
CdmEditorApi는 노드를 만들고, 노드를 업데이트하고, 다른 노드 아래에 기존 노드를 포함하고, 노드를 삭제하고, 노드 및 노드 포함을 검색할 수 있는 엔드포인트를 제공합니다.
- 스크립팅된 REST CDM 뷰 ACL(sn_cdm.cdm.viewer)
- 스크립팅된 REST CDM 편집기 ACL(sn_cdm.cdm_editor)
암호화된 필드를 보려면 CDM 비밀 역할이 있어야 합니다.
또한 인스턴스에서 구성 데이터 관리 이 API를 사용하려면 (CDM) 플러그인이 활성화되어 있어야 합니다.
CdmEditorApi - /sn_cdm/editor/nodes 삭제
지정된 노드를 삭제합니다.
이 엔드포인트의 호출자는 CDM 편집자 역할을 가지고 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/nodes
기본 URL: /api/sn_cdm/editor/nodes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| fullNamePath | 필수 삭제할 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드를 삭제하려면 다음을 수행합니다.
데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 없음 |
cURL 요청
다음 코드 예제에서는 "cdi88" 노드를 삭제하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?changesetNumber=Chset783&fullNamePath=%2FtestApp%2Fdeployables%2FDevelopment-1%2Fcdi88" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
None - just the associated HTTP status code
CdmEditorApi - GET /sn_cdm/editor/includes
지정된 노드 경로 내에 포함된 노드 목록을 반환합니다.
이 엔드포인트의 호출자는 CDM 뷰어 역할을 가지고 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/includes
기본 URL: /api/sn_cdm/editor/includes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| sourceFullNamePath (영문) | 필수 포함된 노드를 반환할 소스 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어, testApp/collections 디렉터리의 collectionA 노드에 대한 includes를 반환하려면 다음을 수행합니다.
데이터 유형: 문자열 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 노드를 처리할 때 상충이 있었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| conflict_type | 매개변수가 conflict true이면 탐지된 상충의 유형입니다. 상충이 탐지되지 않으면 Null입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 노드의 목적에 대한 간단한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 변경 세트의 일부로 커밋되었을 때의 타임스탬프(정수(Long)로 변환)입니다. 노드가 커밋되지 않은 경우 이 값은 "null"입니다. 데이터 형식: 정수 |
| effective_to | 노드가 삭제되거나 다른 노드로 대체될 때 노드의 타임스탬프(정수(Long)로 변환)이며, 그렇지 않으면 "null"입니다. 데이터 형식: 정수 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 루트 노드에서 시작하는 노드의 수준으로, 항상 0입니다. 예를 들어, 노드 /AppA/components/compA 에는 두 개의 레벨이 있습니다. 데이터 유형: 문자열 |
| linked_to | main_id 이 노드가 연결되는 참조된 노드의 매개변수입니다. 이 노드가 참조 노드에 연결되지 않은 경우 값은 "null"입니다. 데이터 유형: 문자열 |
| main_id | 노드의 기본 식별자입니다. CdmQuery() 스크립트 포함에서 이 값을 사용하여 JSON 트리를 검색할 수 있습니다. 예: CdmQuery().mainId('123')/query().getTree(); 데이터 유형: 문자열 |
| main_id_encoded | 노드 매개변수의 main_id RADIX 57 문자열 표현입니다. 데이터 유형: 문자열 |
| 이름 | 대상 경로 아래에 포함된 노드의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 노드의 분류 규칙 계층 구조입니다. 다음 정보를 사용하여 폴더 계층 구조 내에서 노드를 찾을 수 있습니다. 예를 들어 배포 가능 항목의 계층 구조는 /application/deployables/env:Development입니다 컬렉션에는 /applications/collections의 계층 구조가 있지만 데이터 유형: 문자열 |
| node_path | 대상 경로에 포함된 노드의 전체 경로 이름입니다(예: /Production/deployables/Development1/cdi1). 데이터 유형: 문자열 |
| 위치 | 노드 위치입니다. 예: 다음 배열을 업로드하는 경우: 위치 값은 다음과 같이 설정됩니다.
{"cdi1": 1}) 엔드포인트는 해당 위치와 동일한 이름을 가진 새 가상 노드를 만듭니다. 위의 예에서는 2000입니다. includes의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| secure_value | 이 값이 보안되도록 플래그가 지정된 경우 암호화된 필드(마스킹된 상태로 반환됨). 이 정보의 암호를 해독하려면 사용자에게 sn_cdm.cdm_secrets 역할이 있어야 합니다. 쿼리 매개 변수 필드를 설정하여 이러한 필드를 반환하지 않도록 엔드포인트에 returnFields 지시할 수 있습니다. 데이터 유형: 문자열 |
| 상태 | 노드 상태(Status)입니다. 가능한 값:
데이터 유형: 문자열 |
| sys_id | 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| system_folder | 연결된 노드가 시스템 폴더인지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| 유형 | 노드 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| 값 | 노드 값입니다. 데이터 유형: 문자열 |
cURL 요청
이 코드 예제에서는 소스 경로 /testApp/collections/collA에서 includes를 검색하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/includes?changesetNumber=Chset5&sourceFullNamePath=%2FtestApp%2Fcollections%2FcollA" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": [
{
"sys_id": "a1c517a953b70110a1d3ddeeff7b129b",
"type": "sn_cdm_node_deployable",
"main_id": "6",
"main_id_encoded": ",",
"node_path": "!$!+!,",
"level": 2,
"status": "valid",
"node_classifier": "/application/deployables/env:Development",
"position": null,
"restricted_to": null,
"changeset_id": "e9c517a953b70110a1d3ddeeff7b1299",
"previous_version": null,
"effective_from": "1654002206866",
"effective_to": null,
"name": "Development_1",
"description": null,
"value": null,
"secure_value": null,
"system_folder": "0",
"linked_to": null,
"conflict": "0",
"conflict_type": null
}
]
}
CdmEditorApi - GET /sn_cdm/editor/nodes
지정된 노드의 상세 정보 또는 지정된 상위 노드의 하위 구성 데이터 관리 노드(CDM) 목록을 반환합니다.
이 엔드포인트의 호출자는 CDM 뷰어 역할을 가지고 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/nodes
기본 URL: /api/sn_cdm/editor/nodes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 암호 해독 | 리프 노드에 대해 값을 암호화해야 하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 이름 | 노드 이름입니다. 이 매개 변수를 전달하면 지정된 노드에 대한 결과만 반환됩니다. 데이터 유형: 문자열 기본값: 상위 노드 내의 모든 노드 |
| parentFullNamePath입니다 | 필수 하위 노드를 반환할 상위 노드 또는 매개변수에 지정된 노드가 상주하는 상위 노드의 name 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어, testApp/collections 디렉터리에서 collectionA 노드에 대한 노드를 반환하려면 다음을 수행합니다.
데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 유형 | 노드 유형입니다.
가능한 값:
데이터 유형: 문자열 기본값: 모두 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 노드를 처리할 때 상충이 있었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| conflict_type | 매개변수가 conflict true이면 탐지된 상충의 유형입니다. 상충이 탐지되지 않으면 Null입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 노드의 목적에 대한 간단한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 변경 세트의 일부로 커밋되었을 때의 타임스탬프(정수(Long)로 변환)입니다. 노드가 커밋되지 않은 경우 이 값은 "null"입니다. 데이터 형식: 정수 |
| effective_to | 노드가 삭제되거나 다른 노드로 대체될 때 노드의 타임스탬프(정수(Long)로 변환)이며, 그렇지 않으면 "null"입니다. 데이터 형식: 정수 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 루트 노드에서 시작하는 노드의 수준으로, 항상 0입니다. 예를 들어, 노드 /AppA/components/compA 에는 두 개의 레벨이 있습니다. 데이터 유형: 문자열 |
| linked_to | main_id 이 노드가 연결되는 참조된 노드의 매개변수입니다. 이 노드가 참조 노드에 연결되지 않은 경우 값은 "null"입니다. 데이터 유형: 문자열 |
| main_id | 노드의 기본 식별자입니다. CdmQuery() 스크립트 포함에서 이 값을 사용하여 JSON 트리를 검색할 수 있습니다. 예: CdmQuery().mainId('123')/query().getTree(); 데이터 유형: 문자열 |
| main_id_encoded | 노드 매개변수의 main_id RADIX 57 문자열 표현입니다. 데이터 유형: 문자열 |
| 이름 | 노드의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 노드의 분류 규칙 계층 구조입니다. 다음 정보를 사용하여 폴더 계층 구조 내에서 노드를 찾을 수 있습니다. 예를 들어 배포 가능 항목의 계층 구조는 /application/deployables/env:Development입니다 컬렉션에는 /applications/collections의 계층 구조가 있지만 데이터 유형: 문자열 |
| node_path | 전체 노드 경로 이름입니다. 데이터 유형: 문자열 |
| 위치 | 노드 위치입니다. 예: 다음 배열을 업로드하는 경우: 위치 값은 다음과 같이 설정됩니다.
{"cdi1": 1}) 엔드포인트는 해당 위치와 동일한 이름을 가진 새 가상 노드를 만듭니다. 위의 예에서는 2000입니다. includes의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.value | 노드 기록의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.링크 | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.value | 그룹 기록의 Sys_id입니다. CDM 그룹 [sys_user_group] 테이블에 있습니다. 데이터 유형: 문자열 |
| secure_value | 이 값이 보안되도록 플래그가 지정된 경우 암호화된 필드(마스킹된 상태로 반환됨). 이 정보의 암호를 해독하려면 사용자에게 sn_cdm.cdm_secrets 역할이 있어야 합니다. 쿼리 매개 변수 필드를 설정하여 이러한 필드를 반환하지 않도록 엔드포인트에 returnFields 지시할 수 있습니다. 데이터 유형: 문자열 |
| 상태 | 노드 상태(Status)입니다. 가능한 값:
데이터 유형: 문자열 |
| system_folder | 연결된 노드가 시스템 폴더인지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| sys_class_name | 노드가 상주하는 테이블입니다. 데이터 유형: 문자열 |
| sys_created_by | 노드를 만든 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_created_on | 노드가 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| sys_id | 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| sys_updated_by | 노드를 업데이트한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_updated_on | 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 유형 | 노드 유형입니다.
가능한 값:
데이터 유형: 문자열 기본값: 모두 |
| 값 | 노드 값입니다. 데이터 유형: 문자열 |
cURL 요청
이 코드 예제에서는 /testApp/Fdeployables/Development_1 부모 노드에서 sn_cdm_node_cdi 형식의 자식 노드를 검색하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?decryptPassword=true&name=cdi45&changesetNumber=Chset3&parentFullNamePath=%2FtestApp%2Fdeployables%2FDevelopment_1&type=sn_cdm_node_cdi" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": [
{
"changeset_id": {
"value": "d403648653b70110a1d3ddeeff7b12c5",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5"
},
"node_path": "!$!+!,![:",
"description": null,
"sys_updated_on": "2022-06-30 09:24:07",
"type": "sn_cdm_node_cdi",
"sys_class_name": "sn_cdm_node",
"sys_id": "c93c7c1753981110a1d3ddeeff7b12c7",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-06-30 08:53:13",
"value": "cdcdc",
"effective_from": null,
"linked_to": null,
"sys_created_by": "admin",
"restricted_to": null,
"level": "3",
"conflict_type": null,
"main_id": "2869",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/deployables/env:Development",
"main_id_encoded": "[:",
"name": "cdi45",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
]
}
CdmEditorApi - POST /sn_cdm/editor/includes
구성요소 노드를 수집 노드에 포함하거나 수집 노드를 배포 가능 노드에 포함하는 등 기존 노드를 다른 노드에 포함합니다. 노드를 포함하면 새 노드에는 고유한 sys_id와 main_Id 있습니다.
이 엔드포인트의 호출자는 CDM 편집자 역할을 가지고 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/includes
기본 URL: /api/sn_cdm/editor/includes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 대상 노드에 포함할 오픈 변경 세트의 고유 번호입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| sourceFullNamePath (영문) | 필수 대상 노드에 포함할 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 다음 노드를 포함하려면 Staging/deployables/Development1/cdi1:
데이터 유형: 문자열 |
| targetFullNamePath입니다 | 필수 소스 노드가 포함될 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 Production/deployables/Development1 노드를 포함하려면 다음을 수행합니다.
데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 노드를 처리할 때 상충이 있었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| conflict_type | 매개변수가 conflict true이면 탐지된 상충의 유형입니다. 상충이 탐지되지 않으면 Null입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 노드의 목적에 대한 간단한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 변경 세트의 일부로 커밋되었을 때의 타임스탬프(정수(Long)로 변환)입니다. 노드가 커밋되지 않은 경우 이 값은 "null"입니다. 데이터 형식: 정수 |
| effective_to | 노드가 삭제되거나 다른 노드로 대체될 때 노드의 타임스탬프(정수(Long)로 변환)이며, 그렇지 않으면 "null"입니다. 데이터 형식: 정수 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 루트 노드에서 시작하는 노드의 수준으로, 항상 0입니다. 예를 들어, 노드 /AppA/components/compA 에는 두 개의 레벨이 있습니다. 데이터 유형: 문자열 |
| linked_to | main_id 이 노드가 연결되는 참조된 노드의 매개변수입니다. 이 노드가 참조 노드에 연결되지 않은 경우 값은 "null"입니다. 데이터 유형: 문자열 |
| main_id | 노드의 기본 식별자입니다. CdmQuery() 스크립트 포함에서 이 값을 사용하여 JSON 트리를 검색할 수 있습니다. 예: CdmQuery().mainId('123')/query().getTree(); 데이터 유형: 문자열 |
| main_id_encoded | 노드 매개변수의 main_id RADIX 57 문자열 표현입니다. 데이터 유형: 문자열 |
| 이름 | 대상 경로 아래에 포함된 노드의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 노드의 분류 규칙 계층 구조입니다. 다음 정보를 사용하여 폴더 계층 구조 내에서 노드를 찾을 수 있습니다. 예를 들어 배포 가능 항목의 계층 구조는 /application/deployables/env:Development입니다 컬렉션에는 /applications/collections의 계층 구조가 있지만 데이터 유형: 문자열 |
| node_path | 대상 경로에 포함된 노드의 전체 경로 이름입니다(예: /Production/deployables/Development1/cdi1). 데이터 유형: 문자열 |
| 위치 | 노드 위치입니다. 예: 다음 배열을 업로드하는 경우: 위치 값은 다음과 같이 설정됩니다.
{"cdi1": 1}) 엔드포인트는 해당 위치와 동일한 이름을 가진 새 가상 노드를 만듭니다. 위의 예에서는 2000입니다. includes의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| secure_value | 이 값이 보안되도록 플래그가 지정된 경우 암호화된 필드(마스킹된 상태로 반환됨). 이 정보의 암호를 해독하려면 사용자에게 sn_cdm.cdm_secrets 역할이 있어야 합니다. 쿼리 매개 변수 필드를 설정하여 이러한 필드를 반환하지 않도록 엔드포인트에 returnFields 지시할 수 있습니다. 데이터 유형: 문자열 |
| 상태 | 노드 상태(Status)입니다. 가능한 값:
데이터 유형: 문자열 |
| sys_id | 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| system_folder | 연결된 노드가 시스템 폴더인지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| 유형 | 노드 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| 값 | 노드 값입니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 /testApp/deployables/Development_1 아래에 /testApp/collections/collA 노드를 포함하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/includes?changesetNumber=Chset5&targetFullNamePath=%2FtestApp%2Fdeployables%2FDevelopment_1&sourceFullNamePath=%2FtestApp%2Fcollecti
ons%2FcollA" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": {
"changeset_id": {
"value": "d403648653b70110a1d3ddeeff7b12c5",
"link": "http://192.168.0.233:8080/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5"
},
"node_path": "!$!+!,![?",
"description": null,
"sys_updated_on": "2022-06-30 09:19:47",
"type": "sn_cdm_node_linked",
"sys_class_name": "sn_cdm_node",
"sys_id": "1642015b53981110a1d3ddeeff7b1232",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-06-30 09:19:47",
"value": null,
"effective_from": null,
"linked_to": "2870",
"sys_created_by": "admin",
"restricted_to": null,
"level": "3",
"conflict_type": null,
"main_id": "2872",
"effective_to": null,
"secure_value": null,
"node_classifier": "/application/deployables/env:Development",
"main_id_encoded": "[?",
"name": "collA",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}
CdmEditorApi - POST /sn_cdm/editor/nodes
구성요소, 컬렉션, 폴더, CDI(구성 데이터 항목) 또는 변수와 같은 특정 유형의 노드를 생성합니다.
현재 정의되지 않은 상위 노드를 자동으로 생성할지 여부도 지정할 수 있습니다.
이 엔드포인트의 호출자는 CDM 편집자 또는 CDM 비밀 역할이 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/nodes
기본 URL: /api/sn_cdm/editor/nodes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| autoCreateParents (영문) | 이름 경로에 존재하지 않는 상위 항목을 구성요소로 자동으로 생성할지 여부를 나타내는 플래그입니다. 단, 앱, 배포 가능 항목 및 수집은 예외입니다. 이 플래그를 설정하지 않고 부모가 아직 존재하지 않는 경우 엔드포인트가 실패합니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| fullNamePath | 필수 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 확실한 | 리프 노드에 대해 값을 암호화해야 하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 유형 | 필수 새 노드의 유형입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| 값 | 새 노드의 값입니다. 데이터 유형: 문자열 기본값: "null"과 동일 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 노드를 처리할 때 상충이 있었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| conflict_type | 매개변수가 conflict true이면 탐지된 상충의 유형입니다. 상충이 탐지되지 않으면 Null입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 노드의 목적에 대한 간단한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 변경 세트의 일부로 커밋되었을 때의 타임스탬프(정수(Long)로 변환)입니다. 노드가 커밋되지 않은 경우 이 값은 "null"입니다. 데이터 형식: 정수 |
| effective_to | 노드가 삭제되거나 다른 노드로 대체될 때 노드의 타임스탬프(정수(Long)로 변환)이며, 그렇지 않으면 "null"입니다. 데이터 형식: 정수 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 루트 노드에서 시작하는 노드의 수준으로, 항상 0입니다. 예를 들어, 노드 /AppA/components/compA 에는 두 개의 레벨이 있습니다. 데이터 유형: 문자열 |
| linked_to | main_id 이 노드가 연결되는 참조된 노드의 매개변수입니다. 이 노드가 참조 노드에 연결되지 않은 경우 값은 "null"입니다. 데이터 유형: 문자열 |
| main_id | 노드의 기본 식별자입니다. CdmQuery() 스크립트 포함에서 이 값을 사용하여 JSON 트리를 검색할 수 있습니다. 예: CdmQuery().mainId('123')/query().getTree(); 데이터 유형: 문자열 |
| main_id_encoded | 노드 매개변수의 main_id RADIX 57 문자열 표현입니다. 데이터 유형: 문자열 |
| 이름 | 노드의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 노드의 분류 규칙 계층 구조입니다. 다음 정보를 사용하여 폴더 계층 구조 내에서 노드를 찾을 수 있습니다. 예를 들어 배포 가능 항목의 계층 구조는 /application/deployables/env:Development입니다 컬렉션에는 /applications/collections의 계층 구조가 있지만 데이터 유형: 문자열 |
| node_path | 전체 노드 경로 이름입니다. 데이터 유형: 문자열 |
| 위치 | 노드 위치입니다. 예: 다음 배열을 업로드하는 경우: 위치 값은 다음과 같이 설정됩니다.
{"cdi1": 1}) 엔드포인트는 해당 위치와 동일한 이름을 가진 새 가상 노드를 만듭니다. 위의 예에서는 2000입니다. includes의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.value | 노드 기록의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.링크 | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.value | 그룹 기록의 Sys_id입니다. CDM 그룹 [sys_user_group] 테이블에 있습니다. 데이터 유형: 문자열 |
| secure_value | 이 값이 보안되도록 플래그가 지정된 경우 암호화된 필드(마스킹된 상태로 반환됨). 이 정보의 암호를 해독하려면 사용자에게 sn_cdm.cdm_secrets 역할이 있어야 합니다. 쿼리 매개 변수 필드를 설정하여 이러한 필드를 반환하지 않도록 엔드포인트에 returnFields 지시할 수 있습니다. 데이터 유형: 문자열 |
| 상태 | 노드 상태(Status)입니다. 가능한 값:
데이터 유형: 문자열 |
| system_folder | 연결된 노드가 시스템 폴더인지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| sys_class_name | 노드가 상주하는 테이블입니다. 데이터 유형: 문자열 |
| sys_created_by | 노드를 만든 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_created_on | 노드가 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| sys_id | 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| sys_updated_by | 노드를 업데이트한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_updated_on | 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 유형 | 노드 유형입니다.
가능한 값:
데이터 유형: 문자열 기본값: 모두 |
| 값 | 노드 값입니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 이 엔드포인트를 사용하여 노드를 만드는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?fullNamePath=%2FtestApp%2Fdeployables%2FDevelopment1%2Fcdi1&secure=true&value=someVal&type=cdi&changesetNumber=Chset-760" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": {
"changeset_id": {
"value": "d403648653b70110a1d3ddeeff7b12c5",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5"
},
"node_path": "!$!+!,![:",
"description": null,
"sys_updated_on": "2022-06-30 08:53:13",
"type": "sn_cdm_node_cdi",
"sys_class_name": "sn_cdm_node",
"sys_id": "c93c7c1753981110a1d3ddeeff7b12c7",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-06-30 08:53:13",
"value": null,
"effective_from": null,
"linked_to": null,
"sys_created_by": "admin",
"restricted_to": null,
"level": "3",
"conflict_type": null,
"main_id": "2869",
"effective_to": null,
"secure_value": "113a0c6e53001110a1d3ddeeff7b121d1bAUA1wj-fxofbSrMyF-BAg==6qiho5f_9DhnuHT2Km5SLf0Ck4XNX_w=",
"node_classifier": "/application/deployables/env:Development",
"main_id_encoded": "[:",
"name": "cdi45",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}
CdmEditorApi - PUT /sn_cdm/editor/nodes
지정된 노드의 이름 및/또는 값을 업데이트합니다.
이 엔드포인트의 호출자는 CDM 편집자 또는 CDM 비밀 역할이 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/editor/nodes
기본 URL: /api/sn_cdm/editor/nodes
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| fullNamePath | 필수 노드의 경로 이름입니다. 다음 형식 중 하나로 이름 경로를 전달할 수 있습니다. 예를 들어 노드의 이름 경로를 정의하려면 testApp/deployables/Development1/cdi1을 정의하십시오.
데이터 유형: 문자열 |
| 새 이름 | 연결된 노드의 새 이름입니다. 데이터 유형: 문자열 |
| newValue | 연결된 노드의 새 값입니다. 데이터 유형: 문자열 |
| 확실한 | 리프 노드에 대해 값을 암호화해야 하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| 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 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.value | 변경 세트 기록의 고유 식별자입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 노드를 처리할 때 상충이 있었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| conflict_type | 매개변수가 conflict true이면 탐지된 상충의 유형입니다. 상충이 탐지되지 않으면 Null입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 노드의 목적에 대한 간단한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 변경 세트의 일부로 커밋되었을 때의 타임스탬프(정수(Long)로 변환)입니다. 노드가 커밋되지 않은 경우 이 값은 "null"입니다. 데이터 형식: 정수 |
| effective_to | 노드가 삭제되거나 다른 노드로 대체될 때 노드의 타임스탬프(정수(Long)로 변환)이며, 그렇지 않으면 "null"입니다. 데이터 형식: 정수 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 루트 노드에서 시작하는 노드의 수준으로, 항상 0입니다. 예를 들어, 노드 /AppA/components/compA 에는 두 개의 레벨이 있습니다. 데이터 유형: 문자열 |
| linked_to | main_id 이 노드가 연결되는 참조된 노드의 매개변수입니다. 이 노드가 참조 노드에 연결되지 않은 경우 값은 "null"입니다. 데이터 유형: 문자열 |
| main_id | 노드의 기본 식별자입니다. CdmQuery() 스크립트 포함에서 이 값을 사용하여 JSON 트리를 검색할 수 있습니다. 예: CdmQuery().mainId('123')/query().getTree(); 데이터 유형: 문자열 |
| main_id_encoded | 노드 매개변수의 main_id RADIX 57 문자열 표현입니다. 데이터 유형: 문자열 |
| 이름 | 노드의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 노드의 분류 규칙 계층 구조입니다. 다음 정보를 사용하여 폴더 계층 구조 내에서 노드를 찾을 수 있습니다. 예를 들어 배포 가능 항목의 계층 구조는 /application/deployables/env:Development입니다 컬렉션에는 /applications/collections의 계층 구조가 있지만 데이터 유형: 문자열 |
| node_path | 전체 노드 경로 이름입니다. 데이터 유형: 문자열 |
| 위치 | 노드 위치입니다. 예: 다음 배열을 업로드하는 경우: 위치 값은 다음과 같이 설정됩니다.
{"cdi1": 1}) 엔드포인트는 해당 위치와 동일한 이름을 가진 새 가상 노드를 만듭니다. 위의 예에서는 2000입니다. includes의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.value | 노드 기록의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.링크 | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.value | 그룹 기록의 Sys_id입니다. CDM 그룹 [sys_user_group] 테이블에 있습니다. 데이터 유형: 문자열 |
| secure_value | 이 값이 보안되도록 플래그가 지정된 경우 암호화된 필드(마스킹된 상태로 반환됨). 이 정보의 암호를 해독하려면 사용자에게 sn_cdm.cdm_secrets 역할이 있어야 합니다. 쿼리 매개 변수 필드를 설정하여 이러한 필드를 반환하지 않도록 엔드포인트에 returnFields 지시할 수 있습니다. 데이터 유형: 문자열 |
| 상태 | 노드 상태(Status)입니다. 가능한 값:
데이터 유형: 문자열 |
| system_folder | 연결된 노드가 시스템 폴더인지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| sys_class_name | 노드가 상주하는 테이블입니다. 데이터 유형: 문자열 |
| sys_created_by | 노드를 만든 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_created_on | 노드가 생성된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| sys_id | 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| sys_updated_by | 노드를 업데이트한 사용자의 이름입니다. 데이터 유형: 문자열 |
| sys_updated_on | 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: yyyy-mm-dd hh:mm:ss |
| 유형 | 노드 유형입니다.
가능한 값:
데이터 유형: 문자열 기본값: 모두 |
| 값 | 노드 값입니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 노드 값을 업데이트하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/editor/nodes?newValue=cdcdc&fullNamePath=%2FtestApp%2Fdeployables%2FDe
velopment-1%2Fcdi45&changesetNumber=Chset-5" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": {
"changeset_id": {
"value": "d403648653b70110a1d3ddeeff7b12c5",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/d403648653b70110a1d3ddeeff7b12c5"
},
"node_path": "!$!+!,![:",
"description": null,
"sys_updated_on": "2022-06-30 08:53:13",
"type": "sn_cdm_node_cdi",
"sys_class_name": "sn_cdm_node",
"sys_id": "c93c7c1753981110a1d3ddeeff7b12c7",
"sys_updated_by": "admin",
"previous_version": null,
"sys_created_on": "2022-06-30 08:53:13",
"value": null,
"effective_from": null,
"linked_to": null,
"sys_created_by": "admin",
"restricted_to": null,
"level": "3",
"conflict_type": null,
"main_id": "2869",
"effective_to": null,
"secure_value": "113a0c6e53001110a1d3ddeeff7b121d1bAUA1wj-fxofbSrMyF-BAg==6qiho5f_9DhnuHT2Km5SLf0Ck4XNX_w=",
"node_classifier": "/application/deployables/env:Development",
"main_id_encoded": "[:",
"name": "cdi45",
"position": null,
"reason_for_conflict": null,
"system_folder": false,
"status": "new",
"conflict": false
}
}