CPQ 재구성 API
CPQ 재구성 API는 CPQ 서비스를 헤드리스로 호출하여 견적 번들을 재구성합니다.
CPQ 재구성 API는 CPQ 서비스를 헤드리스로 호출하는 사용자 지정 Salesforce API입니다. RFQ와 달리 이 API는 기존 견적 번들을 재구성하는 데 사용됩니다.
필수 구성요소
런타임 클라이언트 토큰은 Salesforce의 관리자 사용자 지정 설정 페이지에서 설정해야 합니다. 토큰에는 URL과 CPQ 일치하는 원본이 포함되어야 하며, 해당 출처에는 후행 슬래시(/) 문자가 포함될 수 없습니다.
런타임 구성 URL은 관리자 사용자 지정 설정 페이지에서도 설정해야 합니다. 대부분의 경우 이는 동일한 페이지의 관리 URL과 일치해야 합니다.
Salesforce 설정에서 보안으로 이동한 다음 원격 사이트 설정으로 이동합니다. 도메인을 URL로 하는 CPQ 새 원격 사이트를 추가합니다.
API 상세 정보
엔드포인트: /services/apexrest/LGK/cpq-quote-lines/reconfigure
메서드: application/json을 받아서 반환합니다.
PATCH: 이 메서드는 현재 configurationId 와 configurableQuoteLineId의 두 필드만 지원합니다.
응답: 견적(SBQQ__Q__c) 기록입니다.
요청 예:
{
"configurationId":"86ec190e-cba8-4b1d-a2dc-ba47714a22b5",
"configurableQuoteLineId":"a137d00000977oWAAQ"
}
응답 예:
{
"attributes": {
"type": "SBQQ__Quote__c",
"url": "/services/data/v56.0/sobjects/SBQQ__Quote__c/a0zR0000003f3GLIAY"
},
"Name": "Q-00090",
"Id": "a0zR0000003f3GLIAY",
"SBQQ__LineItemCount__c": 4,
"SBQQ__LineItems__r": {
"totalSize": 4,
"done": true,
"records": [
{
"attributes": {
"type": "SBQQ__QuoteLine__c",
"url": "/services/data/v56.0/sobjects/SBQQ__QuoteLine__c/a0vR0000005LPRxIAO"
},
"SBQQ__Quote__c": "a0zR0000003f3GLIAY",
"Id": "a0vR0000005LPRxIAO",
"Name": "QL-0000122",
"SBQQ__ProductName__c": "LGK Machine"
},
{
"attributes": {
"type": "SBQQ__QuoteLine__c",
"url": "/services/data/v56.0/sobjects/SBQQ__QuoteLine__c/a0vR0000005LPRyIAO"
},
"SBQQ__Quote__c": "a0zR0000003f3GLIAY",
"Id": "a0vR0000005LPRyIAO",
"Name": "QL-0000123",
"SBQQ__ProductName__c": "Analytics Software"
},
{
"attributes": {
"type": "SBQQ__QuoteLine__c",
"url": "/services/data/v56.0/sobjects/SBQQ__QuoteLine__c/a0vR0000005LPS2IAO"
},
"SBQQ__Quote__c": "a0zR0000003f3GLIAY",
"Id": "a0vR0000005LPS2IAO",
"Name": "QL-0000124",
"SBQQ__ProductName__c": "Extended Warranty"
},
{
"attributes": {
"type": "SBQQ__QuoteLine__c",
"url": "/services/data/v56.0/sobjects/SBQQ__QuoteLine__c/a0vR0000005LPS3IAO"
},
"SBQQ__Quote__c": "a0zR0000003f3GLIAY",
"Id": "a0vR0000005LPS3IAO",
"Name": "QL-0000125",
"SBQQ__ProductName__c": "Scanner"
}
]
},
"SBQQ__Type__c": "Quote"
}
요청은 Apex를 통해 직접 할 수 있습니다. 인수는 REST API에서 사용되는 필드와 동일한 Map <String,Object> 입니다. 예:
Map<String, Object> requestBody = new Map<String, Object>{
'configurableQuoteLineId' => '01t8a000005hldvAAA',
'configurationId' => '79a3ffdd-7dd0-41f6-8700-4bd7506407c7'
};
String result = LGK.CpqReconfigureApiController.reconfigure(requestBody);
응답은 REST API의 응답과 유사한 따옴표 객체를 나타내는 JSON 형식의 문자열입니다.
사용자 지정 필드 매핑
Salesforce의 견적 라인 객체에 있는 필드의 이름이 일치하면 제품의 확장 정보나 가격 책정 정보에서 사용자 지정 값을 쓸 수 있습니다 CPQ .