CdmChangesetsApi
CdmChangesetsApi는 변경 집합을 관리할 수 있는 끝점을 제공합니다.
- 새 변경 세트를 생성합니다.
- 변경 집합을 배포합니다.
- 또는 개별 변경 세트의 목록을 검색합니다.
- 변경 세트 내에서 노드 변경 내용을 검색합니다.
- 변경 세트의 영향을 받는 애플리케이션 또는 배포 가능 항목 목록을 검색합니다.
- 변경 세트를 삭제합니다.
- 지정된 변경 세트와 연결된 공유 구성요소의 목록을 반환합니다.
변경 집합 만들기 끝점은 비동기 큐 구현을 사용합니다. 이 유형의 구현에서는 먼저 변경 집합 만들기 요청 엔드포인트를 호출합니다. 이 엔드포인트는 요청을 큐에 대기하고 커밋 식별자를 반환합니다. 그런 다음 이 커밋 식별자를 사용하여 적절한 상태 엔드포인트를 호출하여 생성 요청의 상태를 가져옵니다.
- 스크립팅된 REST CDM 뷰 ACL(sn_cdm.cdm.viewer)
- 스크립팅된 REST CDM 편집기 ACL(sn_cdm.cdm_editor)
또한 인스턴스에서 구성 데이터 관리 이 API를 사용하려면 (CDM) 플러그인이 활성화되어 있어야 합니다.
변경 집합에 대한 자세한 내용은 CDM의 변경 집합 및 버전 제어를 참조하십시오.
CdmChangesetsApi - /sn_cdm/changesets 삭제
지정된 변경 세트를 삭제합니다.
이 엔드포인트에 액세스하려면 호출자에게 CDM 편집자 역할이 있어야 합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets
기본 URL: /api/sn_cdm/changesets
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 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/changesets?changesetNumber=Chset-760" \
--request DELETE \
--header "Accept:application/json" \
--user 'username':'password'
변경 세트를 성공적으로 삭제하면 HTTP 상태 코드 이외의 응답이 반환되지 않습니다.
None - results defined by the HTTP status code
CdmChangesetsApi - GET /sn_cdm/changesets
(CDM) 애플리케이션 또는 지정된 변경 세트 기록과 연결된 구성 데이터 관리 모든 변경 세트를 검색합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets
기본 URL: /api/sn_cdm/changesets
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 변경 세트를 반환하려는 CDM 애플리케이션의 이름입니다. 이는 활성 애플리케이션이어야 합니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 데이터 유형: 문자열 |
| 번호 | 변경 세트 번호입니다. CDMChangeset [sn_cdm_changeset] 테이블에 있습니다. 이 값을 전달하면 지정된 변경 집합만 반환됩니다. 매개변수에 지정된 appName CDM 애플리케이션과 연결된 변경 세트여야 합니다. 데이터 유형: 문자열 기본값: 없음 - CDM 애플리케이션과 관련된 모든 변경 세트 또는 매개변수로 state 지정된 변경 세트를 반환합니다. |
| 상태 | 반환할 변경 세트의 상태입니다. 지정된 상태에 대해 지정된 CDM 애플리케이션과 연결된 변경 세트만 반환합니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 기본값: 모든 상태에 대한 모든 변경 세트 반환 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| auto_validate | 커밋 시 생성된 변경 세트의 유효성을 검사했는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| cdm_application | 변경 세트와 연결된 CDM 애플리케이션에 대한 상세 정보입니다. 데이터 유형: 객체 |
| cdm_application.링크 | 연결된 CDM 애플리케이션을 검색하기 위해 테이블 REST 엔드포인트를 호출하는 데 사용할 쿼리입니다. 데이터 유형: 문자열 |
| cdm_application.value | 연결된 CDM 애플리케이션의 Sys_id입니다. CDM 애플리케이션 [sn_cdm_application] 테이블에 있습니다. 데이터 유형: 문자열 |
| committed_at | 변경 세트가 마지막으로 커밋된 날짜 및 시간입니다. 데이터 유형: 문자열 형식: YYYY–mm–DD hh:mm:ss |
| committed_by | 변경 세트를 커밋한 사용자에 대한 상세 정보입니다. 데이터 유형: 객체 |
| committed_by.링크 | REST 테이블 API를 사용하여 변경 세트를 커밋한 사용자의 기록을 가져오는 호출입니다. 데이터 유형: 문자열 |
| committed_by.value | 변경 세트를 커밋한 사용자의 Sys_id입니다. 데이터 유형: 문자열 |
| 설명 | 변경 세트의 목적에 대한 간략한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| last_conflict_detection_time | 마지막 상충 탐지가 실행된 이후의 시간입니다. 상충 탐지는 변경 세트가 커밋될 때마다 수행됩니다. 데이터 유형: 숫자 단위: 밀리초 |
| last_updated | 이 변경 세트를 통해 연결된 구성 데이터가 변경된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| 번호 | 고유한 변경 세트 번호입니다. 데이터 유형: 문자열 |
| publish_option | 연결된 구성된 스냅샷에 대한 게시 옵션입니다. 유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: publish_none |
| 상태 | 변경 세트의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| sys_created_by | 변경 세트를 만든 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| sys_created_on | 변경 세트를 만든 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| sys_id | 변경 세트의 Sys_id입니다. CDMChangeset [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| sys_updated_by | 변경 세트를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| sys_updated_on | 변경 세트가 마지막으로 업데이트된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| 직위 | 변경 세트의 제목입니다. 데이터 유형: 문자열 |
cURL 요청
이 코드 예제에서는 특정 변경 집합을 검색하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets?appName=testApp&changesetNumber=Chset-946&state=committed" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": [
{
"description": "Auto generated for deletion of CDM Deployable Dep-12022-06-29 13:09:46",
"cdm_application": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_updated_on": "2022-06-29 13:09:47",
"title": "Auto generated for deletion of CDM Deployable Dep-12022-06-29 13:09:46",
"number": "Chset-946",
"sys_id": "955d6c0f53141110a1d3ddeeff7b1233",
"sys_updated_by": "admin",
"committed_at": "2022-06-29 13:09:46",
"sys_created_on": "2022-06-29 13:09:46",
"committed_by": {
"value": "6816f79cc0a8016401c5a33be04be441",
"link": "http://instance.servicenow.com/api/now/table/sys_user/6816f79cc0a8016401c5a33be04be441"
},
"state": "committed",
"auto_validate": true,
"publish_option": "publish_none",
"last_conflict_detection_time": "1656508187450",
"sys_created_by": "admin",
"last_updated": "2022-06-29 13:09:46"
}
]
}
CdmChangesetsApi - GET /sn_cdm/changesets/activity
지정된 변경 세트 내에서 노드 변경 내용을 검색합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/activity
기본 URL: /api/sn_cdm/changesets/activity
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 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 엔드포인트를 호출하여 연결된 변경 세트를 검색하는 데 사용할 쿼리입니다. 데이터 유형: 문자열 |
| changeset_id.value | 연결된 변경 세트의 Sys_id입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 충돌 | 연결된 변경 세트에 상충이 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| 만든 | 노드가 생성된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| created_by | 노드를 만드는 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| name_path | 노드 경로 이름입니다. 데이터 유형: 문자열 |
| new_name | 노드의 현재 이름입니다. 데이터 유형: 문자열 |
| new_value | 노드의 현재 값입니다. 리프 노드 및 배열 리터럴의 경우. 데이터 유형: 문자열 |
| old_name | 노드의 이전 이름입니다. 데이터 유형: 문자열 |
| old_value | 노드의 이전 값입니다. 리프 노드 및 배열 리터럴의 경우. 데이터 유형: 문자열 |
| 업데이트됨 | 노드가 마지막으로 업데이트된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| updated_by | 노드를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| 확실한 | 연결된 리프 노드에 보안이 적용되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| 유형 | 노드 유형입니다. 가능한 값:
데이터 유형: 문자열 |
cURL 요청
이 코드 예제에서는 특정 변경 집합에 대한 노드 변경 내용을 검색하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/activity?changesetNumber=Chset-783" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": [
{
"sys_id": "ed5d6c0f53141110a1d3ddeeff7b1233",
"changeset_id": "955d6c0f53141110a1d3ddeeff7b1233",
"new_value": null,
"new_state": "Deleted",
"new_name": "Dep-1",
"new_type": "Deployable",
"new_encrypted": false,
"updated_on": "2022-06-29 13:09:46",
"updated_by": "admin",
"resolution_method": "",
"conflict": null,
"path": "deployables/Dep-1",
"created_by": null,
"created_on": null,
"old_value": null,
"old_state": "Superseded",
"old_name": "Dep-1",
"old_type": "Deployable",
"old_encrypted": false
}
]
}
CdmChangesetsApi - GET /sn_cdm/changesets/commit-status/{commit_id}
지정된 변경 세트 커밋 요청의 현재 상태를 반환합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/commit-status/{commit_id}
기본 URL: /api/sn_cdm/changesets/commit-status/{commit_id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| commit_id | 상태를 반환할 커밋 요청에 대한 Sys_id입니다. 이 값은 엔드포인트에서 반환됩니다 CdmChangesetsApi - POST /sn_cdm/changesets/{changeset_id}/commit . |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| 커밋하다_id | 커밋 요청 기록 sys_id. 엔드포인트에 전달된 것과 동일합니다. 데이터 유형: 문자열 |
| 오류 | 업로드 중 발생한 오류에 대한 설명입니다. 데이터 유형: 문자열 |
| 출력 | 업로드된 데이터에 대한 설명 또는 업로드 중에 오류가 발생한 경우 발생한 오류를 설명하는 오류 메시지입니다. 데이터 유형: 객체 |
| 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 |
| output.snapshot_description | 연결된 스냅샷에 대한 설명입니다. 데이터 유형: 문자열 |
| output.snapshot_name | 연결된 스냅샷의 이름입니다. 데이터 유형: 문자열 |
| 출력.상태 | 업로드된 컨텐츠의 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| output.sys_created_by 님 | 기록을 생성한 엔터티의 Sys_id입니다. 데이터 유형: 문자열 |
| output.sys_id | 변경 세트를 포함하는 기록의 Sys_id입니다. 데이터 유형: 문자열 |
| output.title | 업로드의 일부로 생성된 변경 세트의 제목입니다. 데이터 유형: 문자열 |
| processing_state | 커밋 요청의 현재 처리 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| request_id | 요청 ID입니다. 엔드포인트에 전달된 것과 동일하며 commit_id. 데이터 유형: 문자열 |
| 상태 | 지정된 커밋의 현재 상태입니다. CDM 요청 큐 [sn_cdm_request_queue] 테이블의 상태 열 값입니다. 가능한 값:
데이터 유형: 문자열 |
| 유형 | 요청의 유형입니다. 가능한 값:
데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 이 엔드포인트를 호출하여 지정된 커밋의 상태를 가져오는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/commit-status/bf506e69537c3010a1d3ddeeff7b12c0"\
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
다음은 성공 및 오류 응답의 예를 보여줍니다.
// Successful response
{
"result": {
"type": "commit",
"state": "completed",
"output": {
"sys_id": "4a4407e953124110da35ddeeff7b1235",
"number": "Chset-1207",
"title": "admin064407e953124110da35ddeeff7b1235",
"description": "A description of my changeset provided during creation",
"committed_at": "2022-03-17 22:19:33",
"committed_by": "6816f79cc0a8016401c5a33be04be441",
"sys_created_by": "admin",
"state": "committed",
"publish_option": "publish_none",
"auto_validate": false,
"snapshot_name": null,
"snapshot_description": null,
"cdm_application": "DemoApp",
"last_conflict_detection_time": null
},
"processing_state": "PROCESSED",
"commit_id": "9cd583e953124110da35ddeeff7b128a"
}
}
// Example of an error response
{
"result": {
"state": "error",
"errors": "Invalid requestId '9cd583e953124110da35ddeeff7b128'",
"commit_id": "9cd583e953124110da35ddeeff7b128"
}
}
CdmChangesetsApi - GET /sn_cdm/changesets/impacted-deployables
지정된 변경 세트와 연결된 배포 가능 항목 목록을 반환합니다.
이 엔드포인트에 액세스하려면 CDM 뷰어 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/impacted-deployables
기본 URL: /api/sn_cdm/changesets/impacted-deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 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 요청
다음 코드 예제에서는 지정된 변경 집합에 대해 영향을 받는 배포 가능 항목을 검색하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/impacted-deployables?changesetNumber=Chset-783" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": [
{
"cmdb_ci": {
"value": "75c5d7a953b70110a1d3ddeeff7b12a2",
"link": "http://instance.servicenow.com/api/now/table/cmdb_ci_service_auto/75c5d7a953b70110a1d3ddeeff7b12a2"
},
"cdi_count": "2",
"snapshot_version_counter": "3",
"description": null,
"sys_updated_on": "2022-06-29 16:19:05",
"environment_type": "Development",
"node": {
"value": "a1c517a953b70110a1d3ddeeff7b129b",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_node/a1c517a953b70110a1d3ddeeff7b129b"
},
"sys_id": "6dc517a953b70110a1d3ddeeff7b129b",
"sys_updated_by": "admin",
"cdm_app": {
"value": "62b517a953b70110a1d3ddeeff7b128c",
"link": "http://instance.servicenow.com/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c"
},
"sys_created_on": "2022-05-31 13:03:23",
"cdi_usage": "0.02",
"name": "Development_1",
"state": "active",
"sys_created_by": "admin"
}
]
}
CdmChangesetsApi - GET /sn_cdm/changesets/impacted-shared-components
지정된 변경 세트와 연결된 공유 구성요소 목록을 반환합니다.
이 엔드포인트에 액세스하려면 CDM 뷰어 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/impacted-shared-components
기본 URL: /api/sn_cdm/changesets/impacted-shared-components
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| changesetNumber | 필수 |
| returnFields | 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 state와 같은 기록 열 이름을 전달합니다. 데이터 유형: 배열 기본값: 엔드포인트에 의해 결정된 모든 필드 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 전달된 변경 세트가 없습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| cdm_shared__library | 구성요소가 상주하는 공유 라이브러리의 Sys_id입니다. 데이터 유형: 문자열 |
| 설명 | CDM 공유 구성요소에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우에만 반환됩니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 발생한 오류에 대한 상세 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 오류에 대한 개요를 제공하는 메시지입니다. 데이터 유형: 문자열 |
| 이름 | CDM 공유 구성요소의 이름입니다. 데이터 유형: 문자열 |
| 노드 | 공유 구성요소 노드의 Sys_id입니다. CDM 노드 [sn_cdm_node] 테이블에 있습니다. 데이터 유형: 문자열 |
| node_main | 공유 구성요소 노드 기록의 main_id Sys_id입니다. CDM 노드 메인 [sn_cdm_node_main] 테이블에 있습니다. 데이터 유형: 문자열 |
| 상태 | 공유 구성요소의 현재 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| sys_created_by | CDM 공유 구성요소를 생성하는 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| sys_created_on | CDM 공유 구성요소가 생성된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| sys_id | 공유 구성요소의 Sys_id입니다. CDM 공유 구성요소 [sn_cdm_shared_component] 테이블에 있습니다. 데이터 유형: 문자열 |
| sys_updated_by | CDM 공유 구성요소를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어, able.tuter입니다. 데이터 유형: 문자열 |
| sys_updated_on | CDM 공유 구성요소가 마지막으로 업데이트된 날짜 및 시간입니다. 형식: YYYY–mm–DD hh:mm:ss 데이터 유형: 문자열 |
| version_counter | 공유 구성요소에 대해 생성된 버전 수입니다. 데이터 형식: 정수 |
cURL 요청
다음 코드 예제에서는 changeset = "Chset-20"에 대해 영향을 받는 공유 구성 요소를 검색하는 방법을 보여 줍니다.
curl "https://instance.servicenow.com/sn_cdm/changesets/impacted-shared-components?changesetNumber=Chset-20" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
응답:
{
"result": [
{
"version_counter": "1",
"description": null,
"cdm_shared_library": "acb905e097b3991052687b890353afcd",
"sys_updated_on": "2022-12-12 20:28:49",
"node": "3cb945e097b3991052687b890353af0d",
"sys_id": "34b945e097b3991052687b890353af20",
"sys_updated_by": "john.jones",
"node_main": "74b945e097b3991052687b890353af0d",
"sys_created_on": "2022-12-12 20:28:39",
"name": "logonService-V2.1",
"state": "active",
"sys_created_by": "john.jones"
},
{
"version_counter": "1",
"description": null,
"cdm_shared_library": "acb905e097b3991052687b890353afcd",
"sys_updated_on": "2022-12-12 20:28:49",
"node": "b0b945e097b3991052687b890353af11",
"sys_id": "30b945e097b3991052687b890353af21",
"sys_updated_by": "john.jones",
"node_main": "f8b945e097b3991052687b890353af10",
"sys_created_on": "2022-12-12 20:28:39",
"name": "logonService-V2.2",
"state": "active",
"sys_created_by": "john.jones"
},
{
"version_counter": "1",
"description": null,
"cdm_shared_library": "acb905e097b3991052687b890353afcd",
"sys_updated_on": "2022-12-12 20:28:49",
"node": "6cb905e097b3991052687b890353afd3",
"sys_id": "b4b945e097b3991052687b890353af21",
"sys_updated_by": "john.jones",
"node_main": "a4b905e097b3991052687b890353afd3",
"sys_created_on": "2022-12-12 20:28:39",
"name": "paymentService-V1.0",
"state": "active",
"sys_created_by": "john.jones"
},
{
"version_counter": "1",
"description": null,
"cdm_shared_library": "acb905e097b3991052687b890353afcd",
"sys_updated_on": "2022-12-12 20:28:49",
"node": "e0b905e097b3991052687b890353aff1",
"sys_id": "3cb945e097b3991052687b890353af21",
"sys_updated_by": "john.jones",
"node_main": "2cb905e097b3991052687b890353aff0",
"sys_created_on": "2022-12-12 20:28:39",
"name": "paymentService-V1.1",
"state": "active",
"sys_created_by": "john.jones"
}
]
}
CdmChangesetsApi - GET /sn_cdm/changesets/{changeset_id}/impacted-deployables
지정된 변경 세트와 연결된 배포 가능 항목 목록을 반환합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/{changeset_id}/impacted-deployables
기본 URL: /api/sn_cdm/changesets/{changeset_id}/impacted-deployables
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| changeset_id | 처리할 변경 세트 기록의 Sys_id입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| changeset_id | 배포 가능 노드와 연결된 마지막 변경 세트의 Sys_id입니다. 데이터 유형: 문자열 |
| 충돌 | 연결된 배포 가능 항목이 상충하는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 숫자 |
| conflict_type | 배포 가능 상충의 유형입니다. 가능한 값:
데이터 유형: 문자열 |
| 설명 | 배포 가능 노드에 대한 설명입니다. 데이터 유형: 문자열 |
| effective_from | 노드가 유효한 타임스탬프입니다. 노드가 생성된 변경 집합을 커밋할 때까지 이 값은 null 입니다. 데이터 유형: 숫자 |
| effective_to | 노드가 더 이상 유효하지 않은 경우의 타임스탬프입니다. 이 값이 null이면 새 버전으로 대체될 때까지 노드가 계속 적용됩니다. 데이터 유형: 숫자 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 수준 | 애플리케이션 수준에서 시작하는 노드의 깊이로, 0입니다. 데이터 유형: 숫자 |
| linked_to | 컬렉션 및 구성요소 내의 참조 노드 ID입니다. 예를 들어 다음 노드 코드 조각은 컬렉션 collA와 구성 요소 compA 간의 링크를 보여 줍니다. 이 예의 경우 linkedTo 값은 1입니다.
데이터 유형: 문자열 |
| main_id | 배포 가능 노드의 고유 식별자입니다. 이 값은 노드가 생성될 때 생성되며 배포 가능한 노드를 식별하는 데 사용됩니다. 데이터 유형: 숫자 |
| main_id_encoded | Radix 57 문자열 표현을 사용하여 반환 결과를 인코딩한 값 mainId 입니다. 데이터 유형: 문자열 |
| 이름 | 배포 가능 항목의 이름입니다. 데이터 유형: 문자열 |
| node_classifier | 개발, 프로덕션 또는 테스트와 같은 노드 분류. 형식:
데이터 유형: 문자열 |
| 위치 | 배포 가능한 노드 위치입니다. 배열에만 적용할 수 있습니다. 예를 들어, 배열의 경우 다음과 같습니다. {}는 위치 1000이고, "literal1"은 위치 2000입니다. "literal2"는 위치 3000입니다. []는 위치 4000입니다. 데이터 유형: 숫자 |
| previous_version | 연결된 배포 가능 노드의 이전 버전 Sys_id입니다. 데이터 유형: 문자열 |
| restricted_to | 연결된 배포 가능 노드에 액세스할 수 있는 사용자 sys_ids 목록입니다. 이 정보는 CDM 제한된 그룹 [sn_cdm_restricted_groups] 테이블에서 가져옵니다. 모든 그룹이 배포 가능 항목에 액세스할 수 있는 경우 이 값은 null 입니다. 데이터 유형: 문자열 |
| secure_value | CDI 또는 변수의 보안 값입니다. 리프 노드와 배열 리터럴에 대해서만 반환됩니다. 이는 반환 결과와 value 동일하지만 암호화됩니다. 데이터 유형: 문자열 |
| 상태 | 배포 가능 노드의 상태 또는 실패한 요청의 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| system_folder | 연결된 폴더가 시스템 폴더인지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 숫자 |
| sys_id | 영향을 받는 배포 가능 항목의 Sys_id입니다. 데이터 유형: 문자열 |
| 유형 | sn_cdm_node_deployable와 같은 노드 유형입니다. 이 값을 사용하면 노드가 구성요소, 구성 데이터 항목(CDI) 또는 배포 가능 항목인지 확인할 수 있습니다. 이 값은 노드가 생성될 때 생성됩니다. 데이터 유형: 문자열 |
| 값 | CDI 또는 변수의 값입니다. 리프 노드와 배열 리터럴에 대해서만 반환됩니다. 이 정보가 암호화되면 반환 결과에 반환 secure_value 됩니다. 예를 들어 이 노드가 CDI 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 sys_id가 bf506e69537c3010a1d3ddeeff7b12c0인 변경 집합과 연결된 배포 가능 항목을 요청하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/bf506e69537c3010a1d3ddeeff7b12c0/impacted-deployables"\
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
다음은 이 엔드포인트에 대한 성공 응답과 오류 응답을 모두 보여줍니다.
// Successful response
{
"result": [
{
"sys_id": "833527a953924110da35ddeeff7b12c1",
"type": "sn_cdm_node_deployable",
"main_id": "150",
"main_id_encoded": "&M",
"node_path": "!&@!&D!&M",
"level": 2,
"status": "valid",
"node_classifier": "/application/deployables/env:Development",
"position": null,
"restricted_to": null,
"changeset_id": "cb3527a953924110da35ddeeff7b12c0",
"previous_version": "e8946f6953924110da35ddeeff7b1264",
"effective_from": "1647563806950",
"effective_to": null,
"name": "Development_1",
"description": "dev deployable decription",
"value": null,
"secure_value": null,
"system_folder": "0",
"linked_to": null,
"conflict": "0",
"conflict_type": null
},
{
"sys_id": "a245e7a953924110da35ddeeff7b1223",
"type": "sn_cdm_node_deployable",
"main_id": "153",
"main_id_encoded": "&P",
"node_path": "!&@!&D!&P",
"level": 2,
"status": "valid",
"node_classifier": "/application/deployables/env:Test",
"position": null,
"restricted_to": null,
"changeset_id": "ea45e7a953924110da35ddeeff7b1222",
"previous_version": "9505ef6953924110da35ddeeff7b121a",
"effective_from": "1647563821422",
"effective_to": null,
"name": "Test_1",
"description": "test deployable decription",
"value": null,
"secure_value": null,
"system_folder": "0",
"linked_to": null,
"conflict": "0",
"conflict_type": null
}
]
}
// Example of an error response
{
"error": {
"message": "Error: Unexpected error occurred in create request.Error:Application not found",
"detail": ""
},
"status": "failure"
}
CdmChangesetsApi - POST /sn_cdm/changesets/{changeset_id}/commit
지정된 변경 세트를 커밋합니다. 변경 세트는 커밋되면 연결된 인스턴스 내의 CDM 테이블에 유지됩니다.
시스템은 애플리케이션을 업데이트하여 변경 세트 내의 구성 데이터에 대한 변경 내용을 유지합니다. 변경 집합 상태가 커밋됨으로 변경됩니다. 그러면 시스템은 변경 세트의 영향을 받는 각 배포 가능 항목의 스냅샷을 생성합니다.
이 엔드포인트는 커밋 요청의 ID를 반환합니다. 이 ID를 사용하여 엔드포인트를 CdmChangesetsApi - GET /sn_cdm/changesets/commit-status/{commit_id} 호출하여 변경 집합 커밋의 현재 상태를 가져옵니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/{changeset_id}/commit
기본 URL: /api/sn_cdm/changesets/{changeset_id}/commit
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| changeset_id | 처리할 변경 세트 기록의 Sys_id입니다. CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| autoValidate (자동 확인) | 커밋 시 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그로, 이는 연결된 정책이 스냅샷에 대해 실행됨을 의미합니다. 유효한 값은 다음과 같습니다.
기본값: false |
| publishOption | 연결된 구성 스냅샷에 대한 게시 옵션입니다. 유효한 값은 다음과 같습니다.
주: 이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다. 스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: publish_none |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 오류: <오류 메시지> 전달한 매개 변수가 올바른지 확인합니다 changeset_id . 이 엔드포인트에 액세스하는 데 필요한 역할이 있는지 확인합니다. |
| 500 | 내부 서버 오류 오류: 잘못된 부울 값입니다. 매개 변수를 전달 autoValidate 한 경우 부울 값인지 확인합니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| commit_id | 커밋 요청의 Sys_id입니다. 엔드포인트를 CdmChangesetsApi - GET /sn_cdm/changesets/commit-status/{commit_id} 호출할 때 이 ID를 사용하여 커밋 요청의 상태를 확인합니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 커밋의 상태입니다. 오류가 발생한 경우에만 반환됩니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 이 엔드포인트를 호출하여 변경 집합 레코드를 커밋하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/29e24001533030104bacddeeff7b120c/commit?publishOption=publish_valid"\
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
다음은 성공적인 변경 집합 커밋 요청에 대한 응답을 보여 줍니다.
// Successful response
{
"result": {
"commit_id": "64b5f79f5379301096edddeeff7b12eb"
}
}
// Example of an error response
{
"error": {
"message": "Error: Unexpected error occurred in commit request.Error:Failed to insert request in queue",
"detail": ""
},
"status": "failure"
}
CdmChangesetsApi - POST /sn_cdm/changesets/create
지정된 CDM 애플리케이션 또는 공유 라이브러리에 대해 열린 상태인 새 변경 세트를 생성합니다.
이 엔드포인트에 액세스하려면 CDM 편집자 역할이 필요합니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/create/
기본 URL: /api/sn_cdm/changesets/create/
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| appName | 필수 이 변경 세트와 연결할 CDM 애플리케이션 또는 공유 라이브러리의 이름입니다. 활성 애플리케이션 또는 공유 라이브러리여야 합니다. 데이터 유형: 문자열 |
| 설명 | 변경 세트 설명입니다. 다른 사람이 변경 세트의 목적을 이해할 수 있는 항목을 입력합니다. 데이터 유형: 문자열 기본값: 없음 |
| returnFields | 응답의 일부로 반환할 CDM 변경 세트 [sn_cdm_changeset] 테이블의 쉼표로 구분된 필드 목록입니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 오류: <오류 메시지> 지정된 CDM 애플리케이션 또는 공유 라이브러리가 존재하고 활성 상태인지 확인합니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| auto_validate | 자동 유효성 검사가 수행되었는지 여부를 나타내는 플래그입니다. 가능한 값:
데이터 유형: 부울 |
| cdm_application | 변경 세트와 연결된 CDM 애플리케이션에 대한 상세 정보입니다. 데이터 유형: 객체 예: {"value": "<sysId>", "link": "http://localhost:8081/api/now/table/*'}" |
| cdm_application.링크 | 연결된 CDM 애플리케이션의 URL입니다. 데이터 유형: 문자열 |
| cdm_application.value | 연결된 CDM 애플리케이션의 Sys_id입니다. 데이터 유형: 문자열 |
| committed_at | 변경 세트가 연결된 리포지토리에 커밋된 날짜 및 시간입니다. 데이터 유형: 문자열 |
| committed_by | 변경 세트를 생성한 엔터티의 Sys_id입니다. 데이터 유형: 문자열 |
| 설명 | 엔드포인트가 호출될 때 전달된 변경 세트에 대한 설명입니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| last_conflict_detection_time | 상충 탐지가 마지막으로 실행된 시간입니다. 데이터 유형: 숫자 단위: 밀리초 |
| 번호 | 새 변경 세트의 고유 식별자입니다. 데이터 유형: 문자열 |
| publish_option | 연결된 구성된 스냅샷에 대한 게시 옵션입니다. 유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: publish_none |
| snapshot_description | 변경 세트와 연결된 스냅샷에 대한 설명입니다. 데이터 유형: 문자열 |
| 상태 | 변경 세트 생성의 상태입니다. 가능한 값:
데이터 유형: 문자열 |
| 상태 | 변경 세트 생성의 상태입니다. 오류가 발생한 경우에만 반환됩니다. 가능한 값: 실패 데이터 유형: 문자열 |
| sys_created_by | 변경 세트 기록을 생성한 엔터티의 Sys_id입니다. 데이터 유형: 문자열 |
| sys_id | 새 변경 세트의 Sys_id입니다. 데이터 유형: 문자열 |
| 직위 | 애플리케이션과 연결된 변경 세트의 제목입니다. 일반적으로 시스템에서 자동으로 생성됩니다. 데이터 유형: 문자열 |
cURL 요청
다음 예제에서는 App Service1 CDM 애플리케이션과 연결된 변경 집합을 만드는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/create?appName=App%20Service1&description=Sample%20Description \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
다음은 변경 세트를 성공적으로 만들기 위한 응답을 보여 줍니다.
// Example of a successful response
{
"result": {
"sys_id": "42748779c370301054c1582e1340ddcd",
"number": "Chset-8",
"title": "admin2021-06-18 10:06:46",
"description": null,
"committed_at": "",
"committed_by": null,
"sys_created_by": "admin",
"state": "open",
"publish_option": "publish_none",
"auto_validate": false,
"snapshot_name": null,
"snapshot_description": null,
"cdm_application": "App%20Service1"
}
}
// Example of an error response
{
"error": {
"message": "Error: Unexpected error occurred in create request.Error:Application not found",
"detail": ""
},
"status": "failure"
}
cURL 요청
다음 예제는 공유 라이브러리 "javalib"에 대한 변경 세트를 만드는 방법을 보여줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/create?sharedLibraryName=javalib&description=description of changeset" \
--request POST \
--header "Accept:application/json" \
--user 'username':'password'
응답:
CdmChangesetsApi - PUT /sn_cdm/changesets/commit
지정된 변경 세트를 업데이트하고 커밋합니다.
시스템은 애플리케이션을 업데이트하여 변경 세트 내의 구성 데이터에 대한 변경 내용을 유지합니다. 변경 집합 상태가 커밋됨으로 변경됩니다. 그러면 시스템은 변경 세트의 영향을 받는 각 배포 가능 항목의 스냅샷을 생성합니다.
이 엔드포인트는 커밋 요청의 ID를 반환합니다. 이 ID를 사용하여 엔드포인트를 CdmChangesetsApi - GET /sn_cdm/changesets/commit-status/{commit_id} 호출하여 변경 집합 커밋의 현재 상태를 가져옵니다.
URL 형식
버전이 지정된 URL: /api/sn_cdm/{api_version}/changesets/{changeset_id}/commit
기본 URL: /api/sn_cdm/changesets/{changeset_id}/commit
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| autoValidate (자동 확인) | 커밋 중에 생성된 스냅샷의 유효성이 확인되었는지 여부를 나타내는 플래그로, 이는 관련 정책이 스냅샷에 대해 실행됨을 의미합니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 기본값: false |
| changesetNumber | 필수 연결된 변경 세트의 고유 식별자(예: "Chset-10"). CDM 변경 세트 [sn_cdm_changeset] 테이블에 있습니다. 데이터 유형: 문자열 |
| publishOption | 연결된 구성된 스냅샷에 대한 게시 옵션입니다. 유효한 값은 다음과 같습니다.
스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하십시오. 데이터 유형: 문자열 기본값: publish_none |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 컨텐츠-형식 | 요청 본문의 데이터 형식입니다. application/json만 지원합니다. |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 400 | 잘못된 요청입니다. 오류: <오류 메시지> 전달한 매개 변수가 올바른지 확인합니다 changeset_id . 이 엔드포인트에 액세스하는 데 필요한 역할이 있는지 확인합니다. |
| 500 | 내부 서버 오류: 잘못된 부울 값입니다. 매개 변수를 전달 autoValidate 한 경우 부울 값인지 확인합니다. |
응답 본문 매개변수
| 이름 | 설명 |
|---|---|
| commit_id | 커밋 요청의 Sys_id입니다. 엔드포인트를 CdmChangesetsApi - GET /sn_cdm/changesets/commit-status/{commit_id} 호출할 때 이 ID를 사용하여 커밋 요청의 상태를 확인합니다. 데이터 유형: 문자열 |
| 오류 | 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다. 데이터 유형: 객체 |
| 오류.상세 정보 | 오류에 대한 추가 정보입니다. 데이터 유형: 문자열 |
| 오류.메시지 | 요청을 처리하는 동안 생성된 오류 메시지입니다. 데이터 유형: 문자열 |
| 상태 | 커밋의 상태입니다. 오류가 발생한 경우에만 반환됩니다. 가능한 값: 실패 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 이 끝점을 사용하여 변경 집합을 업데이트하는 방법을 보여 줍니다.
curl "http://instance.servicenow.com/api/sn_cdm/changesets/commit?changesetNumber=Chset-146" \
--request PUT \
--header "Accept:application/json" \
--user 'username':'password'
반환 결과:
{
"result": {
"commit_id": "cca8190f53141110a1d3ddeeff7b129e"
}
}