CdmApplicationsApi

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 138분
  • CdmApplicationsAPI는 구성 데이터를 작업 공간 UI에 있는 구성요소, 컬렉션, 배포 가능 항목 및 구성요소 변수 폴더에 uploadzoominsoftware.io/utah-devops/ 할 수 있는 엔드포인트를 DevOps 구성 제공합니다. 또한 배포 가능 구성 데이터를 파이프라인으로 DevOps 익스포트하고 공유 구성요소 및 공유 애플리케이션을 관리할 수 있는 엔드포인트도 있습니다.

    익스포트 및 업로드 엔드포인트는 비동기 큐 구현을 사용합니다. 이 유형의 구현에서는 먼저 원하는 익스포트 또는 업로드 요청 엔드포인트를 호출합니다. 이러한 엔드포인트는 요청을 큐에 추가하고 요청 식별자를 반환합니다. 그런 다음 이 요청 식별자를 사용하여 적절한 상태 엔드포인트(업로드용과 익스포트용으로 하나씩)를 호출하여 업로드/익스포트 상태를 가져옵니다. 익스포트 요청의 경우 익스포트가 완료되면 익스포트 컨텐츠를 요청할 수도 있습니다.

    이 API는 애플리케이션 기록의 단순 검색을 수행하는 엔드포인트를 제공하지 않습니다. 이러한 기록을 검색하려면 테이블 API를 사용하십시오.

    이 API에 액세스하려면 다음 역할 중 하나가 있어야 합니다.
    • 스크립팅된 REST CDM 뷰 ACL(sn_cdm.cdm.viewer)
    • 스크립팅된 REST CDM 편집기 ACL(sn_cdm.cdm_editor)

    또한 구성 데이터 관리 인스턴스에서 이 API를 사용할 수 있으려면 (CDM) 플러그인을 활성화해야 합니다.

    작업 공간 UI에 구성 데이터 관리DevOps 구성 대한 자세한 내용은 구성 데이터 업로드를 참조하세요.

    공유 구성요소 및 공유 라이브러리에 대한 자세한 내용은 애플리케이션 간 구성요소 공유 - 구성요소 라이브러리를 참조하십시오.

    CdmApplicationsApi - DELETE /sn_cdm/applications/deployables

    지정된 구성 데이터 관리(CDM) 배포 가능 항목을 삭제합니다.

    이 엔드포인트의 호출자에게 CDM 관리자 역할이 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables

    기본 URL: /api/sn_cdm/applications/deployables

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 1. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 2. 쿼리 매개변수
    이름 설명
    appName 필수 배포 가능 항목이 연결된 CDM 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 배포 가능 항목 [sn_cdm_deployable]

    이름 삭제할 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 배포 가능 항목 [sn_cdm_deployable]

    표 3. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 4. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 5. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 6. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    없음

    cURL 요청

    다음 코드 예제에서는 배포 가능 항목을 제거하는 방법을 보여 줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \ 
    --request DELETE \ 
    --header "Accept:application/json" \ 
    --user 'username':'password1' 

    배포 가능 항목을 성공적으로 삭제하면 HTTP 상태 코드 외에는 응답이 반환되지 않습니다.

    None - results defined by the HTTP status code

    CdmApplicationsApi - 삭제 /sn_cdm/applications/shared_components

    지정 구성 데이터 관리 된(CDM) 애플리케이션에서 공유 구성요소 사용 참조를 제거합니다.

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components

    기본 URL: /api/sn_cdm/applications/shared_components

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 7. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 8. 쿼리 매개변수
    이름 설명
    appName 필수 지정된 공유 구성요소 연결을 제거할 애플리케이션의 이름입니다. 지정된 애플리케이션의 유형 필드가 "shared_library"로 설정되어 있어야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    changesetNumber 필수
    연결된 변경 세트의 고유 식별자입니다(예: "Chset-10").

    데이터 유형: 문자열

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    sharedComponentName 필수 지정된 애플리케이션에서 제거할 공유 구성요소의 고유 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 공유 구성요소 [sn_cdm_shared_component]

    표 9. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 10. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 11. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 12. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    결과 비어 있습니다. HTTP 상태 코드는 호출 결과를 나타냅니다.
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제는 "App1" 애플리케이션에서 "paymentService-V1.1" 공유 구성 요소를 삭제하는 방법을 보여줍니다.

    curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?appName=App1&sharedComponentName=paymentService-V1.1&changesetNumber=Chset-25" \ 
    --request DELETE \ 
    --header "Accept:application/json" \ 
    --user 'username':'password' 

    응답:

    ""

    CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content

    지정된 구성 데이터 익스포트 요청과 연결된 컨텐츠를 반환합니다.

    엔드포인트에서 완전한 응답을 받은 후에만 이 엔드포인트를 호출합니다 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status . 익스포트가 완료되기 전에 이 엔드포인트를 호출하면 400 상태 오류가 반환됩니다.

    URL 형식

    버전 관리된 URL: /api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/content

    기본 URL: /api/sn_cdm/applications/deployables/exports/{export_id}/content

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 13. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    export_id 반환할 구성 데이터의 익스포트 요청에 대한 고유 식별자입니다. 이 값은 엔드포인트에서 반환됩니다 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports .
    표 14. 쿼리 매개변수
    이름 설명
    안 함
    표 15. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 16. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 17. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 18. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 익스포트 중에 발생한 오류에 대한 설명입니다.

    데이터 유형: 문자열

    export_id 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다.

    데이터 유형: 문자열

    exporter_result 지정된 구성 데이터 익스포트의 컨텐츠입니다.
    데이터 유형:
    • JSON 객체: 요청이 JSON 형식으로 데이터를 익스포트하는 경우.
    • 문자열: 요청이 다른 형식으로 데이터를 익스포트하는 경우
    request_id 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다.

    데이터 유형: 문자열

    상태 지정된 익스포트의 현재 상태입니다.
    가능한 값:
    • 완료됨
    • 오류
    • in_progress
    • 신규
    • 준비

    데이터 유형: 문자열

    테이블: CDM 요청 큐 [sn_cdm_request_queue] 테이블의 상태 열입니다.

    cURL 요청

    다음 예제에서는 ID가 3ab14a7d53b1301096edddeeff7b12f인 익스포트 요청의 구성 데이터를 요청합니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/content" \ 
    --request GET \ 
    --header "Accept:application/json" \
    --user 'username':'password' 

    다음은 가능한 반환 결과를 보여줍니다.

    // Successful completion of the export request
    { 
      "result": { 
        "export_id": "3ab14a7d53b1301096edddeeff7b12f" 
        "exporter_result": "DEP1.COMP.cdi_1=cdi-1-value" 
      } 
    }
    
    // Response when an incorrect export_id is passed. Note: Status code is 200.
    { 
      "result": { 
        "request_id": "3ab14a7d53b1301096edddeeff7b12e", 
        "state": "error", 
        "errors": "Invalid requestId '3ab14a7d53b1301096edddeeff7b12fe'", 
        "export_id": "3ab14a7d53b1301096edddeeff7b12e" 
      } 
    }

    CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status

    지정된 구성 데이터 익스포트 요청의 현재 상태를 반환합니다.

    엔드포인트를 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports 사용하여 익스포트 요청을 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables/exports/{export_id}/status

    기본 URL: /api/sn_cdm/applications/deployables/exports/{export_id}/status

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 19. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    export_id 상태가 반환될 익스포트 요청의 Sys_id입니다. 이 값은 엔드포인트에서 반환됩니다 CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports .
    표 20. 쿼리 매개변수
    이름 설명
    안 함
    표 21. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 22. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 23. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 24. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 익스포트 중에 발생한 오류에 대한 설명입니다.

    데이터 유형: 문자열

    export_id 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다.

    데이터 유형: 문자열

    exporter_result 관련 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    exporter_result.errors 익스포트 중에 발생한 오류에 대한 설명입니다.

    데이터 유형: 배열

    exporter_result.execution_id 익스포터 실행 기록의 고유 식별자입니다.

    데이터 유형: 문자열

    테이블: CDM 익스포터 실행 [sn_cdm_exporter_execution]

    exporter_result.state 지정된 익스포트의 현재 상태입니다.
    가능한 값:
    • 완료
    • 오류
    • in_progress
    • 신규

    데이터 유형: 문자열

    테이블: CDM 익스포터 실행 [sn_cdm_exporter_execution]

    request_id 익스포트 요청 ID입니다. 엔드포인트에 전달된 것과 동일합니다.

    데이터 유형: 문자열

    상태 지정된 익스포트의 현재 상태입니다.
    가능한 값:
    • 완료됨
    • 오류
    • in_progress
    • 신규
    • 준비

    데이터 유형: 문자열

    테이블: CDM 요청 큐 [sn_cdm_request_queue] 테이블의 상태 열입니다.

    cURL 요청

    다음 예제에서는 ID가 3ab14a7d53b1301096edddeeff7b12f인 익스포트 상태를 요청합니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports/3ab14a7d53b1301096edddeeff7b12f/status" \ 
    --request GET \ 
    --header "Accept:application/json" \
    --user 'username':'password' 

    다음은 가능한 반환 결과입니다.

    // Successful completion of the export request
    { 
      "result": { 
        "state": "completed", 
        "export_id": "3ab14a7d53b1301096edddeeff7b12f0" 
      } 
    }
    
    // Response when an incorrect export_id is passed. Note: Status code is 200.
    { 
      "result": { 
        "request_id": "3ac8e1b05311301096edddeeff7b123c", 
        "state": "error", 
        "errors": "Invalid requestId '3ac8e1b05311301096edddeeff7b123c'", 
        "export_id": "3ac8e1b05311301096edddeeff7b123c" 
      } 
    } 
    
    // Response when the export encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
    { 
      "result": { 
        "state": "completed", 
        "export_id": "24536c3353f9301096edddeeff7b12b1", 
        "exporter_result": { 
          "execution_id": "81536c3353f9301096edddeeff7b129e", 
          "state": "failure", 
          "errors": [ 
            "Snapshot 'SNA-001-published-non_compliant' has not passed validation. All snapshots of deployable '/ApplicationA/deployables/DEP3' are required to pass validation" 
          ] 
        } 
      } 
    }

    CdmApplicationsApi - GET /sn_cdm/applications/shared_components

    지정된 애플리케이션에서 사용하는 공유 구성요소 목록을 반환합니다. 새 버전을 사용할 수 있는 공유 구성요소만 반환하도록 지정할 수도 있습니다.

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components

    기본 URL: /api/sn_cdm/applications/shared_components

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 25. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 26. 쿼리 매개변수
    이름 설명
    appName 필수 반환하려는 공유 구성요소 목록이 있는 애플리케이션의 이름입니다. 애플리케이션의 유형 필드를 shared_library로 설정해야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    withUpdatesOnly 사용 가능한 새 업데이트된 버전이 있는 공유 구성요소만 반환할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 사용 가능한 새 업데이트된 버전이 있는 공유 구성요소만 반환합니다.
    • 아니오: 지정된 애플리케이션에서 사용하는 모든 공유 구성요소를 반환합니다.

    기본값: false

    표 27. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 28. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 29. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 30. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    currentVersion CDM 애플리케이션의 현재 버전입니다.

    데이터 유형: 숫자(정수)

    currentVersionName 현재 사용 중인 공유 구성요소 버전의 이름입니다.

    데이터 유형: 문자열

    설명 공유 구성요소에 대한 설명입니다.

    데이터 유형: 문자열

    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    이름 공유 구성요소의 고유 이름입니다.

    데이터 유형: 문자열

    sharedLibraryName 공유 구성요소가 속한 공유 라이브러리의 이름입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    updateVersionName 업데이트에 사용할 수 있는 공유 구성요소 버전의 이름입니다.

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제에서는 이 엔드포인트를 호출하여 "App1"에서 사용하는 새 버전이 있는 공유 구성 요소를 검색하는 방법을 보여 줍니다.

    curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?updatesOnly=true&appName=App1" \ 
    --request GET \ 
    --header "Accept:application/json" \ 
    --user 'username':'password' 

    응답:

    { 
      "result": [
        {
          "name": "Component_Name",
          "description": "”,
          "sharedLibraryName": "Shared Library",
          "currentVersion": "2",
          "currentVersionName": "Component_A-v2.shc",
          "updateVersionName": "Component_A-v3.shc"
        } 
      ]
    }

    CdmApplicationsApi - GET /sn_cdm/applications/shared_libraries/components/applications

    지정된 라이브러리 내에 있는 공유 구성요소와 이를 사용하는 애플리케이션의 맵을 반환합니다.

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_libraries/components/applications

    기본 URL: /api/sn_cdm/applications/shared_libraries/components/applications

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 31. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 32. 쿼리 매개변수
    이름 설명
    sharedComponentName 필수 맵에 포함할 공유 구성요소의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 공유 구성요소 [sn_cdm_shared_component]

    sharedLibraryName 필수 맵에 포함할 공유 라이브러리의 이름입니다. 지정된 애플리케이션의 유형 필드가 "shared_library"로 설정되어 있어야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    표 33. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 34. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 35. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 36. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    설명 공유 구성요소를 사용한 애플리케이션에 대한 설명

    데이터 유형: 문자열

    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    managed_by_group 애플리케이션을 관리할 수 있는 그룹 sys_ids의 쉼표로 구분된 목록입니다.

    데이터 유형: 문자열

    이름 구성요소를 사용하는 애플리케이션의 고유한 이름입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    sys_id 공유 구성요소를 활용하는 애플리케이션의 Sys_id입니다.

    데이터 유형: 문자열

    cURL 요청

    다음 코드 예제에서는 이 엔드포인트를 호출하여 "paymentService-V1.1" 공유 구성 요소를 사용하는 "OracleG-Library-10" 공유 라이브러리의 애플리케이션을 보여주는 맵을 검색하는 방법을 보여 줍니다.

    curl "https://instance-name.service-now.com/api/sn_cdm/applications/shared_libraries/components/applications?sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \ 
    --request GET \ 
    --header "Accept:application/json" \ 
    --user 'username':'password'

    응답:

    {
      "result": {
        "component_name": [
          { 
            "name": "App Name",
            "description": "desc",
            "managed_by_group": null,
            "sys_id": "4e7808bb1b371110636e0fe0604bcb08"
          }, 
          {
            "name": "Config App",
            "description": "desc",
            "managed_by_group": null,
            "sys_id": "55a75cfb1b771110636e0fe0604bcb5c"
          },
          {
            "name": "Database App",
            "description": "desc",
            "managed_by_group": null,
            "sys_id": "2eb7503f1b771110636e0fe0604bcb06"
          }
        ]
      } 
    }

    CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    지정된 구성 데이터 업로드 요청의 현재 상태를 반환합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/upload-status/{upload_id}

    기본 URL: /api/sn_cdm/applications/upload-status/{upload_id}

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 37. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    upload_id 상태가 반환될 업로드 요청의 Sys_id입니다. 이 값은 다양한 CdmApplications 업로드 요청 엔드포인트에서 반환됩니다.
    표 38. 쿼리 매개변수
    이름 설명
    안 함
    표 39. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 40. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 41. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 42. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 업로드 중 발생한 오류에 대한 설명입니다.

    데이터 유형: 문자열

    출력 업로드된 데이터에 대한 설명 또는 업로드 중에 오류가 발생한 경우 발생한 오류를 설명하는 오류 메시지입니다.

    데이터 유형: 문자열 배열

    "output": {
      "auto_validate": "String",
      "cdm_application": "String",
      "committed_at": "String",
      "committed_by": "String",
      "description": "String",
      "last_conflict_detection_time": "String",
      "number": "String",
      "publish_option": "String",
      "snapshot_description": "String",
      "snapshot_name": "String",
      "state": "String",
      "sys_created_by": "String",
      "sys_id": "String",
      "title": "String"
    }
    output.auto_validate 커밋 후 확인을 호출할지 여부를 나타냅니다.

    데이터 유형: 문자열

    output.cdm_application 업로드가 수행된 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    output.committed_at 업로드된 콘텐츠가 커밋된 날짜 및 시간입니다.

    데이터 유형: 문자열

    output.committed_by 커밋을 수행한 엔터티의 레코드 Sys_id입니다.

    데이터 유형: 문자열

    출력.설명 현재 사용되지 않습니다.

    데이터 유형: 문자열

    output.last_conflict_detection_time 날짜 및 시간 상충 탐지 발동입니다.

    데이터 유형: 문자열

    출력.번호 변경 세트의 고유 번호입니다.

    데이터 유형: 문자열

    output.publish_option
    연결된 구성된 스냅샷에 대한 게시 옵션입니다.
    유효한 값은 다음과 같습니다.
    • publish_none: 스냅샷을 게시하지 않습니다.
    • publish_valid: 커밋 후 확인을 통과한 스냅샷만 게시합니다.

    스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요.

    데이터 유형: 문자열

    기본값: publish_none

    주:
    이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다.
    output.snapshot_description 연결된 스냅샷에 대한 설명입니다.

    데이터 유형: 문자열

    output.snapshot_name 연결된 스냅샷의 이름입니다.

    데이터 유형: 문자열

    출력.상태 업로드 콘텐츠의 상태입니다.
    가능한 값:
    • 차단됨
    • checking_for_conflict
    • commit_failed
    • commit_in_progress
    • 커밋됨
    • 오픈

    데이터 유형: 문자열

    output.sys_created_by 기록을 생성한 엔터티의 Sys_id입니다.

    데이터 유형: 문자열

    output.sys_id 변경 세트를 포함하는 기록의 Sys_id입니다.

    데이터 유형: 문자열

    출력.제목 업로드의 일부로 생성된 변경 세트의 제목입니다.

    데이터 유형: 문자열

    processing_state 업로드 요청의 현재 처리 상태입니다.
    가능한 값:
    • NOT_PROCESSED
    • 처리됨

    데이터 유형: 문자열

    상태 업로드 요청의 현재 상태입니다.
    가능한 값:
    • 완료됨
    • 오류
    • in_progress
    • 신규
    • 준비
    유형 업로드 요청의 유형입니다.
    가능한 값:
    • 커밋
    • upload_and_commit

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예제에서는 ID가 5560a6895326301096edddeeff7b1230인 업로드 상태 요청을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/upload-status/5560a6895326301096edddeeff7b1230" \ 
    --request GET \ 
    --header "Accept:application/json" \
    --user 'username':'password' 

    다음은 가능한 반환 결과입니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "type": "upload_and_commit", 
        "state": "completed", 
        "output": { 
          "sys_id": "be681dc95362301096edddeeff7b12ba", 
          "number": "Chset-102", 
          "title": "admin2021-09-10 08:09:07", 
          "description": null, 
          "committed_at": "2021-09-10 20:23:37", 
          "committed_by": "6816f79cc0a8016401c5a33be04be441", 
          "sys_created_by": "admin", 
          "state": "committed", 
          "publish_option": "publish_none", 
          "auto_validate": false, 
          "snapshot_name": null, 
          "snapshot_description": null, 
          "cdm_application": "Demo_App1631126164773", 
          "last_conflict_detection_time": "1631305417894" 
        }, 
        "processing_state": "PROCESSED", 
        "upload_id": "5560a6895326301096edddeeff7b1230"
      } 
    }
    
    // Response when an incorrect upload_id is passed. Note: Status code is 200.
    { 
      "result": { 
        "state": "error", 
        "errors": "Invalid requestId '5560a6895326301096edddeeff7b1240'", 
        "upload_id": "5560a6895326301096edddeeff7b1240" 
      } 
    } 
    
    // Response when the upload encounters an error. The exporter_result array contains the error information. Note: Status code is 200.
    { 
      "result": { 
        "type": "upload_and_commit", 
        "state": "error", 
        "output": "Error encountered during execution of request.\nError: Node 'dbSettings' of type 'sg_cdm_node_component' cannot create child 'dbSettings' of type 'sg_cdm_node_folder'", 
        "processing_state": "PROCESSED", 
        "upload_id": "272f8a415326301096edddeeff7b1232" 
      } 
    }

    CdmApplicationsApi - POST /sn_cdm/applications/deployables

    새 배포 가능 항목을 생성하고 지정된 구성 데이터 관리 (CDM) 애플리케이션에 자동으로 연결합니다.

    개발, 테스트 또는 프로덕션의 세 가지 환경 유형 중 하나에 대해 배포 가능 항목을 생성할 수 있습니다.

    이 엔드포인트에 액세스하려면 호출자에게 CDM 관리자 역할이 있어야 합니다.

    여러 배포 가능 항목을 생성해야 하는 경우 엔드포인트를 CdmApplicationsApi - POST /sn_cdm/applications/deployables/create 사용합니다.

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables

    기본 URL: /api/sn_cdm/applications/deployables

    지원되는 요청 매개변수

    표 43. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 44. 쿼리 매개변수
    이름 설명
    appName 필수 배포 가능 항목과 연결할 기존 활성 CDM 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    환경 유형 필수
    배포 가능 항목의 환경 유형입니다.
    유효한 값(대/소문자 구분):
    • 개발
    • 프로덕션
    • 테스트
    주:
    배포 가능 환경 유형은 생성 후 변경할 수 없습니다.

    데이터 유형: 문자열

    이름 필수 CDM 배포 가능 항목의 이름입니다.

    255자를 초과하면 안 됩니다. 허용되는 기본 문자는 0-9, A-Z, a-z, _,-,.,%, $, 공백, :, #입니다.

    데이터 유형: 문자열

    최대 길이: 255자

    허용 가능한 문자: 0-9, A-Z, a-z, _, -, ., %, $, 공백, :, #

    returnFields 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다.

    데이터 유형: 배열

    기본값: 엔드포인트에서 결정한 모든 필드

    표 45. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 46. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 47. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 48. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    cdi_count 연결된 CDM 애플리케이션에 포함된 구성 데이터 항목(CDI) 수입니다.

    데이터 유형: 숫자(정수)

    cdi_usage 배포 가능 항목에서 사용하는 CDI의 백분율입니다.

    데이터 유형: 숫자(정수)

    cdm_app 배포 가능 항목과 연결된 CDM 애플리케이션 객체입니다.

    데이터 유형: 객체

    "cdm_app": {
      "link": "String",
      "value": "String"
    }
    cdm_app.link REST 테이블 API를 사용하여 CDM 애플리케이션 기록에 액세스하는 데 사용할 호출입니다.

    데이터 유형: 문자열

    cdm_app.value 연결된 CDM 애플리케이션 기록의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    cdm_ci 배포 가능 항목과 연결된 애플리케이션 서비스 객체입니다.

    데이터 유형: 객체

    "cdm_ci": {
      "link": "String",
      "value": "String"
    }
    cdm_ci.link REST 테이블 API를 사용하여 애플리케이션 서비스 기록에 액세스하는 데 사용할 호출입니다.

    데이터 유형: 문자열

    cdm_ci.value 연결된 애플리케이션 서비스 기록의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: 구성 항목 [cmdb_ci]

    설명 생성된 CDM 배포 가능 항목에 대한 설명입니다.

    데이터 유형: 문자열

    environment_type 배포 가능 항목의 환경 유형입니다.
    가능한 값:
    • 개발
    • 프로덕션
    • 테스트

    데이터 유형: 문자열

    오류 처리 중 오류가 발생한 경우에만 반환됩니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    이름 CDM 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    노드 배포 가능 노드에 대한 상세 정보입니다.

    데이터 유형: 객체

    "node": {
      "link": "String",
      "value": "String"
    }
    node.link REST 테이블 API를 사용하여 배포 가능 노드 기록에 액세스하는 데 사용할 호출입니다.

    데이터 유형: 문자열

    노드.값 배포 가능 노드 기록의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: CDM 배포 가능 항목 [sn_cdm_deployable]

    snapshot_version_counter 배포 가능 항목에 대해 생성된 스냅샷 수입니다.

    데이터 유형: 숫자(정수)

    상태 배포 가능 항목의 현재 상태입니다.
    가능한 값:
    • 활성
    • 삭제됨

    데이터 유형: 문자열

    sys_created_by CDM 배포 가능 항목을 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_created_on CDM 배포 가능 항목이 생성된 날짜 및 시간입니다.

    데이터 유형: 문자열

    형식: YYYY-mm-DD hh:mm:ss

    sys_id 생성된 배포 가능 항목의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: CDM 배포 가능 항목 [sn_cdm_deployable]

    sys_updated_by CDM 배포 가능 항목을 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_updated_on CDM 배포 가능 항목이 마지막으로 업데이트된 날짜 및 시간입니다.

    데이터 유형: 문자열

    형식: YYYY-mm-DD hh:mm:ss

    cURL 요청

    다음 코드 예제에서는 배포 가능 항목을 생성하고 CDM 애플리케이션에 연결하는 방법을 보여 줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables?name=Dep-1&returnFields=name%2Csys_id%2Cstate&appName=testApp&envType=Test" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --user 'username':'password1' 

    반환 결과:

    { 
      "result": [ 
        { 
          "cmdb_ci": { 
            "value": "f5b9e00b53901110a1d3ddeeff7b12b8", 
            "link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8" 
          }, 
          "cdi_count": "0", 
          "snapshot_version_counter": "0", 
          "description": null, 
          "sys_updated_on": "2022-06-29 12:53:57", 
          "environment_type": "Test", 
          "node": { 
            "value": "7db9e00b53901110a1d3ddeeff7b12b6", 
            "link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/7db9e00b53901110a1d3ddeeff7b12b6" 
          }, 
          "sys_id": "39b9e00b53901110a1d3ddeeff7b12b7", 
          "sys_updated_by": "admin", 
          "cdm_app": { 
            "value": "62b517a953b70110a1d3ddeeff7b128c", 
            "link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c" 
          }, 
          "sys_created_on": "2022-06-29 12:53:57", 
          "cdi_usage": "0", 
          "name": "Dep-2", 
          "state": "active", 
          "sys_created_by": "admin" 
        } 
      ] 
    }

    CdmApplicationsApi - POST /sn_cdm/applications/deployables/create

    하나 이상의 새 배포 가능 항목을 생성합니다.

    다음 두 가지 유형의 배포 가능 항목 중 하나를 생성할 수 있습니다.
    • 애플리케이션 모델(CI 서비스)에 수동으로 연결해야 하는 배포 가능 항목입니다.
    • 동적으로 생성된 새 CI 서비스(애플리케이션 모델)에 자동으로 연결되는 배포 가능 항목입니다.

    개발, 테스트 또는 프로덕션의 세 가지 환경 유형 중 하나에 대해 배포 가능 항목을 생성할 수 있습니다. 여러 배포 가능 항목을 만들 때 자동 생성된 배포 가능 항목 이름은 DeployableType_Number 패턴을 따르며, 여기서 번호 는 새 배포 가능 항목 생성을 기준으로 실행 중인 시퀀스 번호입니다. 예를 들어 엔드포인트 호출에서 테스트 유형의 배포 가능 항목을 세 개 만들면 이름이 Test_1, Test_2 및 Test_3으로 지정됩니다. 그런 다음 엔드포인트를 다시 호출하고 다른 테스트 배포 가능 항목을 만들면 자동 생성 이름이 Test_4됩니다. 이 번호는 배포 가능 항목이 삭제되더라도 다시 사용되지 않습니다.

    URL 형식

    버전 관리된 URL: /api/sn_cdm/{api_version}/applications/deployables/create

    기본 URL: /api/sn_cdm/applications/deployables/create

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 49. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 50. 쿼리 매개변수
    이름 설명
    appSysId 필수 배포 가능 항목과 연결할 활성 CDM 애플리케이션의 Sys_id입니다.

    데이터 유형: 문자열

    자동 커넥트 필수 새로 생성된 배포 가능 항목을 동적으로 생성된 애플리케이션 모델에 자동으로 연결할지 여부를 결정하는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 새로 생성된 배포 가능 항목을 동적으로 생성된 애플리케이션 모델에 연결합니다.
    • false: 배포 가능 항목만 생성합니다. 이러한 배포 가능 항목은 UI를 사용하여 애플리케이션 모델에 수동으로 매핑해야 합니다.

    데이터 유형: 부울

    환경 유형 필수
    배포 가능 항목의 환경 유형입니다.
    유효한 값(대/소문자 구분):
    • 개발
    • 프로덕션
    • 테스트
    주:
    배포 가능 환경 유형은 생성 후 변경할 수 없습니다.

    데이터 유형: 문자열

    수량 필수 생성할 배포 가능 항목 수입니다.

    데이터 유형: 숫자

    표 51. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 52. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 53. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 54. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    결과 생성된 배포 가능 항목의 Sys_ids입니다.

    데이터 유형: 배열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    cURL 요청

    다음 예는 단일 배포 가능 항목을 생성하고 이를 기존 CDM 애플리케이션과 연결하는 방법을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/create?envType=Production&appSysId=5e118055b712011054c1e5a6ce11a9d4&quantity=5&autoConnect=true" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \
    --user 'username':'password' 

    다음은 이 호출에 대한 가능한 성공 및 오류로서의 응답을 보여줍니다.

    // Successful completion of the upload request
    {
      "result": [
        "8ba43a3db7d6011054c1e5a6ce11a9a4",
        "93a47a3db7d6011054c1e5a6ce11a90d",
        "dba47a3db7d6011054c1e5a6ce11a91d",
        "6fa47a3db7d6011054c1e5a6ce11a921",
        "efa47a3db7d6011054c1e5a6ce11a925"
      ]
    } 
    
    // Error response
    {
      "error": {
        "message": "Error: CDM Application with SysID 5e118055b712011054c1e5a6ce11a9d1 was not found. (sys_script_include.8cf0fbf453626010a1d3ddeeff7b12fe.script; line 211)",
        "detail": ""
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST /sn_cdm/applications/deployables/exports

    지정된 애플리케이션과 하나 이상의 배포 가능 항목에 대한 현재 스냅샷을 CDM 익스포터 캐시[sn_cdm_exporter_cache] 테이블로 익스포트하는 요청을 제출합니다.

    이 엔드포인트는 요청에 대한 고유 식별자를 반환하며, 이 식별자를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status 호출하여 익스포트 상태를 검색할 수 있습니다. 익스포트가 완료되면 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/content 사용하여 연결된 애플리케이션의 구성 데이터를 검색할 수 있습니다.

    스냅샷은 구성 변경이 커밋된 시점의 배포 가능 항목에 대한 전체 데이터 모델입니다. 여기에는 포함된 모든 구성요소, 컬렉션 및 변수뿐만 아니라 배포 가능 항목별 vars 및 재정의가 포함됩니다. 배포 가능 항목에 대한 자세한 내용은 배포 가능 항목 생성 및 업데이트를 참조하세요.

    주:
    스냅샷은 배포 가능 항목당 10,000개의 CDI(구성 데이터 항목) 또는 애플리케이션당 100,000개의 CDI를 초과할 수 없습니다.

    URL 형식

    버전 관리 URL: /api/sn_cdm/{api_version}/applications/deployables/exports

    기본 URL: /api/sn_cdm/applications/deployables/exports

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 55. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 56. 쿼리 매개변수
    이름 설명
    additionalDeployables 익스포트할 기본이 아닌 배포 가능 항목입니다.

    데이터 유형: 객체 배열

    "additionalDeployables": [
      {
        "app_name": "String",
        "deployable_name": "String"
      }
    ]

    예: [{'app_name':'TestApp', "deployable_name:'DEP-1'}]

    기본값: 빈 배열 - []

    additionalDeployables.app_이름 배열이 지정된 경우 additionalDeployables 필요합니다. 구성 데이터를 익스포트하려는 배포 가능 항목과 연결된 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    additionalDeployables.deployable_name 배열이 지정된 경우 additionalDeployables 필요합니다. 구성 데이터를 익스포트하려는 기본이 아닌 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    appName 필수 구성 데이터를 익스포트할 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    args 사용자 지정 인수에 대한 키-값 쌍을 포함하는 JSON 객체입니다.

    데이터 유형: 객체

    데이터 형식 익스포트한 데이터의 출력 형식입니다.
    유효한 값(대/소문자 구분):
    • INI
    • JSON
    • 속성
    • raw(데이터가 문자열 형식으로 반환됨)
    • XML
    • YAML

    데이터 유형: 문자열

    기본값: json

    deployableName 필수 구성 데이터를 익스포트하려는 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    exporterName 필수 스냅샷 데이터를 익스포트하는 데 사용할 익스포터의 이름입니다. 익스포터는 구현자에 대한 사용자 지정입니다. 사용자 지정 익스포터 만들기에 대한 자세한 내용은 사용자 지정 익스포터 만들기를 참조하세요.

    데이터 유형: 문자열

    restrictExport 엔드포인트가 데이터를 익스포트할 때 스냅샷의 유효성을 검사하는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.

    데이터 유형: 부울

    기본값: false

    snapshotName 익스포트할 스냅샷의 이름입니다. OR additionalDeployables.deployable_name 매개변수에 지정된 대로 배포 가능 항목과 연결된 스냅샷 이름 중 하나만 사용할 수 있습니다.deployableName

    기본적으로 엔드포인트는 최근에 게시된 스냅샷을 익스포트합니다. 게시된 스냅샷이 없는 경우 시스템에서 "배포 가능 항목 "{0}"에 대해 최근 게시된 스냅샷을 찾지 못했습니다" 오류가 발생합니다.

    표 57. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 58. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. application/json만 지원합니다.
    표 59. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 60. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    가능한 오류 메시지:
    • 오류: 필수 매개변수 "appName" 누락
    • 오류: 사용자에게 익스포트 요청을 생성하는 데 필요한 권한이 없습니다.
    • 오류: 잘못된 부울 값(<xyz>).
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    이름 설명
    오류 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 배열

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    export_id 익스포트 요청의 고유 식별자입니다. 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/deployables/exports/{export_id}/status 호출할 때 이 ID를 사용하여 익스포트 요청의 현재 상태를 확인합니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    cURL 요청

    다음 예시에서는 다음에 대한 구성 데이터의 익스포트를 요청합니다. 애플리케이션 이름 = TestAppA, 배포 가능 항목 이름 = DEP, exporter = exporter-1-primary_deployable 사용.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/deployables/exports?appName=TestAppA&args=%7B%22arg_A_required%22%20%3A%20%22value%20A%22%7D&exporterName=exporter-1-primary_deployable&deployableName=DEP1" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:application/json" \
    --user 'username':'password' 

    익스포트 요청의 고유 식별자를 반환합니다.

    { 
      "result": {
        "export_id": "64b5f79f5379301096edddeeff7b12eb" 
      } 
    }

    CdmApplicationsApi - POST /sn_cdm/applications/shared_components

    지정된 공유 구성요소를 지정된 변경 세트 내의 애플리케이션에 연결합니다.

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    주:
    지정된 공유 구성요소에는 게시된 버전(스냅샷)이 연결되어 있어야 합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components

    기본 URL: /api/sn_cdm/applications/shared_components

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 61. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 62. 쿼리 매개변수
    이름 설명
    appName 필수 공유 구성요소와 연결할 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    changesetNumber 필수 구성요소와 연결된 변경 세트의 고유 식별자입니다.

    데이터 유형: 문자열

    returnFields 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다.

    데이터 유형: 배열

    기본값: 엔드포인트에서 결정한 모든 필드

    sharedComponentName 필수 지정된 애플리케이션과 연결할 공유 구성요소의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 공유 구성요소 [sn_cdm_shared_component]

    sharedLibraryName 필수 구성요소를 작성할 공유 라이브러리의 이름입니다. 공유 라이브러리에는 다음과 같이 정의된 다음 필드가 있어야 합니다.
    • 상태 = 활성
    • 사용 가능 = true
    • 유형 = shared_library

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    표 63. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 64. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 65. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 66. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 전달된 변경 세트가 존재하지 않습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    응답 필드는 요청의 매개변수에 returnFields 지정된 필드에 따라 달라집니다. 다음은 보다 중요한 몇 가지 필드에 대해 설명합니다.

    이름 설명
    changeset_id 노드와 연결된 변경 세트 기록의 상세 정보입니다.

    데이터 유형: 객체

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.link 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다.

    데이터 유형: 문자열

    changeset_id.value 변경 세트 기록의 고유 식별자입니다.

    데이터 유형: 문자열

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    설명 CDM 노드에 대한 설명입니다.

    데이터 유형: 문자열

    오류 처리 중 오류가 발생한 경우에만 반환됩니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    오류.메시지 오류에 대한 개요를 제공하는 메시지입니다.

    데이터 유형: 문자열

    linked_to 공유 구성요소와 연결된 메인 노드의 ID입니다.

    데이터 유형: 문자열

    linked_to_version 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다.

    데이터 유형: 객체

    "linked_to_version": {
      "link": "String",
      "value": "String"
    }
    linked_to_version.link 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다.

    데이터 유형: 문자열

    linked_to_version.value 버전 기록의 Sys_id입니다.

    데이터 유형: 문자열

    메인

    연결된 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 스냅샷이 게시되었습니다.
    • false: 스냅샷이 게시되지 않았습니다.
    main_id 새로 작성된 메인 노드의 고유 ID입니다.

    데이터 유형: 문자열

    main_id_encoded 새로 생성된 메인 노드의 인코딩된 ID입니다.

    데이터 유형: 문자열

    이름 CDM 노드의 이름입니다.

    데이터 유형: 문자열

    노드 공유 구성요소 노드의 Sys_id입니다.

    데이터 유형: 문자열

    node_path 공유 구성요소를 추가할 때 생성되는 새 연결된 노드의 경로입니다.

    데이터 유형: 문자열

    상태 노드의 상태입니다.

    가능한 값: 신규

    데이터 유형: 문자열

    sys_created_by CDM 노드를 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_created_on CDM 노드가 생성된 날짜 및 시간입니다.

    형식: YYYY-mm-DD hh:mm:ss

    데이터 유형: 문자열

    sys_id 노드의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: CDM 노드 [sn_cdm_node]

    sys_updated_by CDM 노드를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_updated_on CDM 노드가 마지막으로 업데이트된 날짜 및 시간입니다.

    형식: YYYY-mm-DD hh:mm:ss

    데이터 유형: 문자열

    유형 노드 유형입니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예제에서는 이 엔드포인트를 호출하여 애플리케이션 "App1"을 "Chset-20" 변경 세트 내의 공유 라이브러리 "OracleG-Library-10" 아래의 공유 구성요소 "paymentService-V1.1"과 연결하는 방법을 보여줍니다.

    curl "https://instance.servicenow.com/api/sn_cdm/applications/shared_components?appName=App1&changesetNumber=Chset-20&sharedLibraryName=OracleG-Library-10&sharedComponentName=paymentService-V1.1" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --user 'username':'password'

    응답:

    { 
      "result": { 
        "changeset_id": { 
          "value": "74b7ff6fc33711100c257e2cc840dd6b", 
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_changeset/74b7ff6fc33711100c257e2cc840dd6b" 
        }, 
        "node_path": "!,0!,1!/D", 
        "description": null, 
        "sys_updated_on": "2022-12-22 17:07:29", 
        "type": "sn_cdm_node_linked_shared_component", 
        "sys_class_name": "sn_cdm_node", 
        "sys_id": "ff8b37ebc3b711100c257e2cc840ddba", 
        "sys_updated_by": "admin", 
        "previous_version": null, 
        "sys_created_on": "2022-12-22 17:07:29", 
        "value": null, 
        "effective_from": null, 
        "linked_to": "210", 
        "sys_created_by": "admin", 
        "restricted_to": null, 
        "linked_to_version": { 
          "value": "581fc3e9c3b311100c257e2cc840dd17", 
          "link": "http://instance.servicenow.com/api/now/table/sn_cdm_snapshot/581fc3e9c3b311100c257e2cc840dd17" 
        }, 
        "level": "2", 
        "conflict_type": null, 
        "main_id": "483",
        "effective_to": null,
        "secure_value": null, 
        "node_classifier": "/application/components", 
        "main_id_encoded": "/D",
        "name": "LIB2_C",
        "position": null,
        "reason_for_conflict": null,
        "system_folder": false,
        "status": "new",
        "conflict": false
      } 
    }

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/components

    지정된 애플리케이션의 시스템 구성요소 폴더 내의 특정 구성요소에 대해 전달된 구성 데이터를 업로드하는 요청을 제출합니다.

    이 엔드포인트는 업로드 요청의 ID를 반환합니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.
    주:
    최대 기본 업로드 컨텐츠 크기는 2MB입니다. 속성 sn_cdm.max_allowed_upload_file_size를 업데이트하여 이 기본값을 수정할 수 있습니다.

    다음 이미지는 UI를 참조 ServiceNow DevOps 구성 하여 구성요소 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 구성요소가 dbComponent이고 애플리케이션이 paymentSvc라고 가정합니다.

    UI 내의 구성 콘텐츠 위치 예시

    주:
    이 업로드 방법은 노드를 수정하는 데 사용할 수 없습니다. 다른 CdmApplicationsApi - POST sn_cdm/applications/uploads/components/file 방법을 사용하여 노드를 수정합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/components

    기본 URL: /api/sn_cdm/applications/uploads/components

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 67. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 68. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    autoDelete 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 기존 노드를 자동으로 삭제합니다.
    • false: 기존 노드를 자동으로 삭제하지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    데이터 형식 필수 구성 데이터의 형식입니다.
    유효한 값은 다음과 같습니다.
    • csv
    • INI
    • JSON
    • 속성
    • 원시
    • XML
    • YAML

    데이터 유형: 문자열

    dataFormatAttributes 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오.

    데이터 유형: 객체

    "dataFormatAttributes" {
      "containsHeader": Boolean,
      "delimeter": "String"
      "headers": [Array],
      "securedHeaders": [Array]
    }
    dataFormatAttributes.containsHeaders 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 데이터에 헤더 행이 포함되어 있습니다. 데이터의 첫 번째 행은 헤더 행으로 간주됩니다.

      헤더 행 예

    • false: 데이터에 헤더 행이 없습니다. 매개변수에 dataFormatAttributes.headers 헤더 정보를 전달해야 합니다.

    데이터 유형: 부울

    기본값: false

    dataFormatAttributes.delimeter 데이터 내에서 필드를 설명하는 데 사용할 문자입니다.

    데이터 유형: 문자열

    기본값: 쉼표 ","

    dataFormatAttributes.headers 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다.

    데이터 유형: 배열

    기본값: 빈 배열

    dataFormatAttributes.securedHeaders 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다.
    주:
    이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다.

    데이터 유형: 배열

    기본값: 빈 배열

    deleteRedundantOverrides 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 중복 값이 있으면 재정의가 생성되지 않습니다.
    • false: 중복 값이 있는 경우 재정의를 진행합니다.

    기본값: true

    fileName 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다.

    데이터 유형: 문자열

    file노드 이름 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다.

    데이터 유형: 문자열

    identifierKeys 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다.

    예를 들어 업로드하는 경우:

    [
      {"name" : "Allan, "city" : "Paris"}, 
      {"name" : "Karen, "city" : "Sydney"}
    ]

    다음 기존 모델에서:

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"}
    ]

    이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Sydney"},
      {"name" : "Allan, "city" : "Paris"}
    ]

    그렇지 않으면 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"},
      {"name" : "Allan, "city" : "Paris"},
      {"name" : "Karen, "city" : "Sydney"}
    ]

    데이터 유형: 문자열 배열

    ignoreAttributes 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당).
    유효한 값은 다음과 같습니다.
    • true: 지정된 데이터 형식이 속성을 지원하는 경우 업로드 중에 입력 데이터의 모든 속성을 건너뜁니다.
    • 아니오: 지정된 데이터 형식이 속성을 지원하는 경우 입력 데이터의 모든 속성이 업로드에 포함됩니다.

    데이터 유형: 부울

    기본값: false

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    sharedLibraryName 필수 삭제할 구성요소가 있는 공유 라이브러리의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    표 69. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다.

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 70. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plainapplication/x-www-form-urlencoded.

    기본값: text/plain

    표 71. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 72. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예는 애플리케이션 Demo_App1631126164773에 대한 업로드 요청을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components?namePath=%2FSettings%2FdbSettings&dataFormat=json&appName=Demo_App1631126164773&changesetNumber=Chset-8&autoCommit=false&publishOption=publish_none&autoValidate=false&autoDelete=true" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "{
      \"dbIPAddress\": \"10.10.10.110\",
      \"dbPort\": \"8080\",
      \"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
      \"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\
    "}" \ 
    --user 'username':'password' 

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)", 
        "detail": "" 
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST sn_cdm/applications/uploads/components/file

    구성 데이터 모델(CDM)의 일부로 파일을 구성요소 폴더에 업로드합니다.

    이 방법을 사용하여 구성요소 파일 노드에 업로드합니다.

    URL 형식

    버전이 지정된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/components/file

    기본 URL: POST /api/sn_cdm/applications/uploads/components/file

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 73. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 74. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    fileName 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다.

    데이터 유형: 문자열

    file노드 이름 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다.

    데이터 유형: 문자열

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    게시 옵션
    연결된 구성된 스냅샷에 대한 게시 옵션입니다.
    유효한 값은 다음과 같습니다.
    • publish_none: 스냅샷을 게시하지 않습니다.
    • publish_valid: 커밋 후 확인을 통과한 스냅샷만 게시합니다.

    스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요.

    데이터 유형: 문자열

    기본값: publish_none

    주:
    이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다.
    표 75. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서.

    데이터 유형: 문자열/스트림

    헤더

    표 76. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    콘텐츠-형식 업로드할 파일의 데이터 유형입니다. 지원되는 유형: application/zip, text/plain, application/json.

    기본값: application/json

    표 77. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 78. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예시는 텍스트 파일에 컨텐츠를 업로드하는 방법을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/file?autoValidate=true&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "This is sample content that will be uploaded to a plain text file."\ 
    --user 'username':'password' 

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Could not find active application with name: ‘testApp’ of type application", 
        "detail": "" 
      },
      "status": "failure"
    }
    

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/components/vars

    지정된 애플리케이션에 대해 system components 폴더 내의 vars 폴더에 전달된 구성 데이터를 업로드하는 요청을 제출합니다.

    다음 이미지는 작업 공간 UI를 참조 ServiceNow DevOps 구성 하여 구성요소의 vars 구성 데이터가 업로드되는 경우의 예를 보여줍니다. 애플리케이션이 paymentSvc라고 가정합니다.

    Vars 디렉터리 업로드

    주:
    최대 기본 업로드 컨텐츠 크기는 2MB입니다. 속성 sn_cdm.max_allowed_upload_file_size를 업데이트하여 이 기본값을 수정할 수 있습니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/components/vars

    기본 URL: /api/sn_cdm/applications/uploads/components/vars

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 79. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 80. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    autoDelete 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 기존 노드를 자동으로 삭제합니다.
    • false: 기존 노드를 자동으로 삭제하지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    데이터 형식 필수 구성 데이터의 형식입니다.
    유효한 값은 다음과 같습니다.
    • INI
    • JSON
    • 속성
    • 원시
    • XML
    • YAML

    데이터 유형: 문자열

    deleteRedundantOverrides 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 중복 값이 있으면 재정의가 생성되지 않습니다.
    • false: 중복 값이 있는 경우 재정의를 진행합니다.

    기본값: true

    fileName 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다.

    데이터 유형: 문자열

    file노드 이름 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다.

    데이터 유형: 문자열

    identifierKeys 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다.

    예를 들어 업로드하는 경우:

    [
      {"name" : "Allan, "city" : "Paris"}, 
      {"name" : "Karen, "city" : "Sydney"}
    ]

    다음 기존 모델에서:

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"}
    ]

    이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Sydney"},
      {"name" : "Allan, "city" : "Paris"}
    ]

    그렇지 않으면 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"},
      {"name" : "Allan, "city" : "Paris"},
      {"name" : "Karen, "city" : "Sydney"}
    ]

    데이터 유형: 문자열 배열

    ignoreAttributes 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당).
    유효한 값은 다음과 같습니다.
    • true: 지정된 데이터 형식이 속성을 지원하는 경우 업로드 중에 입력 데이터의 모든 속성을 건너뜁니다.
    • 아니오: 지정된 데이터 형식이 속성을 지원하는 경우 입력 데이터의 모든 속성이 업로드에 포함됩니다.

    데이터 유형: 부울

    기본값: false

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    sharedLibraryName 필수 삭제할 구성요소가 있는 공유 라이브러리의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    표 81. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다.

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 82. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plainapplication/x-www-form-urlencoded.

    기본값: text/plain

    표 83. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 84. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예는 애플리케이션 Demo_App1631126164773에 대한 vars 업로드 요청을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/components/vars?changesetNumber=Chset-102&autoValidate=false&autoDelete=true&publishOption=publish_none&appName=Demo_App1631126164773&namePath=%2FSettings%2FdbSettings&autoCommit=false&dataFormat=json" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "{ 
      \"dbSettings\": { 
        \"dbIPAddress\": \"10.10.10.110\", 
        \"dbPort\": \"8080\", 
        \"dbConnectionString\": \"username:password server1.xyz.com:8080 dbName_payments\", 
        \"dbConnectionStringBackup\": \"username:password server2.xyz.com dbName_payments_backup\"
      } 
    }"
    --user 'username':'password' 

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "d21f71f45322301096eccceaff7b1ce3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)", 
        "detail": "" 
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections

    지정된 애플리케이션의 시스템 컬렉션 폴더 내의 특정 컬렉션에 대해 전달된 구성 데이터를 업로드하는 요청을 제출합니다.

    이 엔드포인트는 업로드 요청의 ID를 반환합니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.
    주:
    최대 기본 업로드 컨텐츠 크기는 2MB입니다. 속성 sn_cdm.max_allowed_upload_file_size를 업데이트하여 이 기본값을 수정할 수 있습니다.

    다음 이미지는 작업 공간 UI를 참조 ServiceNow DevOps 구성 하여 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 컬렉션이 db0Release1.0이고 애플리케이션이 paymentSvc라고 가정합니다.

    컬렉션 업로드 폴더

    주:
    이 업로드 방법은 노드를 수정하는 데 사용할 수 없습니다. 다른 CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections/file 방법을 사용하여 노드를 수정합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/uploads/collections

    기본 URL: /api/sn_cdm/applications/uploads/collections

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 85. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 86. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    autoDelete 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 기존 노드를 자동으로 삭제합니다.
    • false: 기존 노드를 자동으로 삭제하지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    collectionName 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다.
    주:
    지정된 항목이 이 컬렉션 아래에 없 namePath 으면 시스템은 이 컬렉션 아래에 구성요소를 자동으로 생성한 다음 구성 컨텐츠를 업로드합니다. 예를 들어 compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려면 데이터가 /collA/collections/compa/compB/compC 아래에 업로드됩니다.

    compA가 있지만 compBcompC는 없는 경우 엔드포인트는 이러한 구성요소를 생성하고 compC 아래에 데이터를 업로드합니다.

    데이터 유형: 문자열

    데이터 형식 필수 구성 데이터의 형식입니다.
    유효한 값은 다음과 같습니다.
    • csv
    • INI
    • JSON
    • 속성
    • 원시
    • XML
    • YAML

    데이터 유형: 문자열

    dataFormatAttributes 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오.

    데이터 유형: 객체

    "dataFormatAttributes" {
      "containsHeader": Boolean,
      "delimeter": "String"
      "headers": [Array],
      "securedHeaders": [Array]
    }
    dataFormatAttributes.containsHeaders 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 데이터에 헤더 행이 포함되어 있습니다. 데이터의 첫 번째 행은 헤더 행으로 간주됩니다.

      헤더 행 예

    • false: 데이터에 헤더 행이 없습니다. 매개변수에 dataFormatAttributes.headers 헤더 정보를 전달해야 합니다.

    데이터 유형: 부울

    기본값: false

    dataFormatAttributes.delimeter 데이터 내에서 필드를 설명하는 데 사용할 문자입니다.

    데이터 유형: 문자열

    기본값: 쉼표 ","

    dataFormatAttributes.headers 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다.

    데이터 유형: 배열

    기본값: 빈 배열

    dataFormatAttributes.securedHeaders 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다.
    주:
    이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다.

    데이터 유형: 배열

    기본값: 빈 배열

    deleteRedundantOverrides 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 중복 값이 있으면 재정의가 생성되지 않습니다.
    • false: 중복 값이 있는 경우 재정의를 진행합니다.

    기본값: true

    ignoreAttributes 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당).
    유효한 값은 다음과 같습니다.
    • true: 지정된 데이터 형식이 속성을 지원하는 경우 업로드 중에 입력 데이터의 모든 속성을 건너뜁니다.
    • 아니오: 지정된 데이터 형식이 속성을 지원하는 경우 입력 데이터의 모든 속성이 업로드에 포함됩니다.

    데이터 유형: 부울

    기본값: false

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    표 87. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다.

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 88. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plainapplication/x-www-form-urlencoded.

    기본값: text/plain

    표 89. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 90. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    이 예시에서는 JSON 형식의 dbSettings 구성 날짜를 애플리케이션 Demo_App1631126164773의 컬렉션 폴더에 업로드하는 방법을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections?dataFormat=json&autoValidate=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&autoDelete=true&namePath=%2FSettings%2FdbSettings&collectionName=release-1.0&autoCommit=false&publishOption=publish_none" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "{ 
      \"dbSettings\": { 
        \"dbIPAddress\": \"10.10.10.110\", 
        \"dbPort\": \"8080\", 
        \"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\", 
        \"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\" 
      } 
    }" \ 
    --user 'username':'password' 

    다음은 이 호출에 대한 가능한 성공 및 오류로서의 응답을 보여줍니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)", 
        "detail": "" 
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/collections/file

    구성 데이터 모델(CDM)의 컬렉션 폴더에 파일을 업로드합니다.

    URL 형식

    버전이 지정된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/collections/file

    기본 URL: POST /api/sn_cdm/applications/uploads/collections/file

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 91. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 92. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    collectionName 필수 업로드된 페이로드를 저장할 컬렉션의 이름입니다.
    주:
    지정된 namePath 가 이 컬렉션 아래에 없으면 시스템은 이 컬렉션 아래에 구성요소를 자동으로 생성한 다음 구성 콘텐츠를 업로드합니다. 예를 들어 compA/comp/compC 경로를 사용하여 컬렉션 collA를 업로드하려면 데이터가 /collA/collections/compa/compB/compC 아래에 업로드됩니다. compA가 있지만 compBcompC는 없는 경우 엔드포인트는 이러한 구성요소를 생성하고 compC 아래에 데이터를 업로드합니다.

    데이터 유형: 문자열

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    fileName 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다.

    데이터 유형: 문자열

    file노드 이름 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다.

    데이터 유형: 문자열

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    게시 옵션
    연결된 구성된 스냅샷에 대한 게시 옵션입니다.
    유효한 값은 다음과 같습니다.
    • publish_none: 스냅샷을 게시하지 않습니다.
    • publish_valid: 커밋 후 확인을 통과한 스냅샷만 게시합니다.

    스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요.

    데이터 유형: 문자열

    기본값: publish_none

    주:
    이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다.
    표 93. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서.

    데이터 유형: 문자열/스트림

    헤더

    표 94. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    콘텐츠-형식 업로드할 파일의 콘텐츠 유형입니다. 예: application/zip, text/plain, application/json.
    표 95. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 96. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 호출은 일반 텍스트 파일을 CDM 컬렉션 폴더에 업로드합니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/collections/file?autoValidate=true&collectionName=collA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "This is sample content that will be uploaded to a plain text file."\ 
    --user 'username':'password'

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Could not find active application with name: ‘testApp’ of type application", 
        "detail": "" 
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables

    지정된 애플리케이션의 배포 가능 항목 시스템 폴더 내에서 특정 배포 가능 항목에 대한 구성 콘텐츠를 업로드하는 요청을 제출합니다.

    이 엔드포인트는 업로드 요청의 ID를 반환합니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.
    주:
    최대 기본 업로드 컨텐츠 크기는 2MB입니다. 속성 sn_cdm.max_allowed_upload_file_size를 업데이트하여 이 기본값을 수정할 수 있습니다.

    다음 이미지는 UI를 참조 ServiceNow DevOps 구성 하여 배포 가능 항목 구성 데이터가 업로드되는 위치의 예를 보여줍니다. 배포 가능 항목이 Development_1 이고 애플리케이션이 paymentSvc라고 가정합니다.

    UI의 배포 가능 항목 구성 데이터 위치

    주:
    이 업로드 방법은 노드를 수정하는 데 사용할 수 없습니다. 다른 CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables/file 방법을 사용하여 노드를 수정합니다.

    URL 형식

    버전 관리된 URL: /api/sn_cdm/{api_version}/applications/uploads/deployables

    기본 URL: /api/sn_cdm/applications/uploads/deployables

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 97. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 98. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    autoDelete 업로드 컨텐츠의 일부가 아닌 기존 노드가 처리가 완료된 후 삭제되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 기존 노드를 자동으로 삭제합니다.
    • false: 기존 노드를 자동으로 삭제하지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    데이터 형식 필수 구성 데이터의 형식입니다.
    유효한 값은 다음과 같습니다.
    • csv
    • INI
    • JSON
    • 속성
    • 원시
    • XML
    • YAML

    데이터 유형: 문자열

    dataFormatAttributes 매개변수가 dataFormatcsv로 설정된 경우에만 지원됩니다. CSV 데이터 형식을 정의하는 속성입니다. 자세한 내용은 Parsing of CSV files in CDM 문서를 참조하십시오.

    데이터 유형: 객체

    "dataFormatAttributes" {
      "containsHeader": Boolean,
      "delimeter": "String"
      "headers": [Array],
      "securedHeaders": [Array]
    }
    dataFormatAttributes.containsHeaders 데이터에 헤더 행이 포함되어 있는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 데이터에 헤더 행이 포함되어 있습니다. 데이터의 첫 번째 행은 헤더 행으로 간주됩니다.

      헤더 행 예

    • false: 데이터에 헤더 행이 없습니다. 매개변수에 dataFormatAttributes.headers 헤더 정보를 전달해야 합니다.

    데이터 유형: 부울

    기본값: false

    dataFormatAttributes.delimeter 데이터 내에서 필드를 설명하는 데 사용할 문자입니다.

    데이터 유형: 문자열

    기본값: 쉼표 ","

    dataFormatAttributes.headers 매개변수가 false인 경우 dataFormatAttributes.containsHeaders 필요합니다. 헤더를 구성하는 데이터의 필드입니다. 이러한 헤더는 JSON 형식으로 된 CDI의 키 이름으로 변환됩니다. 헤더 수는 기록 필드 수와 일치해야 합니다.

    데이터 유형: 배열

    기본값: 빈 배열

    dataFormatAttributes.securedHeaders 보안 필드인 데이터 필드로, 업로드된 데이터에서 암호화되어야 합니다.CDM 보안 헤더의 이름은 헤더 속성 또는 데이터 파일의 헤더 이름과 일치해야 합니다. 이러한 필드는 암호(2단계 암호화됨) 유형의 열에 저장됩니다.
    주:
    이 속성을 통해서만 필드를 보호할 수 있습니다. 보안 필드의 보안을 해제할 수 없습니다.

    데이터 유형: 배열

    기본값: 빈 배열

    deleteRedundantOverrides 중복 값이 있는 경우 재정의를 생성할지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 중복 값이 있으면 재정의가 생성되지 않습니다.
    • false: 중복 값이 있는 경우 재정의를 진행합니다.

    기본값: true

    deployableName 필수 업로드된 페이로드를 저장할 배포 가능 항목의 이름입니다.
    주:
    이 배포 가능 항목에 지정된 namePath 항목이 없는 경우, 시스템은 이 배포 가능 항목 아래에 구성요소를 자동으로 생성한 다음 구성 콘텐츠를 업로드합니다.
    identifierKeys 동일한 노드를 식별하는 데 사용할 배열 하위 항목을 나타내는 이름 목록입니다.

    예를 들어 업로드하는 경우:

    [
      {"name" : "Allan, "city" : "Paris"}, 
      {"name" : "Karen, "city" : "Sydney"}
    ]

    다음 기존 모델에서:

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"}
    ]

    이름을 설정하면identifierKeys 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Sydney"},
      {"name" : "Allan, "city" : "Paris"}
    ]

    그렇지 않으면 다음과 같은 출력이 생성됩니다.

    [
      {"name" : "Karen, "city" : "Manila"},
      {"name" : "Allan, "city" : "Brussels"},
      {"name" : "Allan, "city" : "Paris"},
      {"name" : "Karen, "city" : "Sydney"}
    ]

    데이터 유형: 문자열 배열

    ignoreAttributes 지정된 데이터 형식이 속성을 지원하는지 여부를 나타내는 플래그입니다(현재는 XML만 해당).
    유효한 값은 다음과 같습니다.
    • true: 지정된 데이터 형식이 속성을 지원하는 경우 업로드 중에 입력 데이터의 모든 속성을 건너뜁니다.
    • 아니오: 지정된 데이터 형식이 속성을 지원하는 경우 입력 데이터의 모든 속성이 업로드에 포함됩니다.

    데이터 유형: 부울

    기본값: false

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    게시 옵션
    연결된 구성된 스냅샷에 대한 게시 옵션입니다.
    유효한 값은 다음과 같습니다.
    • publish_none: 스냅샷을 게시하지 않습니다.
    • publish_valid: 커밋 후 확인을 통과한 스냅샷만 게시합니다.

    스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요.

    데이터 유형: 문자열

    기본값: publish_none

    주:
    이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다.
    표 99. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 쿼리 매개변수의 매개변수에 의해 dataFormat 정의된 형식의 모든 데이터가 될 수 있습니다.

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 100. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. application/json만 지원합니다.
    콘텐츠-형식 요청 본문의 데이터 형식입니다. 지원되는 유형: text/plainapplication/x-www-form-urlencoded.

    기본값: text/plain

    표 101. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 102. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예는 애플리케이션 Demo_App1631126164773에 대한 업로드 요청을 보여줍니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables?deployableName=TST-1&autoValidate=false&dataFormat=json&autoDelete=false&changesetNumber=Chset-102&appName=Demo_App1631126164773&publishOption=publish_none&autoCommit=true&namePath=%2FSettings%2FdbSettings" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "{
      \"dbIPAddress\": \"10.10.10.110\",
      \"dbPort\": \"8080\",
      \"dbConnectionString\": \"admin:admin server1.xyz.com:8080 dbName_payments\",
      \"dbConnectionStringBackup\": \"admin:admin server2.xyz.com dbName_payments_backup\"
    }" \ 
    --user 'username':'password' 

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Size of uploaded data:6853632.0(bytes) is greater than max allowed upload limit of 2097152.0(bytes)", 
        "detail": "" 
      },
      "status": "failure"
    }

    CdmApplicationsApi - POST /sn_cdm/applications/uploads/deployables/file

    구성 데이터 모델(CDM)의 배포 가능 항목 폴더에 파일을 업로드합니다.

    URL 형식

    버전 관리된 URL: POST /api/sn_cdm/{api_version}/applications/uploads/deployables/file

    기본 URL: POST /api/sn_cdm/applications/uploads/deployables/file

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 103. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 104. 쿼리 매개변수
    이름 설명
    appName 구성 데이터와 연결할 애플리케이션의 이름입니다. 이 애플리케이션은 활성 상태여야 합니다.

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    자동 커밋 매개변수에서 changesetNumber 식별된 변경 세트가 업로드 후 데이터 모델에 커밋되는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 업로드 후 변경 세트가 커밋됩니다.
    • false: 업로드 후 변경 세트가 커밋되지 않습니다.

    데이터 유형: 부울

    기본값: false

    자동 확인 커밋 시 생성된 스냅샷이 확인되었는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 스냅샷의 유효성을 확인합니다.
    • false: 스냅샷을 확인하지 않습니다.
    주:
    이 옵션은 매개변수가 autoCommit true인 경우에만 사용할 수 있습니다.

    데이터 유형: 부울

    기본값: false

    changesetNumber Chset-102와 연결된 애플리케이션과 연결된 변경 세트 를 고유하게 식별하는 문자열입니다. 이 변경 세트는 "오픈" 상태여야 합니다.

    데이터 유형: 문자열

    기본값: 사용할 변경 세트를 생성합니다. 변경 세트 상세 정보는 결과의 일부로 반환됩니다.CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id}

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    deployableName 필수 정책을 매핑할 CDM 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 배포 가능 항목 [sn_cdm_deployable]

    fileName 업로드할 파일의 이름입니다. 이 이름은 실제 파일 이름과 다를 수 있으며 파일 확장자를 포함합니다. 예: .txt/.scv/.jar. fileName 값은 파일을 다운로드할 때 적용됩니다.

    데이터 유형: 문자열

    file노드 이름 파일 노드의 이름입니다. 이 파일 이름은 데이터를 익스포트할 때 구성 데이터에 사용됩니다. 이 이름에는 파일 확장자가 필요하지 않으며 다운로드에도 영향을 주지 않습니다.

    데이터 유형: 문자열

    namePath 구성 데이터를 업로드해야 하는 대상 노드의 경로입니다. 이 경로는 구성 요소, 컬렉션 또는 배포 가능 폴더(호출 중인 엔드포인트에 따라 다름)를 기준으로 합니다.
    다음 형식으로 이름 경로를 전달할 수 있습니다. 예를 들어 testApp/deployables/Development1/cdi1 노드의 이름 경로를 정의하려면 다음을 수행합니다.
    • 백슬래시 형식: testApp/deployables/Development1/cdi1
      주:
      노드 이름에 백슬래시("/")가 포함된 경우 이 형식을 사용할 수 없습니다.
    • 대체 문자가 있는 백엔드 이름 경로: testApp 배포 가능 항목 개발1 cdi1
    • 배열: ['testApp','배포 가능 항목','Development1','cdi1']
    주:
    지정된 구성요소가 지정된 경로에 없으면 시스템은 자동으로 지정된 경로에 구성요소를 생성한 다음 데이터를 업로드합니다.

    데이터 유형: 문자열

    게시 옵션
    연결된 구성된 스냅샷에 대한 게시 옵션입니다.
    유효한 값은 다음과 같습니다.
    • publish_none: 스냅샷을 게시하지 않습니다.
    • publish_valid: 커밋 후 확인을 통과한 스냅샷만 게시합니다.

    스냅샷 게시에 대한 자세한 내용은 스냅샷 게시 또는 게시 취소를 참조하세요.

    데이터 유형: 문자열

    기본값: publish_none

    주:
    이 옵션은 매개변수 값이 autoCommit true인 경우에만 사용할 수 있습니다.
    표 105. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    변수 업로드 데이터 업로드할 구성 데이터입니다. 기본적으로 업로드할 파일 크기는 5MB로 제한됩니다. 업로드 파일 크기와 유형을 조정하는 방법에 대한 자세한 내용은 다음을 참조하십시오 Now Support 문서.

    데이터 유형: 문자열/스트림

    헤더

    표 106. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    콘텐츠-형식 업로드할 파일의 데이터 유형입니다. 지원되는 유형: application/zip, text/plain, application/json.

    기본값: application/json

    표 107. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 108. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청.

    업로드 요청이 거부되었습니다.

    가능한 문제:
    • 구성 페이로드의 크기는 허용되는 최대값인 기본적으로 2MB보다 큽니다.
    • 호출에서 필수 매개변수가 누락되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    오류 처리 중에 오류가 발생한 경우 오류에 대한 상세 정보입니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 오류에 대한 추가 정보입니다.

    데이터 유형: 문자열

    오류.메시지 요청을 처리하는 동안 생성된 오류 메시지입니다.

    데이터 유형: 문자열

    상태 요청의 오류 상태입니다.

    가능한 값: 실패

    데이터 유형: 문자열

    upload_id 업로드 요청의 Sys_id입니다. 이 ID를 사용하여 엔드포인트를 CdmApplicationsApi - GET /sn_cdm/applications/upload-status/{upload_id} 호출하여 업로드 상태를 가져옵니다.

    데이터 유형: 문자열

    cURL 요청

    다음 요청은 일반 텍스트 파일을 CDM 애플리케이션의 배포 가능 항목 폴더에 업로드합니다.

    curl "http://instance.servicenow.com/api/sn_cdm/applications/uploads/deployables/file?autoValidate=true&deployableName=depA&appName=testApp&namePath=testComponent%2FfilesFolder&fileName=testFileNodeName.txt&publishOption=publish_valid&changesetNumber=Chset-108&autoCommit=true&fileNodeName=testFile.txt" \ 
    --request POST \ 
    --header "Accept:application/json" \ 
    --header "Content-Type:text/plain" \ 
    --data "This is sample content that will be uploaded to a plain text file."\ 
    --user 'username':'password' 
    

    다음 반환 결과에는 이 요청에 대한 성공 및 오류 응답이 모두 표시됩니다.

    // Successful completion of the upload request
    { 
      "result": { 
        "upload_id": "ec1f71f45322301096edddeeff7b12b3" 
      } 
    } 
    
    // Error response. Payload is too large.
    { 
      "error": { 
        "message": "Could not find active application with name: ‘testApp’ of type application", 
        "detail": "" 
      },
      "status": "failure"
    }
    

    CdmApplicationsApi - PUT /sn_cdm/applications/deployables

    지정된 변경 세트 내의 애플리케이션에서 지정된 공유 구성요소를 업데이트합니다.

    다음 필드에 대한 업데이트를 허용합니다.
    • 이름
    • 설명
    • 애플리케이션 서비스\동적 CI 그룹
    • 배치 가능 항목 식별자

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/deployables

    기본 URL: /api/sn_cdm/applications/deployables

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 109. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 110. 쿼리 매개변수
    이름 설명
    appName 필수 CDM 애플리케이션의 이름입니다.

    데이터 유형: 문자열

    이름 필수 CDM 배포 가능 항목의 이름입니다.

    데이터 유형: 문자열

    newDescription 옵션입니다. CDM 배포 가능 항목에 대한 설명입니다.

    데이터 유형: 문자열

    newServiceId 옵션입니다. 원하는 애플리케이션 서비스/동적 CI 그룹의 ID입니다. cURL 요청에서 서비스에서 배포 가능 항목의 연결을 끊으려면 "" 를 제공하십시오.
    새 식별자 옵션입니다. 배포 가능 항목의 식별자입니다.

    데이터 유형: 선택(개발/테스트/프로덕션

    새 이름 옵션입니다. 배포 가능 항목의 새 이름입니다.

    데이터 유형: 문자열

    returnFields 옵션입니다. 응답의 일부로 반환될 필드의 쉼표로 구분된 목록입니다.
    표 111. 요청 본문 매개변수(XML 또는 JSON)
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 112. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형: application/json

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 113. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청. 잘못된 요청 유형 또는 잘못된 형식의 요청이 탐지되었습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수(JSON 또는 XML)

    이름 설명
    sys_id CDM 배포 가능 항목 sys_Id.
    이름 CDM 배포 가능 항목의 이름입니다.
    노드 배포 가능 노드 객체입니다.

    { 'value': '<sysId>', 'link': 'http://localhost:8081/api/now/table/*'}

    설명 CDM 배포 가능 항목 설명입니다.
    식별자 배포 가능 항목의 식별자입니다.
    cmdb_ci 배포 가능 항목에 연결된 앱 서비스 개체입니다.

    { 'value': '<sysId>', 'link': 'http://localhost:8081/api/now/table/*'}

    cmdb_app CDM 애플리케이션 객체입니다.

    { 'value': '<sysId>', 'link': 'http://localhost:8081/api/now/table/*'}

    snapshot_version_counter 배포 가능 항목에 대해 생성된 스냅샷 수입니다.
    cdi_count 이 CDM 배포 가능 항목에 포함된 CDI의 수입니다.
    cdi_usage CDI 사용량 백분율입니다.
    environment_type 환경 유형입니다. 가능한 값:
    • 개발
    • 프로덕션
    • 테스트
    상태 활성 또는 삭제된 상태 . 가능한 값:
    • 활성
    • 삭제됨
    sys_created_by <username>으로 생성한 CDM 배포 가능 항목입니다.
    sys_created_on <yyyy-MM-dd hh:mm:ss> 형식의 CDM 배포 가능 항목 생성 타임스탬프입니다.
    sys_updated_by <username>으로 업데이트된 CDM 배포 가능 항목
    sys_updated_on

    CDM 배포 가능 항목은 타임스탬프에 의해 <y-MM-dd hh:mm:ss> 형식으로 업데이트되었습니다.

    cURL 요청

    curl "http://localhost:8080/api/sn_cdm/applications/deployables?appName=testApp&name=Dep-1" \ 
    --request PUT\ 
    --header "Accept:application/json" \ 
    --user 'cdm_admin':'password1!' 

    출력:

    { 
      "result": { 
        "identifier": "identiy1", 
        "cmdb_ci": { 
          "value": "f5b9e00b53901110a1d3ddeeff7b12b8", 
          "link": "http://192.168.0.233:8080/api/now/table/cmdb_ci_service_auto/f5b9e00b53901110a1d3ddeeff7b12b8" 
        }, 
        "cdi_count": "3", 
        "snapshot_version_counter": "1", 
        "description": "cdcds", 
        "sys_updated_on": "2022-07-27 13:40:13", 
        "environment_type": "Test", 
        "node": { 
          "value": "30c00d4053015110a1d3ddeeff7b12bf", 
          "link": "http://192.168.0.233:8080/api/now/table/sn_cdm_node/30c00d4053015110a1d3ddeeff7b12bf" 
        }, 
        "sys_id": "39b9e00b53901110a1d3ddeeff7b12b7", 
        "sys_updated_by": "admin", 
        "cdm_app": { 
          "value": "62b517a953b70110a1d3ddeeff7b128c", 
          "link": "http://192.168.0.233:8080/api/now/table/sn_cdm_application/62b517a953b70110a1d3ddeeff7b128c" 
        }, 
        "sys_created_on": "2022-06-29 12:53:57", 
        "cdi_usage": "0.03", 
        "name": "Dep-2", 
        "state": "active", 
        "sys_created_by": "admin" 
      } 
    } 

    CdmApplicationsApi - PUT /sn_cdm/applications/shared_components

    지정된 변경 세트 내의 애플리케이션에서 지정된 공유 구성요소를 업데이트합니다.

    이 엔드포인트에 액세스하려면 CDM 관리자 역할이 필요합니다.

    URL 형식

    버전이 지정된 URL: /api/sn_cdm/{api_version}/applications/shared_components

    기본 URL: /api/sn_cdm/applications/shared_components

    주:
    사용 가능한 버전은 REST API 탐색기에 지정됩니다. 스크립트 기반 REST API의 경우 스크립트 기반 REST 서비스 양식에 추가 버전 정보가 있습니다.

    지원되는 요청 매개변수

    표 114. 경로 매개변수
    이름 설명
    api_version 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들어 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하도록 이 값만 지정하십시오.

    데이터 유형: 문자열

    표 115. 쿼리 매개변수
    이름 설명
    changesetNumber 필수 구성요소와 연결된 변경 세트의 고유 식별자입니다.

    데이터 유형: 문자열

    returnFields 응답의 일부로 반환할 필드 목록입니다. sys_id, sys_updated_by 또는 상태와 같은 기록 열 이름을 전달합니다.

    데이터 유형: 배열

    기본값: 엔드포인트에서 결정한 모든 필드

    sharedComponentName 필수 지정된 애플리케이션과 연결된 공유 구성요소의 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 공유 구성요소 [sn_cdm_shared_component]

    sharedLibraryName 필수 구성요소가 있는 공유 라이브러리의 이름입니다. 공유 라이브러리에는 다음과 같이 정의된 다음 필드가 있어야 합니다.
    • 상태 = 활성
    • 사용 가능 = true
    • 유형 = shared_library

    데이터 유형: 문자열

    테이블: CDM 애플리케이션 [sn_cdm_application]

    버전 필수 공유 구성요소와 연결된 버전 이름입니다.

    데이터 유형: 문자열

    테이블: CDM 스냅샷 [sn_cdm_snapshot]

    표 116. 요청 본문 매개변수
    이름 설명
    안 함

    헤더

    다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 고유한 방식으로 이 작업에 적용됩니다. REST API에 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하십시오.

    표 117. 요청 헤더
    머리글 설명
    수용 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다.

    기본값: application/json

    표 118. 응답 헤더
    머리글 설명
    안 함

    상태 코드

    이 HTTP 작업에 적용되는 상태 코드는 다음과 같습니다. REST API에 사용되는 가능한 상태 코드 목록은 REST API HTTP 응답 코드를 참조하십시오.

    표 119. 상태 코드
    상태 코드 설명
    200 성공입니다. 요청이 성공적으로 처리되었습니다.
    400 잘못된 요청입니다. 전달된 변경 세트가 존재하지 않습니다.
    500 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다.

    응답 본문 매개변수

    응답 필드는 요청의 매개변수에 returnFields 지정된 필드에 따라 달라집니다. 다음은 보다 중요한 몇 가지 필드에 대해 설명합니다.

    이름 설명
    changeset_id 노드와 연결된 변경 세트 기록의 상세 정보입니다.

    데이터 유형: 객체

    "changeset_id": {
      "link": "String",
      "value": "String"
    }
    changeset_id.link 테이블 REST API를 사용하여 이 변경 세트 기록을 쿼리하기 위한 호출 구문입니다.

    데이터 유형: 문자열

    changeset_id.value 변경 세트 기록의 고유 식별자입니다.

    데이터 유형: 문자열

    테이블: CDM 변경 세트 [sn_cdm_changeset]

    설명 CDM 노드에 대한 설명입니다.

    데이터 유형: 문자열

    오류 처리 중 오류가 발생한 경우에만 반환됩니다.

    데이터 유형: 객체

    "error": {
      "detail": "String",
      "message": "String"
    }
    오류.상세 정보 발생한 오류에 대한 상세 정보입니다.

    데이터 유형: 문자열

    오류.메시지 오류에 대한 개요를 제공하는 메시지입니다.

    데이터 유형: 문자열

    linked_to 공유 구성요소와 연결된 메인 노드의 ID입니다.

    데이터 유형: 문자열

    linked_to_version 노드와 연결된 CDM 스냅샷 기록의 상세 정보입니다.

    데이터 유형: 객체

    "linked_to_version": {
      "link": "String",
      "value": "String"
    }
    linked_to_version.link 테이블 REST API를 사용하여 이 버전 기록을 쿼리하기 위한 호출 구문입니다.

    데이터 유형: 문자열

    linked_to_version.value 버전 기록의 Sys_id입니다.

    데이터 유형: 문자열

    메인

    연결된 스냅샷이 게시되었는지 여부를 나타내는 플래그입니다.

    유효한 값은 다음과 같습니다.
    • true: 스냅샷이 게시되었습니다.
    • false: 스냅샷이 게시되지 않았습니다.
    main_id 새로 작성된 메인 노드의 고유 ID입니다.

    데이터 유형: 문자열

    main_id_encoded 새로 생성된 메인 노드의 인코딩된 ID입니다.

    데이터 유형: 문자열

    이름 CDM 노드의 이름입니다.

    데이터 유형: 문자열

    노드 공유 구성요소 노드의 Sys_id입니다.

    데이터 유형: 문자열

    node_path 공유 구성요소를 추가할 때 생성되는 새 연결된 노드의 경로입니다.

    데이터 유형: 문자열

    상태 노드의 상태입니다.

    가능한 값: 신규

    데이터 유형: 문자열

    sys_created_by CDM 노드를 생성한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_created_on CDM 노드가 생성된 날짜 및 시간입니다.

    형식: YYYY-mm-DD hh:mm:ss

    데이터 유형: 문자열

    sys_id 노드의 Sys_id입니다.

    데이터 유형: 문자열

    테이블: CDM 노드 [sn_cdm_node]

    sys_updated_by CDM 노드를 마지막으로 업데이트한 사용자의 사용자 이름입니다. 예를 들어 able.tuter입니다.

    데이터 유형: 문자열

    sys_updated_on CDM 노드가 마지막으로 업데이트된 날짜 및 시간입니다.

    형식: YYYY-mm-DD hh:mm:ss

    데이터 유형: 문자열

    유형 노드 유형입니다.

    데이터 유형: 문자열

    cURL 요청

    다음 예제에서는 이 엔드포인트를 호출하여 "Chset-20" 변경 세트 내의 공유 라이브러리 "OracleG-Library-10" 아래에서 공유 구성요소 "paymentService-V1.1"로 애플리케이션 "App1"을 업데이트하는 방법을 보여줍니다.

    "https://instance-name.service-now.com/api/sn_cdm/applications/shared_components?sharedComponentName=paymentService-V1.1&sharedLibraryName=OracleG-Library-10&changesetNumber=Chset-20&versionName=sComp3-v2.shc&appName=App1" \ 
    --request PUT \ 
    --header "Accept:application/json" \ 
    --user 'username':'password'

    응답:

    "result": {
      "changeset_id": {
        "value": "7343d0f71b771110636e0fe0604bcb0b",
        "link": "https://instance-name.service-now.com/api/now/table/sn_cdm_changeset/7343d0f71b771110636e0fe0604bcb0b"
      },
      "node_path": "!2!3!&`",
      "description": null,
      "sys_updated_on": "2022-12-22 18:52:38",
      "type": "sn_cdm_node_linked_shared_component",
      "sys_class_name": "sn_cdm_node",
      "sys_id": "339314b71b771110636e0fe0604bcba3",
      "sys_updated_by": ”admin",
      "previous_version": {
        "value": "a9ce80bf1b371110636e0fe0604bcb10",
        "link": "https://instance-name.service-now.com/api/now/table/sn_cdm_node/a9ce80bf1b371110636e0fe0604bcb10" 
      },
      "sys_created_on": "2022-12-22 18:52:38",
      "value": null,
      "effective_from": null,
      "linked_to": "146", 
      "sys_created_by": ”admin",
      "restricted_to": null,
      "linked_to_version": {
        "value": "54115c371b771110636e0fe0604bcb77",
        "link": "https://instance-name.service-now.com/api/now/table/sn_cdm_snapshot/54115c371b771110636e0fe0604bcb77"
      },
      "level": "2",
      "conflict_type": null,
      "main_id": "166",
      "effective_to": null,
      "secure_value": null,
      "node_classifier": "/application/components",
      "main_id_encoded": "&`",
      "name": "Component_A",
      "position": null,
      "reason_for_conflict": null,
      "system_folder": false,
      "status": "updated",
      "conflict": false
    }