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 Apr 6, 2021, 11:02 am
  #931  
 
Join Date: May 2016
Location: searching FT for a J deal
Programs: Hyatt Globalist, Marriott Unobtainium, Delta Diamond
Posts: 268
Originally Posted by tearex

EDIT: Was able to get search working by using 'calendar' instead of exact dates. Your issue is being over 330 days out.

Thanks for the information about the >330 days out. I did search using “calendar” as I was trying to find EOS fares. As the fares move within 330 days the price goes from ~$700 to ~$1,600 and more.

I will see if I can create a dummy booking with fares closer to the present time.
Pocatello is offline  
Old Apr 7, 2021, 8:10 pm
  #932  
 
Join Date: Sep 2020
Location: MA
Programs: Hilton Diamond , Marriott Gold, Star Alliance Gold, IHG Diamond Elite
Posts: 208
Hi everyone!

is there a way to install Powertools on an IPad or other tablet , please ? Or it’s heavily restricted to desktop versions. Tried Chrome/Opera/Firefox through full browser plug in, no success whathsoever.
s777bg is offline  
Old Apr 11, 2021, 3:39 pm
  #933  
 
Join Date: Sep 2010
Location: EWR/PHL/JFK
Programs: A3*G, AS MVPG, UA, AA
Posts: 610
Originally Posted by s777bg
Hi everyone!

is there a way to install Powertools on an IPad or other tablet , please ? Or it’s heavily restricted to desktop versions. Tried Chrome/Opera/Firefox through full browser plug in, no success whathsoever.
Yeah install it as a bookmarklet instead of a plug-in. Works fine on iPad and Safari for me.
s777bg likes this.
lensovet is offline  
Old Apr 13, 2021, 9:39 am
  #934  
 
Join Date: Apr 2021
Posts: 1
Originally Posted by lensovet
Yeah install it as a bookmarklet instead of a plug-in. Works fine on iPad and Safari for me.
Hi, I have the same issue. Safari on iPad produces an error "Javascript is not usable in this way" or something similar. Would you be so kind to share the link that is working for you in Safari?
I am using the one as suggested near the bottom of the github page under "Tips"
s777bg likes this.
cybersimo is offline  
Old May 11, 2021, 11:09 pm
  #935  
FlyerTalk Evangelist
 
Join Date: Aug 2017
Programs: AS 75K, DL Silver, UA Platinum, Hilton Gold, Hyatt Discoverist, Marriott Platinum + LT Gold
Posts: 10,510
I love this tool - props to the creator and those maintaining/updating along the way!

PT is super useful on complex routing, but also does its job on straight forward routing which sometime couldn't be ticketed for all kinds of reasons from the origin country of the airline's website (in this case, AA's US site). I still wanted to book direct with the airline, and PT redirected me to one of AA European booking pages, and I was able to get it ticketed (although in EUR, but that's a-okay).
s777bg likes this.
Repooc17 is offline  
Old May 29, 2021, 5:33 pm
  #936  
 
Join Date: Dec 2011
Location: NYC
Posts: 1,393
Thanks to the creator, just downloaded and used successfully
HumbleBee is offline  
Old May 29, 2021, 6:48 pm
  #937  
 
Join Date: Jan 2018
Programs: AF/KL Gold, DL Diamond, Hertz PC, Bonvoy Gold Elite; Hilton Gold
Posts: 997
Bug report. Fully current version...all KLM link goto a 404 page unavailable page.
Utskicat is offline  
Old Jun 12, 2021, 11:56 pm
  #938  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by SugoiHikouki
IAkH Thanks for the awesome new features! History and sharable links are a great addition. Now that there is search history, it does get pretty noisy pretty quickly when tweaking parameters across multiple searches. A bit more search history management in the form of saving/favoriting/pinning searches in the history list and/or deleting specific history entries would go a long way in making history a whole lot more useful for my usage patterns.

Edit: thought of this after posting but giving custom names to pinned/favorited searches would also be a nice enhancement.
Great suggestion! I added pinning and removing historical searches in v0.54!

[0.54.0] - 2021-06-13

Edited by IAkH
  • remove and pin search history
View change log

Latest installation links:
SugoiHikouki likes this.
IAkH is offline  
Old Jun 13, 2021, 1:09 am
  #939  
 
Join Date: Jan 2018
Programs: AF/KL Gold, DL Diamond, Hertz PC, Bonvoy Gold Elite; Hilton Gold
Posts: 997
Originally Posted by Utskicat
Bug report. Fully current version...all KLM link goto a 404 page unavailable page.
Any update on the broken KLM links?
Utskicat is offline  
Old Jun 13, 2021, 9:50 am
  #940  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by Utskicat
Any update on the broken KLM links?
Broken links are usually from the airline side when they move to a new website and not really in our control. If you can find an example where links work (Skyscanner, etc) I'm happy to take a look and implement it. But they don't always have a replacement and as such are not always easy to find
IAkH is offline  
Old Aug 2, 2021, 9:29 am
  #941  
 
Join Date: Aug 2019
Location: BER
Programs: OW Sapphire, *A Gold
Posts: 988
Been trying today the GF link from powertools and it just goes to the landing page. Anyone else encountered the same issue?
Deckter is offline  
Old Aug 2, 2021, 10:08 am
  #942  
 
Join Date: Apr 2010
Location: ORD
Programs: AA, UA, GE
Posts: 5,123
Originally Posted by Deckter
Been trying today the GF link from powertools and it just goes to the landing page. Anyone else encountered the same issue?
I have been seeing this for the last few days.
cheltzel is offline  
Old Sep 14, 2021, 1:09 am
  #943  
 
Join Date: May 2013
Location: west coast best coast
Programs: TINDER GOLD, STARBUCKS GOLD, COSTCO EXECUTIVE!!
Posts: 3,989
Does anyone know how to stop the script from removing certain clickthrough options? (e.g. it will remove American as a booking link, if there are not American flights in the ITA search)

I'm trying to get codeshare flights booked/ticketed through American even though they're not marketing. It should be able to price out.
keitherson is offline  
Old Sep 14, 2021, 9:40 pm
  #944  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by keitherson
Does anyone know how to stop the script from removing certain clickthrough options? (e.g. it will remove American as a booking link, if there are not American flights in the ITA search)

I'm trying to get codeshare flights booked/ticketed through American even though they're not marketing. It should be able to price out.
There's an option in the settings for that. I can't recall the name, but something to the effect of showing all airlines
IAkH is offline  
Old Sep 29, 2021, 7:27 pm
  #945  
SK
 
Join Date: Jun 2000
Location: Syracuse, Boston, Athens
Posts: 995
Exclamation

Does the Google Flights link work?

I haven't been able to make it work: even though the address bar shows the fully detailed link from ITA, the page that loads is simply the Google Flights starting page (see example in attached pic).




Originally Posted by IAkH
Happy Monday all~ here's to 0.46.0 to cheer you all up

Emirates and Etihad are not deeplinks, but gets you pretty close. Emirates OJ/MultiCity itineraries have to rely on the mobile site, which is pretty awkward unfortunately. Its bizarre, but you need to resize your browser so that it's longer than its wide (i.e. "portrait") for the site to even show up sometimes. It's very unfortunate, otherwise it works pretty decently. Qatar are deeplinks, but will only work for QR flights. Enjoy

[0.46.0] - 2020-02-24

Edited by IAkH
  • added Emirates, Etihad, Google Flights, and Qatar links
    • default to "inline mode"
      • small white space fix

View change log
SK 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.