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 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| sourceFullNamePath | 필수 포함된 노드를 반환할 소스 노드의 경로 이름입니다. 이름 경로는 다음 형식 중 하나로 전달할 수 있습니다. 예를 들어 testApp/collections 디렉터리의 collectionA 노드에 대한 포함을 반환하려면 다음을 수행합니다.
데이터 유형: 문자열 |
머리글
다음 요청 및 응답 헤더는 이 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입니다. 포함의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| 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에서 포함을 검색하는 방법을 보여 줍니다.
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/편집기/노드
지정된 노드의 상세 정보 또는 지정된 상위 노드의 하위 구성 데이터 관리 (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 |
| 이름 | 노드 이름입니다. 이 매개변수를 전달하면 지정된 노드에 대한 결과만 리턴됩니다. 데이터 유형: 문자열 기본값: 상위 노드 내의 모든 노드 |
| parentFullName경로 | 필수 하위 노드를 반환하거나 매개변수에 name 지정된 노드가 상주하는 상위 노드의 경로 이름입니다. 이름 경로는 다음 형식 중 하나로 전달할 수 있습니다. 예를 들어 testApp/collections 디렉터리에 있는 collectionA 노드에 대한 노드를 반환하려면 다음을 수행합니다.
데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| 유형 | 노드 유형입니다.
가능한 값:
데이터 유형: 문자열 기본값: 모두 |
| 이름 | 설명 |
|---|---|
| 안 함 |
머리글
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 노드와 연결된 변경 세트 기록의 상세 정보입니다. 데이터 유형: 객체 |
| changeset_id.링크 | 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| changeset_id.값 | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: 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입니다. 포함의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.값 | 노드 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 노드 [sn_cdm_node] |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.link | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.값 | 그룹 기록의 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 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| 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입니다. 포함의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| 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입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| autoCreate부모 | 이름 경로에 존재하지 않는 상위 항목을 구성요소로 자동 생성할지 여부를 나타내는 플래그입니다. 이에 대한 예외는 앱, 배포 가능 항목 및 컬렉션입니다. 이 플래그를 설정하지 않고 부모가 아직 없으면 끝점이 실패합니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자입니다(예: "Chset-10"). 데이터 유형: 문자열 테이블: CDM 변경 세트 [sn_cdm_changeset] |
| fullNamePath | 필수 노드의 경로 이름입니다. 이름 경로는 다음 형식 중 하나로 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| 확실한 | 리프 노드에 대해 값을 암호화해야 하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: 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.값 | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: 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입니다. 포함의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.값 | 노드 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 노드 [sn_cdm_node] |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.link | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.값 | 그룹 기록의 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 또는 상태와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에서 결정한 모든 필드 |
| 이름 | 설명 |
|---|---|
| 안 함 |
머리글
다음 요청 및 응답 헤더는 이 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.값 | 변경 세트 기록의 고유 식별자입니다. 데이터 유형: 문자열 테이블: 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입니다. 포함의 경우 위치는 항상 비어 있습니다.데이터 유형: 문자열 |
| previous_version | 노드 기록의 이전 버전에 대한 상세 정보입니다. 주: 새 노드가 생성된 경우 엔드포인트는 이 매개 변수에 대해 "previous_version" = null 을 반환합니다.데이터 유형: 객체 |
| previous_version.링크 | 테이블 REST API를 사용하여 이 노드 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| previous_version.값 | 노드 기록의 Sys_id입니다. 데이터 유형: 문자열 테이블: CDM 노드 [sn_cdm_node] |
| reason_for_conflict | 상충에 대한 자세한 설명입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 노드에 액세스할 수 있는 그룹의 상세 정보입니다. 데이터 유형: 객체 |
| restricted_to.link | 테이블 REST API를 사용하여 이 그룹 기록을 쿼리하기 위한 호출 구문입니다. 데이터 유형: 문자열 |
| restricted_to.값 | 그룹 기록의 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
}
}