WSO2: Update roles of user via web services - wso2-api-manager

I've install a WSO2 API-M and try to update the roles of a user.
My request body:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd">
<soap:Header/>
<soap:Body>
<xsd:addRemoveRolesOfUser>
<!--Optional:-->
<xsd:userName>tom</xsd:userName>
<!--Zero or more repetitions:-->
<xsd:newRoles>internal/subscriber</xsd:newRoles>
<!--Zero or more repetitions:-->
<xsd:deletedRoles>admin</xsd:deletedRoles>
</xsd:addRemoveRolesOfUser>
</soap:Body>
</soap:Envelope>
My response:
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<soapenv:Fault>
<soapenv:Code>
<soapenv:Value>soapenv:Receiver</soapenv:Value>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text xml:lang="en-US">Error occurred while getting
database type from DB connection</soapenv:Text>
</soapenv:Reason>
<soapenv:Detail />
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
I try to only delete role is okay, but fail to add new roles.
Is there any one know what's happened?
2016.08.23 updated:
The request of updateRolesOfUser:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd">
<soap:Header/>
<soap:Body>
<xsd:updateRolesOfUser>
<!--Optional:-->
<xsd:userName>?</xsd:userName>
<!--Zero or more repetitions:-->
<xsd:newRoleList>?</xsd:newRoleList>
</xsd:updateRolesOfUser>
</soap:Body>
</soap:Envelope>
Thanks
Tom

This is how you should send the requests to successfully add/update/delete user roles.
To add and delete roles in the same response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://org.apache.axis2/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:addRemoveRolesOfUser>
<!--Optional:-->
<xsd:userName>Tom</xsd:userName>
<!--Zero or more repetitions:-->
<xsd:newRoles>admin</xsd:newRoles>
<!--Zero or more repetitions:-->
<xsd:deletedRoles>test</xsd:deletedRoles>
</xsd:addRemoveRolesOfUser>
</soapenv:Body>
</soapenv:Envelope>
To only add new roles (remove deletedRoles element):
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://org.apache.axis2/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:addRemoveRolesOfUser>
<!--Optional:-->
<xsd:userName>Tom</xsd:userName>
<!--Zero or more repetitions:-->
<xsd:newRoles>admin</xsd:newRoles>
</xsd:addRemoveRolesOfUser>
</soapenv:Body>
</soapenv:Envelope>
To update new roles:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://org.apache.axis2/xsd">
<soapenv:Header/>
<soapenv:Body>
<xsd:updateRolesOfUser>
<!--Optional:-->
<xsd:userName>Tom</xsd:userName>
<!--Zero or more repetitions:-->
<xsd:newRoleList>test</xsd:newRoleList>
<xsd:newRoleList>admin</xsd:newRoleList>
<xsd:newRoleList>Internal/subscriber</xsd:newRoleList>
</xsd:updateRolesOfUser>
</soapenv:Body>
</soapenv:Envelope>
Note: If it says zero or more repetitions, remove the entire element if you are not passing any value

Related

Sabre Refresh Session - OTA_PingRQ response says Invalid version

Attempting to refresh a session, but getting Error Invalid version. I know the session is good because I can take the same BinarySecurityToken and close the session.
Request
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader">
<From>
<PartyId type="urn:x12.org:IO5:01">Foo</PartyId>
</From>
<To>
<PartyId type="urn:x12.org:IO5:01">Sabre webservices.havail.sabre.com</PartyId>
</To>
<CPAId>***</CPAId>
<ConversationId>1564099200</ConversationId>
<Service type="sabreXML">OTA_PingRQ</Service>
<Action>OTA_PingRQ</Action>
<MessageData>
<MessageId>1564099200</MessageId>
<Timestamp>2019-07-26T00:00:000</Timestamp>
<TimeToLive>2019-07-26T00:00:000</TimeToLive>
</MessageData>
</MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/12/utility">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESC!ICESMSLB\/RES.LB!-2991842063860894070!1557562!0</wsse:BinarySecurityToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<OTA_PingRQ TimeStamp="2019-07-26T16:36:58-6:00" Version="1.0.0">
<EchoData>refreshed</EchoData>
</OTA_PingRQ>
</soapenv:Body>
</soapenv:Envelope>
I have attempted changing the version number, but no dice.
Response
<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="URI">Sabre webservices.havail.sabre.com</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">Foo</eb:PartyId>
</eb:To>
<eb:CPAId>****</eb:CPAId>
<eb:ConversationId>1564099200</eb:ConversationId>
<eb:Service eb:type="sabreXML">Session</eb:Service>
<eb:Action>OTA_PingRS</eb:Action>
<eb:MessageData>
<eb:MessageId>8222820814369030622</eb:MessageId>
<eb:Timestamp>2019-07-26T22:37:16</eb:Timestamp>
<eb:RefToMessageId>1564099200</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<BinarySecurityToken valueType="String" EncodingType="Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESC!ICESMSLB\/RES.LB!-2991842063860894070!1557562!0</BinarySecurityToken>
</Security>
</Header>
<Body>
<OTA_PingRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0.0">
<Errors>
<Error Type="VER">Invalid version</Error>
</Errors>
</OTA_PingRS>
</Body>
</Envelope>
Please advise.
I think it refers to the version on the header, try adding version to the "MessageHeader" Element:
MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader" version="1.0"
use this:
<soapenv:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
....
</soapenv:Envelope>
or
<OTA_PingRQ xmlns="http://www.opentravel.org/OTA/2003/05" TimeStamp="2020-03-17T04:14:00+08:00" Version="1.0.0">
<EchoData>refreshed</EchoData>
</OTA_PingRQ>

How can I get free baggage allowance with OTA_AirLowFareSearchLLS method?

I searching flights with OTA_AirLowFareSearchLLS method but he does not return free baggage allowance. How can I get infromation about free baggage allowance of itinerary segment before booking?
I can't use BFM because it was not purchased.
My OTA_AirLowFareSearchLLS RQ:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader">
<From>
<PartyId>WebServiceClient</PartyId>
</From>
<To>
<PartyId>WebServiceSupplier</PartyId>
</To>
<CPAId>4PFI</CPAId>
<ConversationId>SWS-Test-4PFI</ConversationId>
<Service>OTA_AirLowFareSearchLLS</Service>
<Action>OTA_AirLowFareSearchLLSRQ</Action>
<MessageData>
<MessageId>9314594d-6c40-406b-9029-b887b13906b6</MessageId>
<Timestamp>2017-09-01T13:58:32Z</Timestamp>
</MessageData>
</MessageHeader>
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext">
<BinarySecurityToken>
Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/ACPCRTD!ICESMSLB\/CRT.LB!-3237262604010011257!783483!0
</BinarySecurityToken>
</Security>
</soap:Header>
<soap:Body>
<OTA_AirLowFareSearchRQ 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">
<OriginDestinationInformation RPH="1">
<FlightSegment ConnectionInd="O" DepartureDateTime="2017-10-20T00:00:00" ResBookDesigCode="Y">
<DestinationLocation LocationCode="MSQ"/>
<OriginLocation LocationCode="IEV"/>
</FlightSegment>
</OriginDestinationInformation>
<OriginDestinationInformation RPH="2">
<FlightSegment ConnectionInd="O" DepartureDateTime="2017-10-22T00:00:00" ResBookDesigCode="Y">
<DestinationLocation LocationCode="IEV"/>
<OriginLocation LocationCode="MSQ"/>
</FlightSegment>
</OriginDestinationInformation>
<PriceRequestInformation>
<OptionalQualifiers>
<PricingQualifiers CurrencyCode="UAH">
<PassengerType Code="ADT" Quantity="1"/>
</PricingQualifiers>
</OptionalQualifiers>
</PriceRequestInformation>
</OTA_AirLowFareSearchRQ>
</soap:Body>
</soap:Envelope>
This is an old service which does not return such information, BFM is actually its replacement. If you don't plan on getting that, then you can get the baggage allowance at the time of pricing the itinerary.

Sabre API - Hotel Booking Request - CVC Validation Error

I am creating following Sabre Hotel booking request to book a hotel room but getting CVC validation error.
My question is that by looking the below response, it is clear that we have to set CVC code somewhere in the Request but Sabre is not providing any option or variable to set this in the XML request.
How can i set this CVC value to resolve the issue?
Request:
<OTA_HotelResRQ 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.2.0">
<Hotel>
<BasicPropertyInfo RPH="2" />
<Guarantee Type="GDPST">
<CC_Info>
<PaymentCard Code="AX" ExpireDate="2012-12" Number="1234567890" />
<PersonName>
<Surname>TEST</Surname>
</PersonName>
</CC_Info>
</Guarantee>
<RoomType NumberOfUnits="1" />
<SpecialPrefs>
<WrittenConfirmation Ind="true" />
</SpecialPrefs>
</Hotel>
</OTA_HotelResRQ>
and after hitting the above request, getting following response string-
Response:
<?xml version="1.0" encoding="UTF-8"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="urn:x12.org:IO5:01">ws</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="urn:x12.org:IO5:01">from</eb:PartyId>
</eb:To>
<eb:ConversationId>SabreConversationMyFlightSearch</eb:ConversationId>
<eb:Service eb:type="sabreXML" />
<eb:Action>OTA_HotelResLLSRS</eb:Action>
<eb:MessageData>
<eb:MessageId>4300704404584800230</eb:MessageId>
<eb:Timestamp>2017-08-23T11:14:18</eb:Timestamp>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESC!ICESMSLB\/RES.LB!-3240444724556748409!1141634!0</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client.Validation</faultcode>
<faultstring>ERR.SWS.CLIENT.VALIDATION_FAILED</faultstring>
<detail>
<stl:ApplicationResults xmlns:stl="http://services.sabre.com/STL/v01" status="NotProcessed">
<stl:Error timeStamp="2017-08-23T06:14:18-05:00" type="Validation">
<stl:SystemSpecificResults>
<stl:Message>cvc-datatype-valid.1.2.1: '' is not a valid value for 'integer'.</stl:Message>
<stl:ShortText>ERR.SWS.CLIENT.VALIDATION_FAILED</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>

SABRE / Acces to CreateTokenRQ

I have a problem when try to access CreateTokenRQ , the system reply me whit this error
AuthorizationException: errors.authorization.USG_AUTHORIZATION_FAILED
I use the seme parameter that use in SOAP api CreateSession..
This is sample log:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<MessageHeader d3p1:version="1.0" xmlns:d3p1="http://www.ebxml.org/namespaces/messageHeader" xmlns="http://www.ebxml.org/namespaces/messageHeader">
<d3p1:From>
<d3p1:PartyId>tnsfrom#tns.it</d3p1:PartyId>
</d3p1:From>
<d3p1:To>
<d3p1:PartyId>tnsto#tns.it</d3p1:PartyId>
</d3p1:To>
<d3p1:CPAId>9WDA</d3p1:CPAId>
<d3p1:ConversationId>PROFILE</d3p1:ConversationId>
<d3p1:Service>TokenCreateRQ</d3p1:Service>
<d3p1:Action>TokenCreateRQ</d3p1:Action>
<d3p1:MessageData>
<d3p1:MessageId>mid:20170131-180233-0067+01:007261#tns.it</d3p1:MessageId>
<d3p1:Timestamp>2017-01-31T17:02:33Z</d3p1:Timestamp>
</d3p1:MessageData>
</MessageHeader>
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext">
<UsernameToken>
<Username>USER</Username>
<Password>PASS</Password>
<Organization xmlns="">PCC</Organization>
<Domain xmlns="">DEFAULT</Domain>
</UsernameToken>
</Security>
</soap:Header>
<soap:Body>
<TokenCreateRQ Version="1.0" xmlns="http://webservices.sabre.com"/>
</soap:Body>
</soap:Envelope>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="URI">tnsto#tns.it</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">tnsfrom#tns.it</eb:PartyId>
</eb:To>
<eb:CPAId>9WDA</eb:CPAId>
<eb:ConversationId>PROFILE</eb:ConversationId>
<eb:Service eb:type="sabreXML">Session</eb:Service>
<eb:Action>TokenCreateRS</eb:Action>
<eb:MessageData>
<eb:MessageId>5872564613545250881</eb:MessageId>
<eb:Timestamp>2017-01-31T17:02:34</eb:Timestamp>
<eb:RefToMessageId>mid:20170131-180233-0067+01:007261#tns.it</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">T1RLAQLXzOPymarKW6vpSao+D9NVBvlbrBCF19eTo+4IS4u5yQxX3WI/AACwNl4HnFuLzWcfmUdC3MwzQfHXkHiyJUWVvYVGkM7BTH1Zk8QPN5gtUNaWLkghZY3W4zUgz77ECyxXU9sq0QC8wIRfEHyy0Wa4Gyu+F+21wVJNIwul7zAv4A0Nb+H+EhwvplAesYlVYLIsBl1G3V7sPYY6JYp8ndv468hKdzO/aR9EH19+mRxAZ5wcubk1RzQ+TSAA7ebVYg/dp9Ol8fpgzvzTkyOCnY3XuJzAdWkJLtI*</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<sws:TokenCreateRS xmlns:sws="http://webservices.sabre.com" Version="1.0.0">
<sws:Success/>
</sws:TokenCreateRS>
</soap-env:Body>
</soap-env:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<MessageHeader xmlns="http://www.ebxml.org/namespaces/messageHeader">
<From>
<PartyId>tnsfrom#tns.it</PartyId>
</From>
<To>
<PartyId>tnsto#tns.it</PartyId>
</To>
<CPAId>9WDA</CPAId>
<ConversationId>PROFILE</ConversationId>
<Service>TravelItineraryRead</Service>
<Action>TravelItineraryReadRQ</Action>
<MessageData>
<MessageId>mid:20170131-175750-6558+01:007261#tns.it</MessageId>
<Timestamp>2017-01-31T16:57:50Z</Timestamp>
</MessageData>
</MessageHeader>
<Security xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext">
<BinarySecurityToken>T1RLAQJImqTy22oj2jew4n0kmkJNcubdhhCo94FnWiXB3eCaPy8XKW4LAACwQPhiertpCYnV0Pnmp59O10SK93/haq3stjgk6LKovw8hLLAtptGCQMtPxN/8NJVTkite1lqWHaSkOPZdFlr8C9CkRAcKpfiDnYeC9HEuSI3IyEH54ImqhM3PIH3eD5wLo9mcDdAObuzJNJoU/k435X/+H5khEW9syHBy01kE3L23/eW1k/qdfAodQy2DDuFh2JK2tCY/s5SfcbGt9UxMBKJnrR1FbT73D4QgQYRyuEU*</BinarySecurityToken>
</Security>
</soap:Header>
<soap:Body>
<TravelItineraryReadRQ Version="3.4.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10">
<MessagingDetails>
<SubjectAreas>
<SubjectArea>FULL</SubjectArea>
</SubjectAreas>
</MessagingDetails>
<UniqueID ID="DMVNRR"/>
<ReturnOptions UnmaskCreditCard="true"/>
</TravelItineraryReadRQ>
</soap:Body>
</soap:Envelope>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="URI">tnsto#tns.it</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">tnsfrom#tns.it</eb:PartyId>
</eb:To>
<eb:CPAId>9WDA</eb:CPAId>
<eb:ConversationId>PROFILE</eb:ConversationId>
<eb:Service>TravelItineraryRead</eb:Service>
<eb:Action>ErrorRS</eb:Action>
<eb:MessageData>
<eb:MessageId>5839433610707910872</eb:MessageId>
<eb:Timestamp>2017-01-31T16:57:50</eb:Timestamp>
<eb:RefToMessageId>mid:20170131-175750-6558+01:007261#tns.it</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">T1RLAQJImqTy22oj2jew4n0kmkJNcubdhhCo94FnWiXB3eCaPy8XKW4LAACwQPhiertpCYnV0Pnmp59O10SK93/haq3stjgk6LKovw8hLLAtptGCQMtPxN/8NJVTkite1lqWHaSkOPZdFlr8C9CkRAcKpfiDnYeC9HEuSI3IyEH54ImqhM3PIH3eD5wLo9mcDdAObuzJNJoU/k435X/+H5khEW9syHBy01kE3L23/eW1k/qdfAodQy2DDuFh2JK2tCY/s5SfcbGt9UxMBKJnrR1FbT73D4QgQYRyuEU*</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client.AuthorizationFailed</faultcode>
<faultstring>Authorization failed</faultstring>
<detail>
<StackTrace>com.sabre.universalservices.base.security.AuthorizationException: errors.authorization.USG_AUTHORIZATION_FAILED</StackTrace>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>
The TravelItineraryReadRQ service you are looking to consume is not yet enabled for Access Tokens. This for the moment is limited to SessionToken. This is specified in the Authentication header.
https://developer.sabre.com/docs/read/soap_apis/management/itinerary/Get_Itinerary

verify format error in HotelRateDescriptionRQ

i'm getting verify format error while searching hotel rate description using sabre soap api. my request is following:
<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="2"/>
<HotelSearchCriteria>
<Criterion>
<HotelRef HotelCode="0039013"/>
</Criterion>
</HotelSearchCriteria>
<TimeSpan End="04-04" Start="04-01"/>
</AvailRequestSegment>
</HotelRateDescriptionRQ>
and the response is following:
<?xml version="1.0" encoding="UTF-8"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"><soap-env:Header><eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1"><eb:From><eb:PartyId eb:type="urn:x12.org:IO5:01">sws3-crt.cert.sabre.com</eb:PartyId></eb:From><eb:To><eb:PartyId eb:type="urn:x12.org:IO5:01">7973</eb:PartyId></eb:To><eb:CPAId>OH88</eb:CPAId><eb:ConversationId>y4JiO-0PTQn5fm5SRTPz-1459075755</eb:ConversationId><eb:Service eb:type="sabreXML"/><eb:Action>HotelRateDescriptionLLSRS</eb:Action><eb:MessageData><eb:MessageId>41ade332-41f5-4d1e-ad9a-c9b8d91a8817#176</eb:MessageId><eb:Timestamp>2016-03-27T10:50:32</eb:Timestamp></eb:MessageData></eb:MessageHeader><wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext"><wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/CERTG!ICESMSLB\/CRT.LB!-3422351642743054173!493550!0</wsse:BinarySecurityToken></wsse:Security></soap-env:Header><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="2016-03-27T05:50:32-05: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></soap-env:Envelope>
so what am i doing wrong here?
look I can use HotelRateDescriptionLLSRQ using RPH atribute.
RPH atribute can be found by HotelPropertyDescriptionLLSRQ.
<soap-env:Body>
<ns:HotelRateDescriptionRQ ReturnHostCommand="false" Version="2.3.0">
<ns:AvailRequestSegment>
<ns:RatePlanCandidates>
<ns:RatePlanCandidate RPH="001" />
</ns:RatePlanCandidates>
</ns:AvailRequestSegment>
</ns:HotelRateDescriptionRQ>
</soap-env:Body>

Resources