SubmitCruiseTransaction

The SubmitCruiseTransaction method provides users a way to access cruise transactions on the host. SubmitCruiseTransaction takes a Host Access Profile (HAP). The Transactions parameter cannot be null. Within the Transactions parameter, a filter can be included. The SubmitCruise request and response follows the same format as MultiSubmitXml.

Requests sent via the SubmitCruiseTransaction may require a cruise correlation token that identifies transactions within the cruise system. If a cruise transaction returns a correlation token, that token should be used in the next request. If no correlation token is returned, then no correlation token is required in the next request. Correlation tokens should not be cached or retained. For information on which transactions require a correlation token, see Correlation Token.

The XML request cannot be null, and the root element must be one of the following transactions:

CruiseAdditionalInfo_1_0

CruisePaymentRules_1_0

CruiseAvailability_1_0

CruisePreliminaryPricing_1_0

CruiseCabinAvailability_1_0

CruisePricing_1_0

CruiseCabinHold_1_0

CruiseSegmentModify_1_0

CruiseCabinRelease_1_0

CruiseSellSegment_1_1

CruiseMakePayment_1_0

CruiseVendorSearch_1_0

CruiseMakePayment_1_0_1

CruiseVerifyAndOptions_1_0

CruiseNewTransportation_1_0

 

Any transaction not listed above that is used with SubmitCruiseTransaction is rejected with a SOAP client fault. If the CruiseCabinHold request fails, meaning that a <TransactionErrorCode> element is returned as the first child element, no correlation token is returned.

Note: To indicate special characters in a request or response, refer to the Special Characters Table.

Multiple Cruise Requests

Multiple cruise requests are processed in the same order in which they are submitted. Multiple cruise requests and filters may be submitted if all requests are one of the following:  CruiseAdditionalInfo_1_0, CruiseAvailability_1_0, CruiseCabinAvailability_1_0, and CruiseVendorSearch_1_0. If any request not from this list is submitted in a multiple request call, the entire call will fail, and no data will be submitted to the Apollo or Galileo core.

To submit multiple cruise requests and filters, use the format illustrated in the SOAP request below.

SOAP

The following is a sample SOAP request and response. The placeholders shown need to be replaced with actual values. Refer to the overview of samples for a list of cruise samples.

Request

POST /XmlSelect/XmlSelect.asmx HTTP/1.1

Host: testws.galileo.com

Content-Type: text/xml; charset=utf-8

Content-Length: length

SOAPAction: "http://webservices.galileo.com/Cruise/SubmitCruiseTransaction"

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

  <soap:Body>

    <SubmitCruiseTransaction xmlns="http://webservices.galileo.com">

      <Profile>string</Profile>

      <CorrelationToken>string</CorrelationToken>

      <Transactions>

        <Requests xmlns="http://ns.galileo.com">

          <Request>

            <Transaction>xml</Transaction>

            <Filter>xml</Filter>

          </Request>

          <Request>

            <Transaction>xml</Transaction>

            <Filter>xml</Filter>

          </Request>

        </Requests>

      </Transactions>

    </SubmitCruiseTransaction>

  </soap:Body>

</soap:Envelope>

Response

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

 

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

  <soap:Body>

    <SubmitCruiseTransactionResponse xmlns="http://webservices.galileo.com">

      <Response>

        <Responses xmlns="http://ns.galileo.com">

          <Response>xml</Response>

        </Responses>

      </Response>

      <CorrelationToken>string</CorrelationToken>

    </SubmitCruiseTransactionResponse>

  </soap:Body>

</soap:Envelope>