Last edit by: hillrider
Here are some more hidden features of the ITA software.
The extensions to the itasoftware routing language are accessed by postpending commands after a '/'. There's a wide set of commands available, but there's no description of them available on the ITA web site. Unfortunately, each command applies only to one part of the trip, so they must usually be entered in each box.
EXCLUDE SPECIFIC AIRLINES
Command is "-airlines XX ..."
Ex: prohibit jetBlue or Delta
from: BOS ::/ -airlines B6 DL
to: LAX ::/ -airlines B6 DL
LIMIT TO SPECIFIC AIRLINES
Command is "airlines XX ..."
Ex: consider only jetBlue or Delta
from: BOS ::/ airlines B6 DL
to: LAX ::/ airlines B6 DL
LIMIT TO A SINGLE ALLIANCE
Command is "alliance star-alliance|oneworld|skyteam"
Ex: oneworld carriers only
from: BOS ::/ alliance oneworld
to: LAX ::/ alliance oneworld
EXCLUDE CODESHARES
Command is "-codeshare"
Ex: prohibit jetBlue or Delta
from: BOS ::/ -codeshare
to: LAX ::/ -codeshare
LIMIT DURATION OF ITINERARY, IN MINUTES
Command is "maxdur XXX"
Ex: no more than 5hrs for each part of trip
from: BOS ::/ maxdur 300
to: LAX ::/ maxdur 300
EXCLUDE OVERNIGHT STOPS, AIRPORT CHANGES, REDEYES, PROPELLER PLANES, TRAINS, HELICOPTERS, ANY KIND OF SURFACE TRAVEL
Commands are "-overnight", "-change", "-redeye", "-prop", "-train", "-helicopter", "-surface"
Ex: no overnight stops, no airport changes, no redeyes, no propeller planes
from: BOS ::/ -overnight, -change, -redeye, -prop
to: LAX ::/ -overnight, -change, -redeye, -prop
SET MINIMUM OR MAXIMUM TIME FOR CONNECTIONS, IN MINUTES
Commands are "minconnect XX", "maxconnect XX"
Ex: no less than one hour, no more than two hour connections
from: BOS ::/ minconnect 60, maxconnect 120
to: LAX ::/ minconnect 60, maxconnect 120
EXTRA CONNECTION TIME
Command is "padconnect XX"
Ex: require at least 20 minutes more than airline specified minimum connection time
from: BOS ::/ padconnect 20
to: LAX ::/ padconnect 20
PUTTING LOTS OF THINGS TOGETHER
Separate with commas.
Ex:
from: BOS :: UA UA / f bc=l|bc=y, -redeye, -prop
to: LAX :: UA+ / f ua.bos+lax.yup, padconnect 20, -overnight
The extensions to the itasoftware routing language are accessed by postpending commands after a '/'. There's a wide set of commands available, but there's no description of them available on the ITA web site. Unfortunately, each command applies only to one part of the trip, so they must usually be entered in each box.
EXCLUDE SPECIFIC AIRLINES
Command is "-airlines XX ..."
Ex: prohibit jetBlue or Delta
from: BOS ::/ -airlines B6 DL
to: LAX ::/ -airlines B6 DL
LIMIT TO SPECIFIC AIRLINES
Command is "airlines XX ..."
Ex: consider only jetBlue or Delta
from: BOS ::/ airlines B6 DL
to: LAX ::/ airlines B6 DL
LIMIT TO A SINGLE ALLIANCE
Command is "alliance star-alliance|oneworld|skyteam"
Ex: oneworld carriers only
from: BOS ::/ alliance oneworld
to: LAX ::/ alliance oneworld
EXCLUDE CODESHARES
Command is "-codeshare"
Ex: prohibit jetBlue or Delta
from: BOS ::/ -codeshare
to: LAX ::/ -codeshare
LIMIT DURATION OF ITINERARY, IN MINUTES
Command is "maxdur XXX"
Ex: no more than 5hrs for each part of trip
from: BOS ::/ maxdur 300
to: LAX ::/ maxdur 300
EXCLUDE OVERNIGHT STOPS, AIRPORT CHANGES, REDEYES, PROPELLER PLANES, TRAINS, HELICOPTERS, ANY KIND OF SURFACE TRAVEL
Commands are "-overnight", "-change", "-redeye", "-prop", "-train", "-helicopter", "-surface"
Ex: no overnight stops, no airport changes, no redeyes, no propeller planes
from: BOS ::/ -overnight, -change, -redeye, -prop
to: LAX ::/ -overnight, -change, -redeye, -prop
SET MINIMUM OR MAXIMUM TIME FOR CONNECTIONS, IN MINUTES
Commands are "minconnect XX", "maxconnect XX"
Ex: no less than one hour, no more than two hour connections
from: BOS ::/ minconnect 60, maxconnect 120
to: LAX ::/ minconnect 60, maxconnect 120
EXTRA CONNECTION TIME
Command is "padconnect XX"
Ex: require at least 20 minutes more than airline specified minimum connection time
from: BOS ::/ padconnect 20
to: LAX ::/ padconnect 20
PUTTING LOTS OF THINGS TOGETHER
Separate with commas.
Ex:
from: BOS :: UA UA / f bc=l|bc=y, -redeye, -prop
to: LAX :: UA+ / f ua.bos+lax.yup, padconnect 20, -overnight
TIP: More hidden features of ITA
#16
Join Date: Jun 2003
Location: Bay Area (QSF), CA
Programs: (almost) everything!
Posts: 1,985
LON::/ airlines BD
FRA::/ airlines BD
However, this syntax makes sense if you want to restrict two or more airlines on the route.
LON:: BD
FRA:: BD
is simpler and need less keystrokes.
#17
Join Date: Sep 2005
Location: New York
Programs: AA PLT (Lifetime GLD), Hilton Silver, Marriott Silver, AA Dining VIP
Posts: 596
Please Help
At one point in time, I had a one-line "script" that would allow me to specify the airline and class of service that I wanted, which was great if you needed a specific fare for bonuses (ie: Last winter AA had a huge bonus, but only for specific fares).
Does anyone know what I am talking about and, if so, can you provide it for me.
Many thanks
Does anyone know what I am talking about and, if so, can you provide it for me.
Many thanks
#23
Join Date: Sep 2004
Location: NW OH
Programs: DL PM/KM, AC *G, AS MVP-100K
Posts: 829
#24
Join Date: Aug 2007
Location: Near SEA
Programs: UA MM, AS MVPG75K, Marriott Lifetime Gold
Posts: 7,969
#25
Join Date: Dec 2008
Location: ORD
Programs: AA
Posts: 133
#27
Join Date: Aug 2007
Location: AMS
Programs: KL PFL; BA Gold; A3 Silver; EY Silver; SU Silver
Posts: 2,488
Constraining booking codes
It looks like the '/f bc=Y' constrains by primary booking code of a fare rather than by actual RBD. So it is useless for interline and IATA fares where RBD chart 2 is to be checked.
But the good news is that things like this are combinable in one query: 'XXX:: /f bc=b, f ..yif-'
But the good news is that things like this are combinable in one query: 'XXX:: /f bc=b, f ..yif-'
#28
Join Date: Aug 2007
Location: AMS
Programs: KL PFL; BA Gold; A3 Silver; EY Silver; SU Silver
Posts: 2,488
It looks like the '/f bc=Y' constrains by primary booking code of a fare rather than by actual RBD. So it is useless for interline and IATA fares where RBD chart 2 is to be checked.
But the good news is that things like this are combinable in one query: 'XXX:: /f bc=b, f ..yif-'
But the good news is that things like this are combinable in one query: 'XXX:: /f bc=b, f ..yif-'