권리 API 검증
권리 검증 API는 유효한 권리 목록, 권리의 특성에 대한 세부사항 및 권리의 최신 사용 정보를 얻을 수 있는 엔드포인트를 제공합니다.
이 API에 액세스하려면 sn_ent_verify(자격 검증) 플러그인을 활성화해야 합니다.
이 API는 sn_ent_verify 네임스페이스 내에서 제공됩니다.
호출하는 사용자에게 sn_pss_core.pss_integrator 역할이 있어야 합니다.
- 계정 [customer_account]
- 소비자 [csm_consumer]
- 권리 [service_entitlement]
- 권리 특성 [sn_pss_core_entitlement_characteristic]
- 권리 사용 [sn_pss_core_entitlement_usage]
- 세대 [csm_household]
- 설치 기반 [sn_install_base_item]
- 제품 오퍼링 [sn_prd_pm_product_offering]
- 제품 모델 [cmdb_model]
- 서비스 계약 [sn_pss_core_service_contract]
- 서비스 계약 라인 [sn_pss_core_service_contract_line]
- 판매된 제품 [sn_install_base_sold_product]
권리 확인 - /sn_ent_verify/verifyentitlements
제공된 필터에 따라 유효한 권리 기록을 반환합니다.
- 계정
- 소비자
- 계약
- 세대
- 설치 기반
- 제품 모델
- 제품 오퍼링
- 서비스 계약 라인
- 판매된 권리
- 판매된 제품
- 상태
여러 필터 매개 변수가 전달되면 끝점은 매개 변수에 AND 연산자를 적용합니다. 예를 들어 "account = boxeo" 및 "state = draft"와 같은 필터 매개 변수를 전달하면 엔드포인트는 Account = boxeoANDstate = draft인 모든 권리를 반환합니다.
시스템 페이지 매김 매개변수 sysparm_offset 및 를 전달하여 반환 결과에 대한 페이지 매김을 구현할 수 있습니다 sysparm_limit. 기본적으로 sysparm_offset 0으로 설정되고 sysparm_limit 10으로 설정됩니다. 따라서 필터를 적용한 후 100개의 권리가 기준을 충족하면 응답에는 처음 10개의 권리가 포함됩니다. 이러한 값은 엔드포인트 호출에 전달하여 수정할 수 있습니다.
URL 형식
버전이 지정된 URL: / api/sn_ent_verify/v1/verifyentitlements
기본 URL: / api/sn_ent_verify/verifyentitlements
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| sysparm_limit | 옵션입니다. 반환할 최대 기록 수입니다. 이 기록 수를 초과하는 요청의 경우 sysparm_offset 매개변수를 사용하여 기록 검색을 페이지 매김합니다. 응답에서 boolean 매개 변수가 hasMore 반환됩니다. 이는 필터 기준을 충족하는 반환할 기록이 더 있는지 여부를 나타냅니다. 데이터 유형: 숫자 기본값: 10 최대값: 100 |
| sysparm_offset | 옵션입니다. 기록 검색을 시작할 시작 기록 인덱스입니다. 이 값을 사용하여 기록 검색을 페이지 매김합니다. 이 기능을 사용하면 기록 수와 관계없이 관리 가능한 작은 청크로 모든 기록을 검색할 수 있습니다. 예를 들어 이 엔드포인트를 처음 호출할 때 sysparm_offset이 "0"으로 설정됩니다. 사용 가능한 모든 기록을 간단히 살펴보려면 모든 기록이 끝날 때까지 sysparm_offset 매개변수에 음수를 전달하지 마십시오. 데이터 유형: 숫자 기본값: 0 |
| 이름 | 설명 |
|---|---|
| 계정 | account or consumer 매개 변수를 전달해야 합니다. 상호 배타적입니다. 권리 기록을 반환할 계정 기록의 Sys_id입니다. 계정 [customer_account] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| 소비자 | account or consumer 매개 변수를 전달해야 합니다. 상호 배타적입니다. 권리 기록을 반환할 소비자 기록의 Sys_id입니다. 소비자 [csm_consumer] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| 계약 | 권리 기록을 반환할 계약 기록의 Sys_id입니다. 계약 [sn_pss_core_service_contract] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| display_value | 연결된 필드 값, 표시 값 또는 둘 다를 반환할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 기본값: false |
| household | 권리 기록을 반환할 세대 기록의 Sys_id입니다. 세대 [csm_household] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| install_base | 권리 기록을 반환할 설치 기반 기록의 Sys_id입니다. 설치 기반 [sn_install_base_item] 테이블에 있습니다. 엔드포인트는 설치 기반 기록의 sys_id 사용하여 판매된 제품 포함[sn_install_base_m2m_contract_sold_product]" 테이블을 검색하여 연결된 설치 기반이 적용되는 모든 권리를 반환합니다. 데이터 유형: 문자열 기본값: 없음 |
| 제품 | 권리 기록을 반환할 제품 기록의 Sys_id입니다. 제품 모델 [cmdb_model] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| product_offering | 권리 기록을 반환할 제품 오퍼링 기록의 Sys_id입니다. 제품 오퍼링 [sn_prd_pm_product_offering] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| service_contract_line | 권리 기록을 반환할 서비스 계약 라인 기록의 Sys_id입니다. 서비스 계약 라인 [sn_pss_core_service_contract_line] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| sold_entitlement | 권리 기록을 반환할 판매된 권리 기록의 Sys_id입니다. 판매된 제품 [sn_install_base_sold_product] 테이블에 있습니다. 데이터 유형: 문자열 기본값: 없음 |
| sold_product | 권리 기록을 반환할 판매된 제품 기록의 Sys_id입니다. 판매된 제품 [sn_install_base_sold_product] 테이블에 있습니다. 엔드포인트는 판매된 제품 기록의 sys_id 사용하여 판매된 제품 포함[sn_install_base_m2m_contract_sold_product]" 테이블을 검색하여 관련 판매된 제품에 포함된 모든 권리를 반환합니다. 데이터 유형: 문자열 기본값: 없음 |
| 상태 | 반환할 권리의 상태입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 기본값: 모두 |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 403 | 금지되었습니다. 사용자에게 지정된 기록에 대한 액세스 권한이 없습니다. |
| 404 | 찾을 수 없습니다. 요청한 항목을 찾을 수 없습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 인타이틀먼트 | 통과된 필터 기준과 일치하는 권리 목록입니다. 데이터 유형: 객체 배열 |
| entitlements.account | 이 권리와 연결된 계정 기록의 Sys_id입니다. 계정 [customer_account] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.consumer | 이 권리와 연결된 소비자 기록의 Sys_id입니다. 소비자 [csm_consumer] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.contract | 이 권리와 연결된 계약 기록의 Sys_id입니다. 계약 [sn_pss_core_service_contract] 테이블에 있습니다. 데이터 유형: 문자열 |
| end_date | 연결된 권리 기록의 종료 날짜 필드 값입니다. 데이터 유형: 문자열 |
| entitlements.entitlement_name | 권리의 이름입니다. 데이터 유형: 문자열 |
| entitlements.household | 이 권리와 연결된 세대 기록의 Sys_id입니다. 세대 [csm_household] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.product | 이 권리와 연결된 제품 기록의 Sys_id입니다. 제품 모델 [cmdb_model] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.product_offering | 이 권리와 연결된 제품 제안 기록의 Sys_id입니다. 제품 제안 [sn_prd_pm_product_offering] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.service_contract_line | 이 권리와 연결된 서비스 계약 라인 기록의 Sys_id입니다. 서비스 계약 라인 [sn_pss_core_service_contract_line] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.sold_entitlement | 이 권리와 연결된 판매된 권리 기록의 Sys_id입니다. 판매된 제품 [sn_install_base_sold_product] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlements.start_date | 연결된 권리 기록의 시작 날짜 필드 값입니다. 데이터 유형: 문자열 |
| entitlements.state | 권리 기록의 상태입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| entitlements.sys_id | 권리 기록의 Sys_id입니다. 권리 [service_entitlement] 테이블에 있습니다. 데이터 유형: 문자열 |
| 오류 | 발생한 오류에 대해 설명합니다. 데이터 유형: 객체 오류 응답의 예:
|
| 오류.상세 정보 | 엔드포인트 호출이 실패한 이유에 대한 자세한 정보입니다. 데이터 유형: 문자열 |
| error.message | 개략적으로 오류를 설명하는 메시지입니다. 데이터 유형: 문자열 |
| hasMore | 반환할 권리 기록이 더 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 부울 |
| 상태 | 엔드포인트 호출의 상태입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 |
| sysparm_limit | 매개변수가 sysparm_limit 엔드포인트 호출에서 전달된 경우에는 전달된 값이 포함되고, 그렇지 않으면 기본값이 포함됩니다. 데이터 유형: 숫자 |
| sysparm_offset | 매개변수가 sysparm_offset 엔드포인트 호출에서 전달된 경우에는 전달된 값이 포함되고, 그렇지 않으면 기본값이 포함됩니다. 데이터 유형: 숫자 |
cURL 요청
다음 코드 예제에서는 특정 계정에 대한 사용 권한을 반환하는 방법을 보여 줍니다.
curl "https://instance.service-now.com/api/sn_ent_verify/verifyentitlements?account=9e2fd2ee11b43110f877366201dea674" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
반환 결과:
{
"result": {
"sysparm_offset": "0",
"sysparm_limit": "10",
"has_more": "false",
"entitlements": [
{
"sys_id": "38374bf251e27110f877bf82d3ddf30a",
"entitlement_name": "test ent",
"account": "9e2fd2ee11b43110f877366201dea674",
"consumer": null,
"household": null,
"contract": "0e1747f251e27110f877bf82d3ddf31c",
"service_contract_line": "da278fb251e27110f877bf82d3ddf3b7",
"state": "active",
"product_offering": null,
"sold_entitlement": null,
"product": null,
"start_date": "2023-11-21",
"end_date": ""
},
{
"sys_id": "e6ad4e4151723d10f877bf82d3ddf3fb",
"entitlement_name": "tets entitlement",
"account": "9e2fd2ee11b43110f877366201dea674",
"consumer": null,
"household": null,
"contract": "0e1747f251e27110f877bf82d3ddf31c",
"service_contract_line": "e79dce4151723d10f877bf82d3ddf31d",
"state": "active",
"product_offering": null,
"sold_entitlement": null,
"product": null,
"start_date": "2023-11-21",
"end_date": ""
}
],
"status": "success"
}
}
cURL 요청
다음 코드 예제에서는 특정 계정 및 서비스 계약 줄에 대한 권리를 반환하는 방법을 보여 줍니다.
curl "https://instance.service-now.com/api/sn_ent_verify/verifyentitlements?service_contract_line=e79dce4151723d10f877bf82d3ddf31d&account=9e2fd2ee11b43110f877366201dea674" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
반환 결과:
{
"result": {
"sysparm_offset": "0",
"sysparm_limit": "10",
"has_more": "false",
"entitlements": [
{
"sys_id": "e6ad4e4151723d10f877bf82d3ddf3fb",
"entitlement_name": "test entitlement",
"account": "9e2fd2ee11b43110f877366201dea674",
"consumer": null,
"household": null,
"contract": "0e1747f251e27110f877bf82d3ddf31c",
"service_contract_line": "e79dce4151723d10f877bf82d3ddf31d",
"state": "active",
"product_offering": null,
"sold_entitlement": null,
"product": null,
"start_date": "2023-11-21",
"end_date": ""
}
],
"status": "success"
}
}
cURL 요청
다음 코드 예제에서는 오류 응답을 보여 줍니다.
curl "https://instance.service-now.com/api/sn_ent_verify/verifyentitlements?service_contract_line=e79dce4151723d10f877bf82d3ddf31d" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
반환 결과:
{
"error": {
"detail": "At least one of Account or Consumer parameter is mandatory.",
"message": "At least one of Account or Consumer parameter is mandatory."
},
"status": "failure"
}
권리 확인 - /sn_ent_verify/verifyentitlements/getEntitlementCharacteristic/{id}
지정된 권리 특성 기록 및 최신 사용 기록의 상세 정보를 반환합니다.
특성에 대한 최신 사용량 기록은 기간 시작 날짜가 현재 날짜보다 작거나 같고 기간 종료 날짜가 현재 날짜보다 크거나 같은 기록으로 정의됩니다.
URL 형식
버전이 지정된 URL: / api/sn_ent_verify/v1/verifyentitlements/getEntitlementCharacteristic/{id}
기본 URL: / api/sn_ent_verify/verifyentitlements/getEntitlementCharacteristic/{id}
지원되는 요청 매개변수
| 이름 | 설명 |
|---|---|
| api_version | 옵션입니다. 액세스할 엔드포인트의 버전입니다. 예를 들면 v1 또는 v2입니다. 최신 버전이 아닌 엔드포인트 버전을 사용하려면 이 값만 지정합니다. 데이터 유형: 문자열 |
| ID | 반환할 권리 특성 기록의 Sys_id입니다. 권리 특성 [sn_pss_core_entitlement_characteristic] 테이블에 있습니다. 데이터 유형: 문자열 |
| 이름 | 설명 |
|---|---|
| display_value | 연결된 필드 값, 표시 값 또는 둘 다를 반환할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
데이터 유형: 문자열 기본값: false |
| 이름 | 설명 |
|---|---|
| 없음 |
헤더
다음 요청 및 응답 헤더는 이 HTTP 작업에만 적용되거나 이 작업에 고유한 방식으로 적용됩니다. REST API에서 사용되는 일반 헤더 목록은 지원되는 REST API 헤더를 참조하세요.
| 헤더 | 설명 |
|---|---|
| 수용 | 응답 본문의 데이터 형식입니다. 지원되는 유형은 application/json 또는 application/xml입니다. 기본값: application/json |
| 헤더 | 설명 |
|---|---|
| 없음 |
상태 코드
다음 상태 코드는 이 HTTP 작업에 적용됩니다. REST API에서 사용할 수 있는 상태 코드 목록은 REST API HTTP 응답 코드를 참조하세요.
| 상태 코드 | 설명 |
|---|---|
| 200 | 성공입니다. 요청이 성공적으로 처리되었습니다. |
| 403 | 금지되었습니다. 사용자에게 지정된 기록에 대한 액세스 권한이 없습니다. |
| 404 | 찾을 수 없습니다. 요청한 항목을 찾을 수 없습니다. |
| 500 | 내부 서버 오류입니다. 요청을 처리하는 동안 예기치 않은 오류가 발생했습니다. 응답에는 오류에 대한 추가 정보가 포함되어 있습니다. |
응답 본문 매개변수(JSON 또는 XML)
| 이름 | 설명 |
|---|---|
| 특성 | 연결된 권리 특성 기록의 Sys_id입니다. 특성 [sn_prd_pm_characteristic] 테이블에 있습니다. 데이터 유형: 문자열 |
| characteristic_option | 연결된 특성 옵션 기록의 Sys_id입니다. 특성 옵션 [sn_prd_pm_characteristic_option] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlement_usage | 지정된 권리 특성 기록과 연결된 권리 사용 기록에 대한 상세 정보입니다. 데이터 유형: 객체 배열 |
| entitlement_usage.entitlement_characteristic | 연결된 권리 특성 기록의 Sys_id입니다. 권리 특성 [sn_pss_core_entitlement_characteristic] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlement_usage.period_end | 권리 사용 기록의 기간 종료 필드 값입니다. 이 값은 이 권리에 대한 사용량 추적이 종료되는 날짜입니다. 데이터 유형: 문자열 |
| entitlement_usage.period_start | 권리 사용 기록의 기간 시작 필드 값입니다. 이 값은 이 권리에 대해 사용 추적이 시작되는 날짜입니다. 데이터 유형: 문자열 |
| entitlement_usage.sys_id | 반환된 권리 사용 기록의 시스템 ID입니다. 권리 사용 [sn_pss_core_entitlement_usage] 테이블에 있습니다. 데이터 유형: 문자열 |
| entitlement_usage.total_units | 구매한 총 단위 수입니다. 권리 사용 기록의 총 단위 필드에 있습니다. 데이터 유형: 문자열 |
| entitlement_usage.used_units | 사용된 단위 수입니다. 권리 사용 기록의 사용된 단위 필드에 있습니다. 데이터 유형: 문자열 |
| sys_id | 권리 특성 기록의 시스템 ID입니다. 권리 특성 [sn_pss_core_entitlement_characteristic] 테이블에 있습니다. 데이터 유형: 문자열 |
| 유형 | 권리 특성 기록의 유형 필드 값입니다. 가능한 값:
데이터 유형: 문자열 |
| 값 | 특성을 부여하는 범위. 일부 특성의 경우 적용 범위는 특성 옵션 테이블에 정의됩니다. 그러나 특성 옵션 테이블에 정의된 범위가 없는 경우에는 매개변수에 범위 정보를 전달할 수 있습니다 value . 특성 옵션은 다음의 특성 유형에 대해서만 정의됩니다.
예를 들어, 특성이 "교체 횟수"이고 해당 범위가 특성 옵션 테이블에 정의되어 있지 않은 경우 이 매개변수에서 "10", "20"과 같은 범위를 지정할 수 있습니다. 주:
이 매개변수에는 특성에 대한 최종 범위 값이 포함됩니다. 특성 옵션 테이블에 정보가 있는 경우 이 매개변수로 전파됩니다. 데이터 유형: 문자열 |
cURL 요청
다음 코드 예제에서는 모든 기본값을 사용하여 이 끝점을 호출하는 방법을 보여 줍니다.
curl "https://instance.servicenow.com/api/sn_ent_verify/verifyentitlements/getEntitlementCharacteristic/3c817faa43823110341605ed0bb8f23a" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
반환 결과:
{
"result": {
"sys_id": "3c817faa43823110341605ed0bb8f23a",
"characteristic": "b73177aa43823110341605ed0bb8f246",
"type": "coverage",
"characteristic_option": "ff617baa43823110341605ed0bb8f266",
"value": "Minor parts",
"entitlement_usage": [
{
"sys_id": "03e3224d51b23d10f877bf82d3ddf310",
"period_start": "2022-12-12",
"period_end": "2025-12-12",
"entitlement_characteristic": "3c817faa43823110341605ed0bb8f23a",
"total_units": "10",
"used_units": "5"
}
]
}
}
cURL 요청
다음 코드 예제에서는 이 끝점을 호출하고 모든 표시 값을 반환하는 방법을 보여 줍니다.
curl "https://instance.servicenow.com/api/sn_ent_verify/verifyentitlements/getEntitlementCharacteristic/3c817faa43823110341605ed0bb8f23a?display_value=all" \
--request GET \
--header "Accept:application/json" \
--user "username":"password"
반환 결과:
{
"result": {
"sys_id": {
"label": "Sys ID",
"value": "3c817faa43823110341605ed0bb8f23a",
"displayValue": "3c817faa43823110341605ed0bb8f23a",
"type": "GUID"
},
"characteristic": {
"name": "characteristic",
"label": "Characteristic",
"value": "b73177aa43823110341605ed0bb8f246",
"display_value": "Repair parts covered",
"type": "reference"
},
"type": {
"name": "type",
"label": "Type",
"value": "coverage",
"display_value": "Coverage",
"type": "string"
},
"characteristic_option": {
"name": "characteristic_option",
"label": "Characteristic option",
"value": "ff617baa43823110341605ed0bb8f266",
"display_value": "Minor parts",
"type": "reference"
},
"value": {
"name": "value",
"label": "Value",
"value": "Minor parts",
"display_value": "Minor parts",
"type": "string"
},
"entitlement_usage": [
{
"sys_id": {
"label": "Sys ID",
"value": "03e3224d51b23d10f877bf82d3ddf310",
"displayValue": "03e3224d51b23d10f877bf82d3ddf310",
"type": "GUID"
},
"period_start": {
"name": "period_start",
"label": "Period start",
"value": "2022-12-12",
"display_value": "2022-12-12",
"type": "glide_date"
},
"period_end": {
"name": "period_end",
"label": "Period end",
"value": "2025-12-12",
"display_value": "2025-12-12",
"type": "glide_date"
},
"entitlement_characteristic": {
"name": "entitlement_characteristic",
"label": "Entitlement characteristic",
"value": "3c817faa43823110341605ed0bb8f23a",
"display_value": "Repair parts covered",
"type": "reference"
},
"total_units": {
"name": "total_units",
"label": "Total units",
"value": "10",
"display_value": "10",
"type": "string"
},
"used_units": {
"name": "used_units",
"label": "Used units",
"value": "5",
"display_value": "5",
"type": "string"
}
}
]
}
}