ModifyBook

ModifyBook_2_2

The latest version of the ModifyBook request. Similar to the ModifyBook_2_1 version, the difference is only in the ancillary services block from the Book_2_2 request.

Sample container with ancilliary services from the ModifyBook_2_2 request.

                  <avia1:ModifyAncillaryService>
                     <stl:Action>Add</stl:Action>
                     <avia1:AncillaryService>
                        <avia1:ID>-1</avia1:ID>
                        <avia1:Name>VEGETARIAN LUNCH</avia1:Name>
                        <avia1:Group>ML</avia1:Group>
                        <avia1:RFIC>G</avia1:RFIC>
                        <avia1:RFISC>0AR</avia1:RFISC>
                        <avia1:Type>F</avia1:Type>
                        <avia1:TravellerRef>1</avia1:TravellerRef>
                        <avia1:SegmentRef>
                           <stl:Ref>0</stl:Ref>
                        </avia1:SegmentRef>
                        <avia1:Quantity>1</avia1:Quantity>
                        <avia1:EMDType>A</avia1:EMDType>
                     </avia1:AncillaryService>
                  </avia1:ModifyAncillaryService>

ModifyBook_2_1

Similar to the previous version, the only difference is in the flat format of ancillary services from the Book_2_1 request.

Sample container with ancillary services from the ModifyBook_2_1 request.

              <Action>Add</Action>
              <AncillaryService>
                <Name xsi:nil="true"/>
                <Group xsi:nil="true"/>
                <SubGroup xsi:nil="true"/>
                <RFIC>G</RFIC>
                <RFISC>0AI</RFISC>
                <SSRCode xsi:nil="true"/>
                <SSRDescription xsi:nil="true"/>
                <Type>F</Type>
                <TravellerRef>2</TravellerRef>
                <SegmentRef>0</SegmentRef>
                <Quantity>1</Quantity>
              </AncillaryService>

ModifyBook_2_0

Making changes to the booking with the response identical to booking version 2.0 response. It includes the functionality of ModifyBook and AddInformation of earlier versions.

Request

  • BookID - ID of the booking in which you want to make changes. Data type - long.
  • Travelers - information about the travelers that needs to be changed (optional). Data type - array.
  • Travellers.Traveller - information about the traveler that needs to be changed. Data type - array.
  • Travellers.Traveller.Action - action with the traveler that you want to perform. As of 03.09.2015 it is supported only by changing the already existing traveler. Data type - enumeration, possible values:
    • Add
    • Modify
    • Remove
  • Travellers.Traveller.Traveller - new traveler's data to add to a booking. Data type - Traveler.
  • Flight - contains information about the changes in the flight that you want to make to the booking (optional). Data type - array.
  • Flight.Segments - information about actions with flight segments. Data type - array.
  • Flight.Segments.Segment - contains information about changes in one of the flight segments. Data type - array.
  • Segment.Action - action with the segment that you want to execute. As of 03.09.2015, actions are not supported. Data type - enumeration, possible values:
    • Add
    • Modify
    • Remove
  • Segment.SegmentID - segment ID in the flight. Data type - int32.
  • Segment.DepatureAirport - departure airport code. Data type - string.
  • Segment.ArrivalAirport - arrival airport code. Data type - string.
  • Segment.MarketingAirline - code of the airline that provides the flight. Data type - string.
  • Segment.FlightNumber - flight number. Data type - string.
  • Segment.DepatureDateTime - date and time of departure. Data type - date and time in the yyyy-mm-ddthh:mm:ss format.
  • Segment.BookingClassCode - booking class letter. Data type - string.
  • DataItems - contains information about the changes in the content of the booking (optional). Data type - array.
  • DataItems.ModifyDataItem - contains information about changes in one of the blocks of content data. Data type - array.
  • ModifyDataItem.Action - action with the content that it is required to perform. Data type - enumeration, possible values:
    • Add
    • Modify
    • Remove
  • ModifyDataItem.DataItem - contains the actual data on the content. Data type - DataItem.
  • AncillaryServices - contains information about the variable admissions (optional). Data type - array.
  • ModifyAncillaryService - contains information about one of the variable admissions. Data type - array.
  • Action - action with content that you want to perform (Modify is not allowed for ancillary services) The format is similar to other data blocks. Ancillary services with EMDs can be removed from the booking only after voiding their EMD.
  • AncillaryService - ancillary services on which there will be a change in the booking. Data type, format and filling logic, in case of booking, is similar to AncillaryService in the booking request. In case of deletion, only the ID is the required element.
  • CalculatePrice - attribute of necessity of pricing calculation after modification. Data type - bool.
  • PricingOptions - additional booking tariffication options (optional). Data type - array.
  • PricingOptions.FlightID - ID of the flight acquired by the BookID for fare family change. Data type - string.

While adding a new element to the order, the ID of the DataItem should be indicated to be -1. While modifying an existing DataItem, an ID that matches the existing DataItem ID must be used.

Sample
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:avia="http://ws-ibe.com/Avia" xmlns:stl="http://ws-ibe.com/STL" xmlns:avia1="http://websky.travel/Avia" xmlns:stl1="http://websky.travel/STL">
   <soapenv:Header/>
   <soapenv:Body>
      <avia:ModifyBook_2_2>
         <avia:Request>
            <stl:Requisites>
               <stl:AuthToken>token</stl:AuthToken>
            </stl:Requisites>
            <stl:UserID>11111</stl:UserID>
            <stl:RequestType>P</stl:RequestType>
            <stl:RequestBody>
               <avia:BookID>1000163</avia:BookID>
               <avia1:DataItems>
                  <stl:ModifyDataItem>
                     <stl:Action>Add</stl:Action>
                     <stl:DataItem>
                        <stl:ID>-1</stl:ID>
                        <stl:TravellerRef>
                           <stl:Ref>1</stl:Ref>
                        </stl:TravellerRef>
                        <stl:SegmentRef>
                           <stl:Ref>0</stl:Ref>
                        </stl:SegmentRef>
                        <stl:Type>IDDocument</stl:Type>
                        <stl:Document>
                           <stl:Type>AutosetByNumber</stl:Type>
                           <stl:Number>C8W83OOO1</stl:Number>
                           <stl:IssueCountryCode>DE</stl:IssueCountryCode>
                           <stl:ElapsedTime>13.04.2040</stl:ElapsedTime>
                        </stl:Document>
                     </stl:DataItem>
                  </stl:ModifyDataItem>
               </avia1:DataItems>

Response

2.0 version booking.

Sample
<?xml version="1.0"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body>
    <ModifyBook_2_2Response xmlns="http://ws-ibe.com/Avia">
      <ModifyBook_2_2Result xmlns:a="http://ws-ibe.com/STL" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
        <a:RequestID>10000006628</a:RequestID>
        <a:ResponseBody>
          <a:ID>100480</a:ID>
          <a:OwnerID>30320</a:OwnerID>
          <a:DateInfo>
            <a:Created>2017-09-07 17:13:00  03:00</a:Created>
            <a:LastUpdate>2017-09-07 17:14:55  03:00</a:LastUpdate>
          </a:DateInfo>
          <a:PossibleActions>
            <a:Action>Get</a:Action>
            <a:Action>Update</a:Action>
            <a:Action>GetHistory</a:Action>
            <a:Action>Ticket</a:Action>
            <a:Action>Split</a:Action>
            <a:Action>Modify</a:Action>
            <a:Action>Cancel</a:Action>
            <a:Action>GetPNRTerminalView</a:Action>
          </a:PossibleActions>
          <a:Travellers>
            <a:Traveller>
              <a:ID>1</a:ID>
              <a:IDInPNR>2</a:IDInPNR>
              <a:Type>ADT</a:Type>
              <a:NamePrefix>MRS</a:NamePrefix>
              <a:Name>NATALIE</a:Name>
              <a:LastName>BROWN</a:LastName>
              <a:DateOfBirth>11.11.1975</a:DateOfBirth>
              <a:Nationality>DE</a:Nationality>
              <a:Gender>F</a:Gender>
            </a:Traveller>
          </a:Travellers>
          <a:Services>
            <a:Service i:type="a:FlightService">
              <a:ID>0</a:ID>
              <a:SupplierID>ABCDEF</a:SupplierID>
              <a:Status>Booked</a:Status>
              <a:SubStatus/>
              <a:Type>Regular</a:Type>
              <a:DirectionType>OW</a:DirectionType>
              <a:Segments>
                <a:FlightSegment>
                  <a:ID>0</a:ID>
                  <a:DepatureAirport>
                    <a:Code>LHR</a:Code>
                    <a:CityCode>LON</a:CityCode>
                    <a:UTC>1</a:UTC>
                  </a:DepatureAirport>
                  <a:ArrivalAirport>
                    <a:Code>CDG</a:Code>
                    <a:CityCode>PAR</a:CityCode>
                    <a:UTC>2</a:UTC>
                  </a:ArrivalAirport>
                  <a:DepatureDateTime>2017-10-21T07:25:00</a:DepatureDateTime>
                  <a:ArrivalDateTime>2017-10-21T09:40:00</a:ArrivalDateTime>
                  <a:FlightNumber>9513</a:FlightNumber>
                  <a:AircraftType>320</a:AircraftType>
                  <a:OperatingAirline>AY</a:OperatingAirline>
                  <a:MarketingAirline>AY</a:MarketingAirline>
                  <a:ETicket>true</a:ETicket>
                  <a:BookingClassCode>O</a:BookingClassCode>
                  <a:Status>Confirmed</a:Status>
                  <a:StatusCode>HK</a:StatusCode>
                  <a:SupplierRef>ABCCDDEE</a:SupplierRef>
                  <a:RequestedSegment>0</a:RequestedSegment>
                </a:FlightSegment>
              </a:Segments>
            </a:Service>
          </a:Services>
          <a:Price>
            <a:TotalPrice>
              <a:Amount>115</a:Amount>
              <a:Currency>EUR</a:Currency>
            </a:TotalPrice>
            <a:PriceBreakdown>
              <a:PricePart>
                <a:ServiceRef>
                  <a:Ref>0</a:Ref>
                </a:ServiceRef>
                <a:TotalPrice>
                  <a:Amount>115</a:Amount>
                  <a:Currency>EUR</a:Currency>
                </a:TotalPrice>
                <a:ValidatingCompany>AY</a:ValidatingCompany>
                <a:Refundable>NonRefundable</a:Refundable>
                <a:PassengerTypePriceBreakdown>
                  <a:PassengerTypePrice>
                    <a:TravellerRef>
                      <a:Ref>1</a:Ref>
                    </a:TravellerRef>
                    <a:PricingType>ADT</a:PricingType>
                    <a:BaseFare>
                      <a:Amount>29</a:Amount>
                      <a:Currency>GBP</a:Currency>
                    </a:BaseFare>
                    <a:EquiveFare>
                      <a:Amount>100</a:Amount>
                      <a:Currency>EUR</a:Currency>
                    </a:EquiveFare>
                    <a:TotalFare>
                      <a:Amount>115</a:Amount>
                      <a:Currency>EUR</a:Currency>
                    </a:TotalFare>
                    <a:Taxes>
                      <a:Tax>
                        <a:Amount>15</a:Amount>
                        <a:Currency>EUR</a:Currency>
                        <a:TaxCode>GB</a:TaxCode>
                        <a:Type>X</a:Type>
                      </a:Tax>
                    </a:Taxes>
                    <a:Tariffs>
                      <a:Tariff i:type="a:AirTariff">
                        <a:Code>OV2RO</a:Code>
                        <a:Type>Public</a:Type>
                        <a:ClassOfService>Economy</a:ClassOfService>
                        <a:BookingClassCode>O</a:BookingClassCode>
                        <a:SegmentID>0</a:SegmentID>
                        <a:FreeBaggage>
                          <a:Value>1</a:Value>
                          <a:Measure>Pieces</a:Measure>
                        </a:FreeBaggage>
                        <a:FareFamilyCode>PLUS</a:FareFamilyCode>
                      </a:Tariff>
                    </a:Tariffs>
                    <a:FareCalc>Text</a:FareCalc>
                  </a:PassengerTypePrice>
                </a:PassengerTypePriceBreakdown>
              </a:PricePart>
            </a:PriceBreakdown>
          </a:Price>
          <a:DataItems>
            <a:DataItem>
              <a:ID>0</a:ID>
              <a:Type>SourceInfo</a:Type>
              <a:SourceInfo>
                <a:ID>10000</a:ID>
                <a:BookingSupplierAgencyID>AAZZCC</a:BookingSupplierAgencyID>
                <a:TicketingSupplierAgencyID>AAZZCC</a:TicketingSupplierAgencyID>
                <a:Supplier>Amadeus</a:Supplier>
                <a:Environment>TEST</a:Environment>
              </a:SourceInfo>
            </a:DataItem>
            <a:DataItem>
              <a:ID>1</a:ID>
              <a:Type>TL</a:Type>
              <a:TimeLimits>
                <a:EffectiveTimeLimit>2017-09-10 17:13:00  02:00</a:EffectiveTimeLimit>
                <a:PriceTimeLimit>2017-09-10 23:59:00  02:00</a:PriceTimeLimit>
                <a:AgencyTimeLimit>2017-09-07 21:13:29  02:00</a:AgencyTimeLimit>
                <a:AdvancedPurchaseTimeLimit>2017-09-10 17:13:00  02:00</a:AdvancedPurchaseTimeLimit>
              </a:TimeLimits>
            </a:DataItem>
            <a:DataItem>
              <a:ID>2</a:ID>
              <a:Type>ValidatingCompany</a:Type>
              <a:ValidatingCompany>
                <a:Code>AY</a:Code>
              </a:ValidatingCompany>
            </a:DataItem>
            <a:DataItem>
              <a:ID>3</a:ID>
              <a:TravellerRef>
                <a:Ref>1</a:Ref>
              </a:TravellerRef>
              <a:Type>IDDocument</a:Type>
              <a:Document>
                <a:Type>InternationalPassport</a:Type>
                <a:Number>C8W83OOO1</a:Number>
                <a:IssueCountryCode>DE</a:IssueCountryCode>
                <a:ElapsedTime>13.04.2040</a:ElapsedTime>
                <a:AddedAsDOCS>true</a:AddedAsDOCS>
              </a:Document>
            </a:DataItem>
          </a:DataItems>
        </a:ResponseBody>
      </ModifyBook_2_2Result>
    </ModifyBook_2_2Response>
  </s:Body>
</s:Envelope>