Sabre Hotel Тариф Описание Запрос

Я пытаюсь получить описание стоимости отеля с помощью Sabre SOAP API. Но я получаю ошибку, которую я не могу отладить.

Моя полезная нагрузка запроса

<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader">
    <SOAP-ENV:Header>
        <eb:MessageHeader SOAP-ENV:mustUnderstand="0">
            <eb:From>
                <eb:PartyId eb:type="urn:x12.org:IO5:01">from</eb:PartyId>
            </eb:From>
            <eb:To>
                <eb:PartyId eb:type="urn:x12.org:IO5:01">ws</eb:PartyId>
            </eb:To>
            <eb:CPAId>{{CPAID}}</eb:CPAId>
            <eb:ConversationId>pricedrop</eb:ConversationId>
            <eb:Service eb:type="sabreXML"></eb:Service>
            <eb:Action>HotelRateDescriptionLLSRQ</eb:Action>
        </eb:MessageHeader>
        <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
            <wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">
<!--                  Use Security token from Authentication Request  -->
            Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/CERTG!ICESMSLB\/CRT.LB!-3460256494356271327!1683974!0
            </wsse:BinarySecurityToken>
        </wsse:Security>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
        <HotelRateDescriptionRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="2.3.0">
        <AvailRequestSegment>
        <GuestCounts Count="1"/>
        <HotelSearchCriteria>
        <Criterion>
        <HotelRef HotelCode="0017804"/>
        </Criterion>
        </HotelSearchCriteria>
        <RatePlanCandidates>
        <RatePlanCandidate CurrencyCode="USD" DCA_ProductCode="A1B2C3D"/>
        </RatePlanCandidates>
        <TimeSpan End="12-28" Start="12-25"/>
        </AvailRequestSegment>
        </HotelRateDescriptionRQ>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Но я получил ошибку 1VERIFY FORMAT. Ответ приведен ниже.

<soap-env:Body>
        <HotelRateDescriptionRS xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01" Version="2.3.0">
            <stl:ApplicationResults status="NotProcessed">
                <stl:Error type="BusinessLogic" timeStamp="2015-12-11T03:01:21-06:00">
                    <stl:SystemSpecificResults>
                        <stl:Message>1VERIFY FORMAT                                                 </stl:Message>
                        <stl:ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</stl:ShortText>
                    </stl:SystemSpecificResults>
                </stl:Error>
            </stl:ApplicationResults>
        </HotelRateDescriptionRS>
    </soap-env:Body>

Все мои значения в полезной нагрузке запроса кажутся правильными, за исключением DCA_ProductCode, который я не понял. Документация Sabre также мало что объясняет о DCA_ProductCode.

Что может пойти не так в полезной нагрузке моего запроса?

Спасибо


person Gagan    schedule 11.12.2015    source источник


Ответы (1)


Я не уверен, что значение {{CPAID}} элемента CPAId в заголовке мыла является допустимым (если только это не ссылка на переменную или вы каким-то образом ее не замаскировали) - обычно вы отправляете туда свой IPCC.

Во всяком случае, из описания сервиса Hotel Rate Description:

https://developer.sabre.com/docs/read/soap_apis/hotel/search/hotel_rate_description

«Обратите внимание, что независимые функции HRD, i-HRD, содержащиеся в HotelRateDescriptionLLSRQ, недоступны для пользователей по умолчанию. свяжитесь с вашим торговым представителем для получения дополнительной информации».

Кажется, что функциональность должна быть активирована в первую очередь. Вы можете связаться со службой поддержки Sabre Web Services по адресу [email protected] и запросить активацию iHRD.

Вам потребуется указать IPCC и используемую среду веб-сервисов Sabre (CERT/PROD).

person fcarreno    schedule 11.12.2015
comment
fcarreno: Мы заменяем {{CPAID}} на тот, который мы получили от Sabre. Маркер безопасности в вопросе также действителен на момент публикации вопроса. - person Gagan; 14.12.2015
comment
спасибо, Гаган - если вы включите функцию iHRD, вы сможете получить действительный ответ от службы. - person fcarreno; 14.12.2015
comment
Как узнать, включена ли функция iHRD для учетной записи? Учетная запись, которую я сейчас использую, создана моим клиентом. - person Gagan; 15.12.2015
comment
Вы можете попросить своего клиента выполнить команду Sabre HIP* (на экране Sabre турагента). Ответ будет выглядеть примерно так (ищите НЕЗАВИСИМЫЙ HRD и его статус в следующей строке): ...НЕЗАВИСИМЫЙ HRD ВКЛЮЧЕН... Или используйте SabreCommand (сервис SOAP) и сделайте то же самое: developer.sabre.com/docs/read/soap_apis/management/utility/ - person fcarreno; 16.12.2015