Go Back  FlyerTalk Forums > Travel&Dining > Travel Tools
Reload this Page >

ITA-Matrix-PowerTools - Userscript for Orbitz/DL/UA/AA/BA/CZ/IB/LA/LH/LX/TK

Community
Wiki Posts
Search
Old Nov 11, 2014, 10:54 am
FlyerTalk Forums Expert How-Tos and Guides
Last edit by: IAkH
Welcome to the ITA-Matrix-PowerTools
*** About ***
The ITA-Matrix-PowerTools are a user script maintained by fellow flyertalk members to enhance the already powerful Matrix of ITA Software by providing new features and booking links.

Features added to the itinerary details page:
  • convert times into 24h format
  • translation support
  • open fare rules in new window by default
  • price breakdown (base fare, taxes & carrier imposed surcharges)
  • editor mode (adjust cabin prior extraction)
  • multiple handy links (Seatguru, Planefinder, WhereToCredit)
  • new on page features like detailed mileage breakdown*, GCM-Map* and earned frequent flyer miles*
  • create links to various providers (OTAs / airlines / other tools) to try direct booking of your itinerary

Originally Posted by Error: Unable to find class IR6M2QD-k-i for itinRow.
If you see this error, currently you'll need to manually edit your installed script.

See posts from October 1st, 2018 for more information.
*requires background requests

The script may have lots of bugs and comes without warranty of any kind! Not all fares will be bookable or will price correctly in the booking engines. You are responsible for the money you spend - so double check your flights before purchasing AND use your sanity! Read this and the next two posts as an example: click

*** How it works ***
Using pure JavaScript we are "creating" some sort of hook that is periodically checking for page changes while working with the Matrix. As soon as you reload or leave the page the script stops (leaving the page or using the console-version) or starts from the beginning (using the userscript and perfoming a reload). Also this script is only running in these tabs/windows in which you are looking at the Matrix.
As soon as the script detects the itinerary page it reads its content - unless you activated the editor mode. It's parsing all the information found and creates - based on this information - several links to OTAs, airlines and other tools. Since we are able to remove, replace and add content to the page - we make them visible and clickable in a way you choose. By default there are no background requests.

*** How to get it running ***
There are three methods to install the script. All three below run exactly the same underlying script but are listed in order of installation complexity:

Method 1: Browser Extensions
Method 2: As a UserScript
It takes a moment to get it running but after that it will start automatically everytime you visit the Matrix and we will be able to store your settings. You will need to install a script manager.

Warning: Using a script manager and installing user scripts is a potential security risk - We need to mention it here.
Step 1: Install a script manager Step 2: Install the script
See the FAQ of your script manager how to install the script.
  • Through GreasyFork
  • Through OpenUserJS
  • Through GitHub: you should be asked whether you want to install it - make sure your script manager is running.
Method 3: iOS Safari Shortcut

Get the "Add ITA Matrix Powertools" Shortcut

Instructions much be run each time
  • Open ITA Matrix in Safari on your iPhone or iPad
  • Tap on the Share button in the bottom navigation
  • Scroll down through all the actions
  • Select Add ITA Matrix Powertools

Method 4: Console/Debug mode
You need to access the command line of your browser to execute the script. You can use either the regular version or the minified version. Just copy the entire text.

Chrome:
  1. Open Chrome DevTools: developer.chrome.com
  2. Switch to the console tab
  3. Paste the script into the command line: developer.chrome.com
  4. Run it
Firefox:
  1. Open the web console: developer.mozilla.org
  2. Switch to the console tab
  3. Paste the script into the command line: developer.mozilla.org
  4. Run it
Internet Explorer:
  1. Open the web console by pressing F12
  2. Switch to the console tab
  3. Paste the script into the command line - at the very bottom
  4. Run it by pressing the green triangle

*** How to use it ***
Once the script is running you should see a new line above the ITA logo:
Code:
Passengers (1a) Settings (v0.18) (Cabin: Auto)
As long as you see this line, there is no need to reexecute the script. Make sure to get used to the "Settings"-feature -> just click on Settings. Within the settings menu you can configure the script towards your needs/preferences. Enabling/disabling features and/or setting standard editions of providers on the fly. When using a script manager these settings should be stored and automatically load as soon as you visit matrix.itasoftware.com - but the passengers as well as the cabin detection will not be stored!
Your settings are "reloaded" everytime the itinerary details show up! If you want to use other settings, just get back to the flight selection and reselect your flights - the new settings will be used. This belongs to the passengers and cabin detection as well

Passengers:
The passenger count will not be taken from your search results! Use the passenger config on the upper left and make sure they are set before you get to the itinerary details. We had to do it this way because some providers require the age of children. But always make sure to search for the equivalent passenger count. There might be seat availability for one passenger but not for two!

Cabin detection:
You should set the cabin on the upper right to the appropriate main cabin you are looking for. Sometimes you will have economy/business class segments in mainly business/first class itineraries. These mixed itineraries make it hard to autodetect the main cabin - so you can set it manually.

*** Background requests - Privacy issues ***
Some features require to contact other servers. As long as you do not activate any of the autoload features within the settings there won't be any automatic background requests. You will have to initiate them manually. The following list will tell which features are contacting what server and what information will be transferred. All websites will know you are using this script und you are currently using the Matrix - what by the way applies to the link targets you click as well.
  • GCM-Map in inline mode - contacting gcmap.com (non SSL) providing full route data
  • WhereToCredit.com mileage accrual breakdown - contacting wheretocredit.com (non SSL or SSL - depending on whether you use the Matrix with or without SSL) providing full itinerary
  • Skimlinks affiliate links - loads a js script to adds affiliate ids to some links if and only if the "Support this tool" setting is enabled. If it is disabled, no external scripts are loaded
*** FT-Posts you should read ***
General statement regarding this script: click
How to fix class names yourself: click
Problems and limitations regarding pricing itins: click

*** Contributors ***
paul21, Steppo, IAkH, 18sas, Benchmarc and others!

I'd like to give special thanks to paul21 for starting this idea.

*** Latest Version ***
GitHub Repo

OR install directly: Executable Version minified

FYI
Steppo & IAkH (Adam Hwang) have full access to this repository.

Discussion - written by paul21:
The original posting can be found here, related to building links on delta's booking engine. The script scrapes the flight info from the itinerary (flight numbers, dates, class of service, price) and builds a link string to two booking engines (Orbitz/Delta). These links are the same links used by Google Flights (owns ITA) , Kayak, et. al. to drive purchases. I used the Google referrer codes in the scripts, so they should get the commission. It's beyond me why ITA doesn't have some form of purchase link. This a userscript, and like an ad-blocker, it modifies the way a page is viewed by editing DOM objects in the browser. Keep in mind that this tool is meant to do something you already do yourself, but to save time in the process. Any tickets issued by Orbitz/DL via these links could be issued via phone or web search. If the links work, you are avoiding a phone booking fee potentially.







Print Wikipost

ITA-Matrix-PowerTools - Userscript for Orbitz/DL/UA/AA/BA/CZ/IB/LA/LH/LX/TK

Thread Tools
 
Search this Thread
 
Old Jun 22, 2022, 9:03 am
  #1006  
 
Join Date: Dec 2021
Location: Northeast
Posts: 242
Originally Posted by IAkH
This is a Priceline issue actually. When I go to Kayak and do a similar search, click through Priceline, I see the same error.
Good news is that Priceline has fixed that error recently.
LCSinTexas likes this.
SourSweetTea is offline  
Old Jun 23, 2022, 1:38 am
  #1007  
 
Join Date: Jun 2022
Posts: 3
Hi,

Im looking for this flight in ITA:

DETAILS
Barcelona / Manila

ITINERARY
Barcelona (BCN) to Manila (MNL) - Mon, Jul 25

Turkish Airlines 1856 Dep: 5:55PM Arr: 10:30PM 3h 35m Airbus A321 Coach (T)
   Layover in IST  4h 0m
Turkish Airlines 84 Dep: 2:30AM Arr: 7:10PM 11h 40m Airbus A350 Coach (T)

--------------------------------------------------------------------------------

Manila (MNL) to Barcelona (BCN) - Wed, Aug 10

Turkish Airlines 265 Dep: 5:30AM Arr: 12:50PM 12h 20m Airbus A350 Coach (E)
   Layover in IST  1h 30m
Turkish Airlines 1855 Dep: 2:20PM Arr: 5:05PM 3h 45m Airbus A330 Coach (E)


FARE AND BOOKING DETAILS

Provide this information to a travel agent to help them match the fares found.
Make sure to provide the exact booking and fare codes shown.

Fare 1: Carrier TK TN2XPB BCN to MNL     211,50 €
  Passenger type ADT, round trip fare, booking code T
  Covers BCN-IST (Economy), IST-MNL (Economy)

Fare 2: Carrier TK EN2PX MNL to BCN     301,00 €
  Passenger type ADT, round trip fare, booking code E
  Covers MNL-IST (Economy), IST-BCN (Economy)

Turkey Airport Service Charge International (TR)    10,00 €
TK YR surcharge (YR)    402,00 €
Spain Security Tax (QV)    3,27 €
Spain Aviation Safety And Security Fee (OG)    0,63 €
Spain Departure Charge (JD)    16,40 €
Philippines Passenger Service Charge (LI)    9,62 €

Subtotal per passenger    954,92 €
Number of passengers    x1

Total airfare & taxes    954,92 €

--------------------------------------------------------------------------------

Fare construction (can be useful to travel agents)

BCN TK X/IST TK MNL 222.99TN2XPB TK X/IST TK BCN 317.35EN2PX NUC 540.34 END ROE 0.948465 XT 16.40JD 0.63OG 3.27QV 10.00TR 9.62LI 402.00YR

Cancellation of this ticket will incur a penalty fee.
This ticket is non-refundable.
Changes to this ticket will incur a penalty fee.



When i use the powertools and click the button "use Turkish" to take me directly to the airline site, i get to an URL called amadeus slash book (cant post links) And the result is

NOT FOUND

Its a script bug??
Jose Escuredo Garcia is offline  
Old Jun 23, 2022, 2:44 am
  #1008  
 
Join Date: Aug 2015
Location: DXB
Programs: Marriott Titanium Elite, Hyatt Globalist, Hilton Diamond, BA Silver, A3 Gold, Sixt Diamond
Posts: 2,811
That’s probably the typical issue of ITA Matrix not handling married segments on TK properly. You’re seeing Phantom availability and it’s not bookable.
ChocolateFactory is offline  
Old Jun 23, 2022, 2:53 am
  #1009  
 
Join Date: Jun 2022
Posts: 3
Originally Posted by ChocolateFactory
That’s probably the typical issue of ITA Matrix not handling married segments on TK properly. You’re seeing Phantom availability and it’s not bookable.
can you explain me a little bit what you mean? Why yesterday then the flight has less price than today if that ticket is not bookable?

ty!!
Jose Escuredo Garcia is offline  
Old Jun 23, 2022, 3:06 am
  #1010  
 
Join Date: Jun 2022
Posts: 3
Originally Posted by Jose Escuredo Garcia
can you explain me a little bit what you mean? Why yesterday then the flight has less price than today if that ticket is not bookable?

ty!!
Originally Posted by ChocolateFactory
That’s probably the typical issue of ITA Matrix not handling married segments on TK properly. You’re seeing Phantom availability and it’s not bookable.
If i use Budgetair site, i can book the flights but what I dont know if thats safe
Jose Escuredo Garcia is offline  
Old Jun 23, 2022, 5:49 am
  #1011  
 
Join Date: Aug 2015
Location: DXB
Programs: Marriott Titanium Elite, Hyatt Globalist, Hilton Diamond, BA Silver, A3 Gold, Sixt Diamond
Posts: 2,811
Ah, sorry. What I meant is, with Turkish you will often see prices in a booking class that are lower than what you can actually book on Turkish's website. And then it's the Turkish website that is correct.
Not sure what exactly is happening in your case. Budgetair should be safe, but of course with all of these cheap OTAs, it can get messy if you need any kind of customer service, they may have fees for rebookings/refunds etc.
ChocolateFactory is offline  
Old Jun 23, 2022, 5:00 pm
  #1012  
 
Join Date: Oct 2010
Location: SEA/ORD/ADB
Programs: TK ELPL (*G), AS 100K (OWE), BA Gold (OWE), Hyatt Globalist, Hilton Diamond, Marriott Plat, IHG Plat
Posts: 7,763
Originally Posted by ChocolateFactory
That’s probably the typical issue of ITA Matrix not handling married segments on TK properly. You’re seeing Phantom availability and it’s not bookable.
ITA matrix does indeed not handle TK married segments correctly, but separately, there is a bug - the clickthrough to TK website hasn't worked in a while even when inventory exists. I'm unsure if the problem is on the script side or on TK's side.
PVDtoDEL is offline  
Old Jun 26, 2022, 12:10 am
  #1013  
 
Join Date: Dec 2011
Location: NYC
Posts: 1,393
US AA link changes infant in lap to infant in seat
HumbleBee is offline  
Old Jun 27, 2022, 10:05 pm
  #1014  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by HumbleBee
US AA link changes infant in lap to infant in seat
Good catch, but I'm not sure what's best. AA doesn't seem to actually have an option to add an infant in lap as a passenger. If you copy the url and manually change the settings, I think this change:
A1S0C0I1Y0L0
I1 should be I0 (infant in seat) and L0 should be L1 (infant in lap)
but when you make this change, it doesn't seem to affect the passenger selection, and when you go to "New Search" in AA, there isn't actually a place to search for infants in seats. Would love to know if you can find it

Originally Posted by Jose Escuredo Garcia
<snip>
When i use the powertools and click the button "use Turkish" to take me directly to the airline site, i get to an URL called amadeus slash book (cant post links) And the result is

NOT FOUND

Its a script bug??
Looks like TK changed their site so the old link no longer works. I have an update coming to use their new deeplink, but unfortunately its not a very good one and only takes you to the search results page and not the details page.
IAkH is offline  
Old Jun 30, 2022, 7:14 pm
  #1015  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777

[0.55.4] - 2022-06-30

Edited by IAkH
  • fixed Turkish Airlines link (unfortunately, they no longer appear to have a deeplink despite its name)
  • added GotoGate and FlightHub links
View change log

Latest installation links:
IAkH is offline  
Old Jul 3, 2022, 4:25 am
  #1016  
 
Join Date: Jul 2015
Location: SRQ, AMS, AGP
Posts: 200
I have just installed Firefox and PowerTools via GreasyFork, but find that when I select a flight, the next page which should show the flight details, comes up blank.

Using the 'old' ITA interface, the script works correctly -- it seems to affect the new interface.

Anyone else seeing this or have any suggestions?


Lennys26v2 is offline  
Old Jul 3, 2022, 9:50 pm
  #1017  
 
Join Date: Aug 2015
Location: London, UK
Programs: BA GGL
Posts: 1,578
Originally Posted by Lennys26v2
I have just installed Firefox and PowerTools via GreasyFork, but find that when I select a flight, the next page which should show the flight details, comes up blank.

Using the 'old' ITA interface, the script works correctly -- it seems to affect the new interface.

Anyone else seeing this or have any suggestions?


My suggestion is that you use the old interface.
armouredant is offline  
Old Jul 25, 2022, 7:25 am
  #1018  
 
Join Date: Jan 2016
Location: Germany
Programs: UA 1K
Posts: 417
The German localization has got some issues with "Umlauts". Should be an easy fix


delpiero223 is offline  
Old Jul 25, 2022, 7:40 am
  #1019  
 
Join Date: Aug 2015
Location: DXB
Programs: Marriott Titanium Elite, Hyatt Globalist, Hilton Diamond, BA Silver, A3 Gold, Sixt Diamond
Posts: 2,811
Better use the proper character instead of ancient HTML codes (which I believe actually aren’t allowed in XML)… ;-)
ChocolateFactory is offline  
Old Aug 21, 2022, 3:06 pm
  #1020  
 
Join Date: Jun 2006
Location: PNW
Programs: AS 100K
Posts: 1,551
it seems the old interface is not available anymore. anyone know if power tools for the new interface exist?
atcanobbio is offline  


Contact Us - Manage Preferences - Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service -

This site is owned, operated, and maintained by MH Sub I, LLC dba Internet Brands. Copyright © 2024 MH Sub I, LLC dba Internet Brands. All rights reserved. Designated trademarks are the property of their respective owners.