Air Policy Update
Supply the universal profile ID of the account that has the air policy to be updated and the Air Policy ID of the Air Policy you wish to update.
Sample Air Policy Update request data
xmlns:v1="http://www.travelport.com/schema/policy/admin/ air /v1"
xmlns:v11="http://www.travelport.com/schema/policy/admin/common/v1"
<v1:performCRUDRQ>
<v1:BasePolicyRequestHeader accountId="749538" requestCategory="Update" requestorId="DaveS" source="Web"/>
<v1:AirPolicyRequestProfile policyId="100611">
<v11:Profile>
<v11:Name>SBAirCreateTest3</v11:Name>
<v11:Summary>Update Test Air Policy for Sandbox documentation</v11:Summary>
</v11:Profile>
<v1:AirlineCriteria>
<v1:ExcludedAirlines>
<v1:Airline airlineCode="VX" directFlightAllowedInd="true" action="Add">
<v1:BookingDate endDate="2099-12-31" startDate="2016-10-18"/>
<v1:TravelDate endDate="2099-12-31" startDate="2016-10-18"/>
<v1:FlightRange from="4000" to="8000"/>
<v1:Locations>
<v1:DepartLocation>
<v1:Continent>NOAMRC</v1:Continent>
</v1:DepartLocation>
<v1:ArrivalLocation>
<v11:Location>
<v11:Worldwide>WORLDW</v11:Worldwide>
</v11:Location>
</v1:ArrivalLocation>
<v1:ConnectionLocation>
<v1:GlobalArea>AREA1</v1:GlobalArea>
</v1:ConnectionLocation>
</v1:Locations>
</v1:Airline>
</v1:ExcludedAirlines>
<v1:DisplayOnlyAirlines>
<v1:AirlineDisplayOnlyPref action="Delete" airlineCode="DL">
<v1:Id>105237</v1:Id>
</v1:AirlineDisplayOnlyPref>
</v1:DisplayOnlyAirlines>
<v1:PreferredAirlines>
<v1:Airline action="Update" airlineCode="QF" directFlightAllowedInd="true" superPreferredInd="false">
<v1:Id>105239</v1:Id>
<v1:BookingDate endDate="2099-12-31" startDate="2016-01-18"/>
<v1:TravelDate endDate="2099-12-31" startDate="2016-01-18"/>
<v1:FlightRange from="4000" to="8000"/>
<v1:Locations>
<v1:DepartLocation>
<v11:Location>
<v11:Worldwide>WORLDW</v11:Worldwide>
</v11:Location>
</v1:DepartLocation>
<v1:ArrivalLocation>
<v11:Location>
<v11:Worldwide>WORLDW</v11:Worldwide>
</v11:Location>
</v1:ArrivalLocation>
<v1:ConnectionLocation>
<v11:Location>
<v11:Worldwide>WORLDW</v11:Worldwide>
</v11:Location>
</v1:ConnectionLocation>
</v1:Locations>
</v1:Airline>
</v1:PreferredAirlines>
</v1:AirlineCriteria>
<v1:PolicyOptions>
<v1:CabinClassPolicy>
<v1:MaxDomestic cabinClassInPolicy="PremiumEconomy">
<v1:LongerFlights allowedInd="true" cabinClass="Business" minFlightTime="07:00"/>
</v1:MaxDomestic>
<v1:MaxIntl cabinClassInPolicy="Economy">
<v1:LongerFlights allowedInd="false" cabinClass="PremiumEconomy" minFlightTime="11:00"/>
</v1:MaxIntl>
</v1:CabinClassPolicy>
<v1:AdvancePurchase domestic="7" intl="14"/>
<v1:InOutPolicy tripCategory="Domestic">
<v1:LRFare applyInd="true" departWindow="70"/>
<v1:AirFareLimit applyInd="true" currency="600"/>
<v1:UseClips applyInd="false"/>
<v1:MarkAllFares applyInd="false"/>
<v1:DOLowestFareOpt applyInd="false"/>
<v1:MarkLowestFares applyInd="false"/>
<v11:ExclusionOptionsAir dOLowestFareOptInd="false" displayOnlyInPolicyOption="false" excludeFareHigherCabinClassInd="true"/>
</v1:InOutPolicy>
<v1:InOutPolicy tripCategory="International">
<v1:LRFare applyInd="true" departWindow="90"/>
<v1:AirFareLimit applyInd="true" currency="1000"/>
<v1:UseClips applyInd="false"/>
<v1:MarkAllFares applyInd="true"/>
<v1:DOLowestFareOpt applyInd="false"/>
<v1:MarkLowestFares applyInd="false"/>
<v11:ExclusionOptionsAir dOLowestFareOptInd="false" displayOnlyInPolicyOption="false" excludeFareHigherCabinClassInd="true"/>
</v1:InOutPolicy>
</v1:PolicyOptions>
<v1:ClipAmountOptions>
<v1:PreferredNonRefClip domestic="111" intl="333"/>
<v1:RefundableClip domestic="200" intl="400"/>
<v1:InPolicyFareRange>
<v1:Intl applyRangeTo="PREFERRED" indicator="PERCENTAGE" value="10"/>
<v1:Domestic applyRangeTo="ALL" indicator="AMOUNT" value="100"/>
</v1:InPolicyFareRange>
<v1:AdditionTravelTime maxDomestic="03:00" maxIntl="06:00"/>
</v1:ClipAmountOptions>
<v11:PolicyCompliance>
<v11:Message id="101" weightage="14"/>
<v11:Message id="102" weightage="16"/>
<v11:Message id="103" weightage="18"/>
<v11:Message id="104" weightage="20"/>
<v11:Message id="105" weightage="22"/>
</v11:PolicyCompliance>
</v1:AirPolicyRequestProfile>
</v1:performCRUDRQ>
The following elements are supplied in an Update request:
performCRUDRQ / BasePolicyRequestHeader (requestCategory = Update)
AirPolicyRequestProfile – wrapper element for a single set of Air Policy data
attribute: policyId - id within the Policy DB of this particular policy
Profile - wrapper element for Policy profile data
Name – name of this air policy
Summary – user defined summary describing the purpose / application of this air policy
AirlineCriteria – wrapper element for all configured airline criteria (ExcludedAirlines / DisplayOnlyAirlines / PreferredAirlines)
ExcludedAirlines – wrapper element for excluded airline configurations
DisplayOnlyAirlines – wrapper element for display only airline configurations
PreferredAirlines – wrapper element for preferred airline configurations
Airline – wrapper element for a specific airline configuration under the ExcludedAirlines / PreferredAirlines tags
attribute: action – action to be taken on this particular criteria (Add / Update / Delete)
attribute: airlineCode – two character airline code to which this configuration applies
attribute: directFlightAllowedInd – used to indicate if direct and non-stop flights between the departure and arrival geographies are covered by this configuration
attribute: superPreferredInd - used to indicate if this carrier is a Super preferred carrier (not used for ExcludedAirlines)
AirlineDisplayOnlyPref – wrapper element for a specific airline configuration under the DisplayOnlyAirlines tag
attribute: action – action to be taken on this particular criteria (Add / Update / Delete)
attribute: airlineCode – two character airline code to which this configuration applies
attribute: directFlightAllowedInd – used to indicate if direct and non-stop flights between the departure and arrival geographies are covered by this configuration
attribute: preferredAllowedInd – used to indicate if this vendor should be flagged as preferred
Id – id within the Policy DB of the specific vendor criteria being updated or deleted (not specified on an Add).
BookingDate – date range within which the booking must take place for this configuration to apply
attribute: endDate – date before which booking must take place for this configuration to apply
attribute: startDate – date after which booking must take place for this configuration to apply
TravelDate – date range within which the first leg of travel must take place for this configuration to apply
attribute: endDate – date before which first departure must take place for this configuration to apply
attribute: startDate – date after which first departure must take place for this configuration to apply
FlightRange – range of flight numbers to which this configuration applies (single flight numbers will have the same from / to values)
attribute: from – start of flight number range
attribute: to – end of flight number range
Locations – wrapper element for the departure / arrival / connecting geographies for this configuration to apply
DepartLocation - wrapper element for the departure geography for this configuration to apply
ArrivalLocation - wrapper element for the arrival geography for this configuration to apply
ConnectionLocation - wrapper element for the connecting geography for this configuration to apply
Location – wrapper element for the specific location geography to be applied – child elements of this tag can be Worldwide / GlobalArea / Continent / Region / CountryLocation / StateLocation / CityAirportLocation depending on the chosen geographical configuration
Worldwide – specify WORLDW if this location item applies anywhere in the world
GlobalArea - specify the 5 character area code to which this location item applies (AREA1 / AREA2 / AREA3)
Continent – specify the 6 character continent code to which this location item applies (see list)
Region - specify the 6 character region code to which this location item applies (see list)
CountryLocation - specify the 2 character country code to which this location item applies
StateLocation – location to which this configuration applies
attribute: country - 2 character country code to which this location item applies
attribute: state - 2 character state code to which this location item applies
CityAirportLocation – 3 character airport or city location to which this location item applies
PolicyOptions – wrapper for Policy Option data
CabinClassPolicy – wrapper for Cabin Class Policy Data
MaxDomestic – wrapper for maximum domestic cabin class settings
attribute: cabinClassInPolicy – highest cabin class in which travel can be in policy for domestic travel (Economy / PremiumEconomy / Business / First)
MaxIntl – wrapper for maximum international cabin class settings
attribute: cabinClassInPolicy – highest cabin class in which travel can be in policy for international travel (Economy / PremiumEconomy / Business / First)
LongerFlights – setting used to determine if a higher cabin class is allowed on longer flights
attribute: allowedInd – true / false indicator – are higher cabin classes allowed on longer flights
attribute: cabinClass - highest cabin class in which travel can be in policy for domestic travel on longer flights (Economy / PremiumEconomy / Business / First)
attribute: minFlightTime – length of time the shortest available flight must exceed for the longer flight exception to apply
AdvancePurchase – number of days before the first leg of a journey that a booking must be made to remain in policy
attribute: domestic – number of days ahead of time domestic bookings should be made
attribute: intl – number of days ahead of time international bookings should be made
InOutPolicy – wrapper element for in and out of policy settings.
attribute: tripCategory – type of trip Domestic / International
LRFare – use lowest recommended fare (LRF) processing to determine policy
attribute: applyInd – true / false, use this logic or not
attribute: departWindow – time window to use for LRF logic – number of minutes before and after the preferred departure time that for the window used for processing
AirFareLimit – use air fare limit processing to determine policy
attribute: applyInd – true / false, use this logic or not
attribute: currency – maximum amount of local currency that a fare can be and still be in policy
UseClips – use clip processing to determine policy – additional clip setting appear in a separate tag
attribute: applyInd – true / false, use this logic or not
MarkAllFares – use mark all fares processing to determine policy
attribute: applyInd – true / false, use this logic or not
MarkLowestFares – use mark lowest fares processing to determine policy
attribute: applyInd – true / false, use this logic or not
DOLowestFareOpt – use the logic to display only the lowest fare per flight option on the first leg of a journey to determine policy
attribute: applyInd – true / false, use this logic or not
ExclusionOptionsAir - used to indicate if options should be displayed to user or removed from response
attribute: dOLowestFareOptInd – indicator used to have items other than the lowest fare option removed from the response during search evaluation
attribute: displayOnlyInPolicyOption – indicator used to have out of policy items removed from the response during search evaluation
attribute: excludeFareHigherCabinClassInd – indicator used to have items that exceed the maximum cabin class removed from the response during search evaluation
ClipAmountOptions – wrapper element for clip amount options.
PreferredNonRefClip – amount to subtract from non-refundable fares for preferred airlines when comparing to non-refundable fares for non-preferred airlines when determining in policy options.
attribute: domestic – clip amount for domestic itineraries
attribute: intl – clip amount for international itineraries
RefundableClip - amount to subtract from refundable fares for preferred airlines when comparing to refundable fares for non-preferred airlines when determining in policy options.
attribute: domestic – clip amount for domestic itineraries
attribute: intl – clip amount for international itineraries
InPolicyFareRange – wrapper element for policy range options.
Domestic – settings for domestic itineraries
attribute: applyRangeTo – type of carrier to which range applies (PREFERRED / ALL)
attribute: indicator – type of range to be used (AMOUNT / PERCENTAGE)
attribute: value – actual amount or percentage used to determine fare range
Intl – settings for international itineraries
attribute: applyRangeTo – type of carrier to which range applies (PREFERRED / ALL)
attribute: indicator – type of range to be used (AMOUNT / PERCENTAGE)
attribute: value - actual amount or percentage used to determine fare range
AdditionTravelTime – amount of time by which flights can exceed the shortest flight time and still be used to determine policy.
attribute: maxDomestic – maximum time in hours / minutes for domestic itineraries
attribute: maxIntl – maximum time in hours / minutes for international itineraries
PolicyCompliance – wrapper element for policy compliance settings
Message – individual message id and value assigned to that id
attribute: id – compliance message ID (101/102/103/104/105/106 – see list for details)
attribute weightage – percentage overall compliance will be reduced by if itinerary fails to comply with this configuration.
Sample Air Policy Update response data
xmlns:ns2= http://www.travelport.com/schema/policy/admin/air/v1
xmlns:ns4= http://www.travelport.com/schema/policy/admin/common/v1
<ns2:performCRUDRS>
<ns2:BasePolicyResponseHeader accountId="749538" requestorId="DaveS"/>
<ns4:AdditionalMessage iD="100611" name="SBAirCreateTest3" status="Processed">
<ns4:Element iD="0" name="AirlineCriteria" status="Processed">
<ns4:SubElement iD="105237" name="AirlineCriteria" status="Processed">DisplayOnly Vendor:PolicyId:100611-Action:52-ProductType:A-VendorCriteriaId:105237</ns4:SubElement>
<ns4:SubElement iD="105247" name="AirlineCriteria" status="Processed">Exclude Vendor:PolicyId:100611-Action:51-ProductType:A-VendorCriteriaId:105247-VendorCode:VX-PptySource:null-VendorRank:Excluded-BookingStartDate:Tue Oct 18 00:00:00 GMT-00:00 2016-BookingEndDate:Thu Dec 31 00:00:00 GMT-00:00 2099-TravelStartDate:Tue Oct 18 00:00:00 GMT-00:00 2016-TravelEndDate:Thu Dec 31 00:00:00 GMT-00:00 2099-Origin:NOAMRC-Destn:WORLDW-Connection:AREA1-FlightRangeStart:4000-FlightRangeEnd:8000-DirectFlightAllowed:true</ns4:SubElement>
<ns4:SubElement iD="105239" name="AirlineCriteria" status="Processed">Preferred Vendor:PolicyId:100611-Action:53-ProductType:A-VendorCriteriaId:105239</ns4:SubElement>
</ns4:Element>
<ns4:Element iD="0" name="Profile" status="Processed">
<ns4:SubElement iD="100611" name="Profile" status="Processed">Success</ns4:SubElement>
</ns4:Element>
<ns4:Element iD="0" name="PolicyCompliance" status="Processed">
<ns4:SubElement iD="101" name="PolicyCompliance" status="Processed">-PolicyId:100611-ComplianceId:100-Weightage:14</ns4:SubElement>
****** Additional Data Removed For Readability *******
****** PolicyCompliance SubElements repeat for each message ID *******
</ns4:Element>
<ns4:Element iD="0" name="PolicyOptions" status="Processed">
<ns4:SubElement iD="0" name="AIR_DEPART_TIMEWINDOW_DOMESTIC" status="Processed">70</ns4:SubElement>
****** Additional Data Removed For Readability *******
****** PolicyOptions SubElements repeat for each property *******
</ns4:Element>
</ns4:AdditionalMessage>
</ns2:performCRUDRS>
</soapenv:Body>
</soapenv:Envelope>
The following elements are found in an Update response:
performCRUDRS / BasePolicyResponseHeader
AdditionalMessage – overall status of the response
attribute: iD – id within the Policy DB of this particular policy
attribute: name – name used when updating this specific policy
attribute: status – will be either “Processed” or “Failure”
Element – wrapper for a grouping of response items
attribute: iD – “0” / not used on an Air Policy Update
attribute: name – name of the wrapper tag to which this response element applies (AirlineCriteria / Profile / PolicyCompliance / PolicyOptions)
attribute: status – overall status of this particular grouping - will be either “Processed” or “Failure”
SubElement – individual response for an item within the grouping
attribute: iD – usage depends on the type of SubElement being returned. AirlineCriteria = the ID within the Policy DB for this specific airline criteria. Profile = the ID within the Policy DB for this specific Policy. PolicyCompliance = reflection of the message id from the request. PolicyProperty = zero, individual policy properties are identified through their names.
attribute: name – name of the wrapper tag to which this response element applies (AirlineCriteria / Profile / PolicyCompliance) except for SubElements under the PolicyOptions wrapper which will contain the individual policy properties names.
attribute: status – overall status of this particular element - will be either “Processed” or “Failure”
MaxIntl – wrapper element for maximum international cabin class settings
attribute: cabinClassInPolicy – highest cabin class in which travel can be in policy for international travel (Economy / PremiumEconomy / Business / First)
LongerFlights – setting used to determine if a higher cabin class is allowed on longer flights
attribute: allowedInd – true / false indicator – are higher cabin classes allowed on longer flights
attribute: cabinClass - highest cabin class in which travel can be in policy for domestic travel on longer flights (Economy / PremiumEconomy / Business / First)
attribute: minFlightTime – length of time the shortest available flight must exceed for the longer flight exception to apply
AdvancePurchase – number of days before the first leg of a journey that a booking must be made to remain in policy
attribute: domestic – number of days ahead of time domestic bookings should be made
attribute: intl – number of days ahead of time international bookings should be made
InOutPolicy – wrapper element for in and out of policy settings.
attribute: tripCategory – type of trip Domestic / International
LRFare – use lowest recommended fare (LRF) processing to determine policy
attribute: applyInd – true / false, use this logic or not
attribute: departWindow – time window to use for LRF logic – number of minutes before and after the preferred departure time that for the window used for processing
AirFareLimit – use air fare limit processing to determine policy
attribute: applyInd – true / false, use this logic or not
attribute: currency – maximum amount of local currency that a fare can be and still be in policy
UseClips – use clip processing to determine policy – additional clip setting appear in a separate tag
attribute: applyInd – true / false, use this logic or not
MarkAllFares – use mark all fares processing to determine policy
attribute: applyInd – true / false, use this logic or not
MarkLowestFares – use mark lowest fares processing to determine policy
attribute: applyInd – true / false, use this logic or not
DOLowestFareOpt – use the logic to display only the lowest fare per flight option on the first leg of a journey to determine policy
attribute: applyInd – true / false, use this logic or not
ExclusionOptionsAir - used to indicate if options should be displayed to user or removed from response
attribute: dOLowestFareOptInd – indicator used to have items other than the lowest fare option removed from the response during search evaluation
attribute: displayOnlyInPolicyOption – indicator used to have out of policy items removed from the response during search evaluation
attribute: excludeFareHigherCabinClassInd – indicator used to have items that exceed the maximum cabin class removed from the response during search evaluation
ClipAmountOptions – wrapper element for clip amount options.
PreferredNonRefClip – amount to subtract from non-refundable fares for preferred airlines when comparing to non-refundable fares for non-preferred airlines when determining in policy options.
attribute: domestic – clip amount for domestic itineraries
attribute: intl – clip amount for international itineraries
RefundableClip - amount to subtract from refundable fares for preferred airlines when comparing to refundable fares for non-preferred airlines when determining in policy options.
attribute: domestic – clip amount for domestic itineraries
attribute: intl – clip amount for international itineraries
InPolicyFareRange – wrapper element for policy range options.
Domestic – settings for domestic itineraries
attribute: applyRangeTo – type of carrier to which range applies (PREFERRED / ALL)
attribute: indicator – type of range to be used (AMOUNT / PERCENTAGE)
attribute: value – actual amount or percentage used to determine fare range
Intl – settings for international itineraries
attribute: applyRangeTo – type of carrier to which range applies (PREFERRED / ALL)
attribute: indicator – type of range to be used (AMOUNT / PERCENTAGE)
attribute: value - actual amount or percentage used to determine fare range
AdditionTravelTime – amount of time by which flights can exceed the shortest flight time and still be used to determine policy.
attribute: maxDomestic – maximum time in hours / minutes for domestic itineraries
attribute: maxIntl – maximum time in hours / minutes for international itineraries
PolicyCompliance – wrapper element for policy compliance settings
Message – individual message id and value assigned to that id
attribute: id – compliance message ID (101/102/103/104/105/106 – see list for details)
attribute weightage – percentage overall compliance will be reduced by if itinerary fails to comply with this configuration.
Considerations for an Air Policy Update
The web service update process consists of replacing the existing data with the data included in the request.
At a minimum an Air Policy update request must contain the AirPolicyRequestProfile tag with the id of the Air Policy to be updated. All the sections underneath this tag are optional (Profile / AirlineCriteria / PolicyOptions / ClipAmountOptions / PolicyCompliance), only the specified sections will be updated.
Within the AirlineCriteria section the ExcludedAirlines / DisplayOnlyAirlines / PreferredAirlines sections are optional. If an individual section is not included in the request no airline criteria will be updated for it, if the outer AirlineCriteria element is specified but no inner tags are specified the section will be ignored.
If you do not receive a positive reflection of an item that you are updating it did not get updated. In certain cases a section may not get processed and also may not get reflected back to the caller.
In the Update Response the value returned in the SubElement fields depends on the type of Element being returned.
Profile returns either Success or an error message.
PolicyOptions returns the value associated with the specific property name.
PolicyCompliance returns the id of the Air policy in the policy DB, the message id of the specific message that was processed and the value assigned to that message id:
Example: PolicyId:100607-ComplianceId:101-Weightage:10
AirlineCriteria returns the id of the Air policy in the policy DB, the id of the specific vendor criteria in the policy DB and reflects back the rest of the data that was configured for that vendor such as vendor code, booking / travel dates, depart / arrival / connection geographies, and/or flight ranges.
Example:
Exclude Vendor:PolicyId:0-Action:51-ProductType:A-VendorCriteriaId:105247-VendorCode:VX-PptySource:null-VendorRank:Excluded-BookingStartDate:Tue Oct 18 00:00:00 GMT-00:00 2016-BookingEndDate:Thu Dec 31 00:00:00 GMT-00:00 2099-TravelStartDate:Tue Oct 18 00:00:00 GMT-00:00 2016-TravelEndDate:Thu Dec 31 00:00:00 GMT-00:00 2099-Origin:NOAMRC-Destn:WORLDW-Connection:AREA1-FlightRangeStart:4000-FlightRangeEnd:8000-DirectFlightAllowed:true
When updating AirlineCriteria do not specify flight range unless you are defining one.
A booking or travel start date can be a past date on an update request but only if it doesnt change the original value.
On the Airline / AirlineDisplayOnlyPref tags the directFlightAllowedInd attribute is used to indicate if direct and non-stop flights between the departure and arrival geographies are covered by this configuration. If this indicator is set any configured connecting geography will be ignored for flights that go directly from the departure geography to the arrival geography.
The DepartLocation, ArrivalLocation, and ConnectionLocation tags all use the Location element which can have any of the following child elements depending on the chosen geographical configuration:
Worldwide / GlobalArea / Continent / Region / CountryLocation / StateLocation / CityAirportLocation
These are examples of each of the child tags:
<ns4:Worldwide>WORLDW</ns4:Worldwide>
<ns2:Continent>NOAMRC</ns2:Continent>
<ns2:GlobalArea>AREA1</ns2:GlobalArea>
<ns2:Region>NOAMER</ns2:Region>
<ns4:CountryLocation>DE</ns4:CountryLocation>
<ns4:StateLocation country="US" state="CO"/>
<ns4:CityAirportLocation>LHR</ns4:CityAirportLocation>
Under the InOutPolicy tag multiple policy settings (LRFare / AirFareLimit / UseClips / MarkAllFares / MarkLowestFares / DOLowestFareOpt) can be set to true (see Policy Admin User Guides for more details on how these interact with each other).
In the Policy Compliance section any messages that are not specified in the update request will be reset to the default value of 10%.
When updating the PolicyOptions / ClipAmountOptions tags, if an item is specified it will be overwritten, otherwise it will retain is original value.
When updating the VendorCriteria tags the possible actions are add, update and delete. When using the update and delete actions the id of the VendorCriteria to be updated is required. On a delete only the airlineCode is required, on an update a complete set of valid fields must be supplied (flight range optional).
If the supplied policy name already exists under the requested account you will receive an error – providing the supplied policy id is correct other sections of the update request may process if they are formatted correctly.
<ns4:AdditionalMessage iD="100611" name=" SBAirCreateTest3" status="Failure">
<ns4:Element iD="0" name="Profile|Airline Criteria" status="Failure">
<ns4:SubElement iD="200" name="Profile|Airline Criteria" status="Failure">The Policy already exists</ns4:SubElement>
</ns4:Element>
<ns4:Element iD="0" name="PolicyOptions" status="Processed">
<ns4:SubElement iD="0" name="AIR_DEPART_TIMEWINDOW_DOMESTIC" status="Processed">60</ns4:SubElement>
<ns4:SubElement iD="0" name="AIR_DEPART_TIMEWINDOW_INTL" status="Processed">90</ns4:SubElement>
Removed for brevity….
</ns4:Element>
</ns4:AdditionalMessage>
If the supplied policy ID is incorrect you will get the following error:
<ns4:AdditionalMessage iD="1100611" name="SBAirCreateTest3" status="Failure">
<ns4:Element iD="0" name="Profile|Airline Criteria" status="Failure">
<ns4:SubElement iD="201" name="Profile|Airline Criteria" status="Failure">Policy not found or do not exist for this request</ns4:SubElement>
</ns4:Element>
</ns4:AdditionalMessage>
If the data within an element is invalid but other sections you submitted were able to process you will get something similar to the following message where the overall status is failure even though the policy was created:
<ns4:AdditionalMessage iD="100615" name="SBAirCreateTest3" status="Failure">
<ns4:Element iD="0" name="PolicyCompliance" status="Failure">
<ns4:SubElement iD="3102" name="PolicyCompliance" status="Failure">No Record Found, Message Id:1101</ns4:SubElement>
</ns4:Element>
<ns4:Element iD="0" name="Profile" status="Processed">
<ns4:SubElement iD="100615" name="Profile" status="Processed">Success</ns4:SubElement>
</ns4:Element>
<ns4:Element iD="0" name="PolicyOptions" status="Processed">
<ns4:SubElement iD="0" name="AIR_DEPART_TIMEWINDOW_DOMESTIC" status="Processed">60</ns4:SubElement>
<ns4:SubElement iD="0" name="AIR_DEPART_TIMEWINDOW_INTL" status="Processed">90</ns4:SubElement>
Removed for brevity….
</ns4:Element>
</ns4:AdditionalMessage>
Sample Request and Response
See the Downloads page to download a zip file containing the following XML files.
Sample request:
AirPolicyUpdateRQ.xml
Sample response:
AirPolicyUpdateRS.xml