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 Feb 17, 2020, 7:39 am
  #811  
 
Join Date: Apr 2010
Location: ORD
Programs: AA, UA, GE
Posts: 5,123
Originally Posted by IAkH
Published v0.44.0. One thing I want to address is that I did very reluctantly add affiliate links to this version in an effort to support Edge and Safari, whose developer fees will end up costing a few hundred dollars. I want to say this is entirely optional and you may opt out by disabling the "Support this tool" option which will not make any changes or load any third party libraries. I left this as opt-out because several links are already affiliate links for Google, Kayak, Skyscanner, etc because the deeplinks were created specifically for those meta search sites. Additionally, airfare affiliates are notoriously low fixed amounts (think cash back sites), so it will take several hundred bookings to recoup the developer fees costs. I really disliked having to make this change, but I do hope everybody understands why and that it was not done without serious consideration. Those of you with ad-blockers will not notice any changes. Thanks for your understanding.

[0.44.0] - 2020-02-16

Edited by IAkH
  • fixed CheapOAir link
  • added lucky2go, Ovago, and FlightNetwork (thanks andydd )
  • consolidated update and download URLs to GreasyFork
  • added affiliate link option

[0.43.1] - 2020-02-11

Edited by wylek
  • minor BA parameter updates for multi-city construction
  • AA (US site) corrections for one-way and multi-city URL construction, departure timezone handling re-implemented (previous handling via farefreaks was removed)
  • Added AA editions for Puerto Rico, Bahamas, and British Virgin Islands

https://github.com/SteppoFF/ita-matrix-powertools
FIrst if all, thanks to you and all the folks who have poured a lot of time and effort into this. I am a recently retired software engineer and I have a pretty good idea as to how much hard work has gone into it.

I have the "Support this tool" setting enabled but do not see any link for supporting the tool. I have turned off all my ad blockers and other tools used to block all the garbage that most websites use to clutter up and degrade their sites but still see nothing. Do you have a link you can share for this?
sokolov and IAkH like this.
cheltzel is online now  
Old Feb 17, 2020, 7:41 am
  #812  
 
Join Date: Jan 2007
Posts: 4,709
Originally Posted by cheltzel
FIrst if all, thanks to you and all the folks who have poured a lot of time and effort into this. I am a recently retired software engineer and I have a pretty good idea as to how much hard work has gone into it.

I have the "Support this tool" setting enabled but do not see any link for supporting the tool. I have turned off all my ad blockers and other tools used to block all the garbage that most websites use to clutter up and degrade their sites but still see nothing. Do you have a link you can share for this?
I believe enabling that just uses the affiliate links, I'm not sure there is a donate link. Might be an idea to set one up?
IAkH likes this.
flashware is offline  
Old Feb 17, 2020, 8:33 am
  #813  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by cheltzel
FIrst if all, thanks to you and all the folks who have poured a lot of time and effort into this. I am a recently retired software engineer and I have a pretty good idea as to how much hard work has gone into it.

I have the "Support this tool" setting enabled but do not see any link for supporting the tool. I have turned off all my ad blockers and other tools used to block all the garbage that most websites use to clutter up and degrade their sites but still see nothing. Do you have a link you can share for this?
Thanks for the kind note. It really is a project that I'm happy to support.

There aren't affiliate links for every site and my hope that it isn't intrusive at all. No need to do anything other than enabling that option. Thanks for your support!

Originally Posted by flashware
I believe enabling that just uses the affiliate links, I'm not sure there is a donate link. Might be an idea to set one up?
I considered adding a donate button, but figured the affiliate route was a less intrusive way to raise a bit of funding. Thanks for understanding
IAkH is offline  
Old Feb 17, 2020, 11:46 am
  #814  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by Euro404
Thank you so much for your work!

Would it be possible to add the jetcost family as a fare aggregator?
Especially the .es and .ie sites often offer the highest discounts on GDS fares.

flug.idealo.de might not be possible as there is no date in the URL, only departure and arrival airport.

[0.44.1] - 2020-02-16

Edited by IAkH
  • added Jetcost
View change log

Latest installation paths:
andydd likes this.
IAkH is offline  
Old Feb 17, 2020, 4:49 pm
  #815  
 
Join Date: Jul 2016
Posts: 146
Originally Posted by IAkH
  • fixed CheapOAir link
  • added lucky2go, Ovago, and FlightNetwork (thanks andydd )
  • consolidated update and download URLs to GreasyFork
  • added affiliate link option
Bravo for the rejuvenated script & please keep the fantastic work up. Kudos.

I tested Flightnetwork and there are unfortunately 2 errors:
1 .I believe that there's slight mistake in parameter that's left out and hence it's not pricing correctly. I have PMed you the typo and hopefully the minor issue can be fixed easily.
2. The FN link is not enabled for multi city search, even though FN does support multi city.

Btw, Hop2, Wow fare and Ovago etc.. are actually just affiliates that have subscribed to the exactly same pricing engine..(whose name I unfortunately dont remember at moment). It's more like providing one's css and domain name and then it all points to exactly same thing in the backed.. Moreover they yield exact same dollar price & exact same flight options. In my opinion, these are simply clutter and occupy unnecessary screen real estate, developer time and adds no additional value. It might be better to just keep any one of them & discard the rest. Sample results can be seen below for analysis.
https://ibb.co/SxVjHc8
IAkH likes this.

Last edited by andydd; Feb 17, 2020 at 5:02 pm Reason: Typo/ Brevity
andydd is offline  
Old Feb 17, 2020, 7:59 pm
  #816  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by andydd
Bravo for the rejuvenated script & please keep the fantastic work up. Kudos.

I tested Flightnetwork and there are unfortunately 2 errors:
1 .I believe that there's slight mistake in parameter that's left out and hence it's not pricing correctly. I have PMed you the typo and hopefully the minor issue can be fixed easily.
2. The FN link is not enabled for multi city search, even though FN does support multi city.
Thanks for the PM! I see the issue, and sorry for missing it the first time around. Replied with a quick test if you don't mind confirming.
Originally Posted by andydd
Btw, Hop2, Wow fare and Ovago etc.. are actually just affiliates that have subscribed to the exactly same pricing engine..(whose name I unfortunately dont remember at moment). It's more like providing one's css and domain name and then it all points to exactly same thing in the backed.. Moreover they yield exact same dollar price & exact same flight options. In my opinion, these are simply clutter and occupy unnecessary screen real estate, developer time and adds no additional value. It might be better to just keep any one of them & discard the rest. Sample results can be seen below for analysis.
https://ibb.co/SxVjHc8
I thought so too originally when I came across them, but I do notice that they have different pricing sometimes (see screenshot from Skyscanner). Alternatively, I don't mind combining them into a single link (with the fly out menu for the others). I'd love to figure out which is the "real" pricing engine though if you ever remember. Otherwise, I'll probably go with hop2 which seems to be the most popular of the 3

IAkH is offline  
Old Feb 21, 2020, 2:15 am
  #817  
 
Join Date: Jul 2016
Posts: 146
Originally Posted by IAkH
Alternatively, I don't mind combining them into a single link (with the fly out menu for the others). I'd love to figure out which is the "real" pricing engine though if you ever remember. Otherwise, I'll probably go with hop2 which seems to be the most popular of the 3
Ok I went into my archives, but I couldn't find the source that this group is using. I suspect that the hop2 is the parent company thath use one of the many travel apis + consolidator fares. Then they offer this as a service for anyone body else to franchise by rebranding. I can almost bet that any booking made on any of these sites will actually be handled by Hop2 employees, located at NY. They just offer different support numbers, but it's the same stuff in the backend. For anyone interested, here's a list of Hop2++ & Co.

https://gurufare.com/
https://arangrant.com/
https://wowfare.com/
https://ovago.com/
https://hop2.com/
IAkH likes this.
andydd is offline  
Old Feb 21, 2020, 2:23 am
  #818  
Marriott 5+ BadgeHyatt Contributor Badge
 
Join Date: Jan 2011
Location: HKG • Ex SFO, NYC
Programs: UA 1K, AA EXP; Marriott Amb; Hyatt Globalist; Shangri-la Diamond; IHG SpireAmb; Hilton D; Accor G
Posts: 3,319
Originally Posted by IAkH
Published v0.44.0. One thing I want to address is that I did very reluctantly add affiliate links to this version in an effort to support Edge and Safari, whose developer fees will end up costing a few hundred dollars. I want to say this is entirely optional and you may opt out by disabling the "Support this tool" option which will not make any changes or load any third party libraries. I left this as opt-out because several links are already affiliate links for Google, Kayak, Skyscanner, etc because the deeplinks were created specifically for those meta search sites. Additionally, airfare affiliates are notoriously low fixed amounts (think cash back sites), so it will take several hundred bookings to recoup the developer fees costs. I really disliked having to make this change, but I do hope everybody understands why and that it was not done without serious consideration. Those of you with ad-blockers will not notice any changes. Thanks for your understanding.

[0.44.0] - 2020-02-16

Edited by IAkH
  • fixed CheapOAir link
  • added lucky2go, Ovago, and FlightNetwork (thanks andydd )
  • consolidated update and download URLs to GreasyFork
  • added affiliate link option

[0.43.1] - 2020-02-11

Edited by wylek
  • minor BA parameter updates for multi-city construction
  • AA (US site) corrections for one-way and multi-city URL construction, departure timezone handling re-implemented (previous handling via farefreaks was removed)
  • Added AA editions for Puerto Rico, Bahamas, and British Virgin Islands

https://github.com/SteppoFF/ita-matrix-powertools
Thanks so much for all the work you do on this. The affiliate links are 1000000% fine wiith me, happy to support you!


I do use an ad-blocker. What settings should I add to it to make sure it doesn't block your affiliate links?
Markie likes this.
helvetic is offline  
Old Feb 21, 2020, 1:37 pm
  #819  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Originally Posted by helvetic
Thanks so much for all the work you do on this. The affiliate links are 1000000% fine wiith me, happy to support you!


I do use an ad-blocker. What settings should I add to it to make sure it doesn't block your affiliate links?
My pleasure. Don't worry about it I'd never ask to not block ads
IAkH is offline  
Old Feb 21, 2020, 1:42 pm
  #820  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
Hoping you all don't mind the constant updates.

Published 0.45.0 today. Extensions are a bit slow to update and big thanks again to andydd for more FlightNetwork flxes.

To those waiting patiently, The new Edge (Chromium) extension is finally ready! Microsoft is really slow to update, so its a few days out of date, but 0.45.0 should be queued up for release once they catch back up. Also went ahead and made an Opera extension as well, because... why not?

Enjoy

[0.45.0] - 2020-02-21

Edited by IAkH
  • added Tripadvisor
  • added by-segment search to Skyscanner and Momondo
  • added children support to Kayak, Skyscanner, Momondo and FlightNetwork (thanks again @andydd!)
  • removed duplicate by-segment search when all segments are one-ways
  • fixed max passenger logic
  • fixed white space, updated inline layout and colors
  • added Edge and Opera addons

View change log

Latest installation paths:
flashware and andydd like this.
IAkH is offline  
Old Feb 21, 2020, 1:48 pm
  #821  
 
Join Date: Apr 2010
Location: ORD
Programs: AA, UA, GE
Posts: 5,123
Originally Posted by IAkH
Hoping you all don't mind the constant updates.

Published 0.45.0 today. Extensions are a bit slow to update and big thanks again to andydd for more FlightNetwork flxes.

To those waiting patiently, The new Edge (Chromium) extension is finally ready! Microsoft is really slow to update, so its a few days out of date, but 0.45.0 should be queued up for release once they catch back up. Also went ahead and made an Opera extension as well, because... why not?

Enjoy

[0.45.0] - 2020-02-21

Edited by IAkH
  • added Tripadvisor
  • added by-segment search to Skyscanner and Momondo
  • added children support to Kayak, Skyscanner, Momondo and FlightNetwork (thanks again @andydd!)
  • removed duplicate by-segment search when all segments are one-ways
  • fixed max passenger logic
  • fixed white space, updated inline layout and colors
  • added Edge and Opera addons

View change log

Latest installation paths:
I just did a Tampermonkey script update on my main WIn 10 system and am happily running v0.45.0
IAkH likes this.
cheltzel is online now  
Old Feb 24, 2020, 3:25 pm
  #822  
 
Join Date: Dec 2009
Location: IAH ↔ PAR
Posts: 777
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

Latest installation paths:
helvetic and ChocolateFactory like this.
IAkH is offline  
Old Feb 24, 2020, 9:43 pm
  #823  
 
Join Date: Aug 2015
Location: DXB
Programs: Marriott Titanium Elite, Hyatt Globalist, Hilton Diamond, BA Silver, A3 Gold, Sixt Diamond
Posts: 2,812
Wow, that’s great!!!
ChocolateFactory is offline  
Old Feb 25, 2020, 2:08 am
  #824  
 
Join Date: Aug 2015
Location: London, UK
Programs: BA GGL
Posts: 1,578
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

Latest installation paths:
Hmmm... what about (at desktop res) slinging the Emirates link into an iframe, or a browser window (rather than tab) created at mobile width?
armouredant is offline  
Old Feb 25, 2020, 11:00 pm
  #825  
 
Join Date: May 2005
Location: Edinburgh
Posts: 514
Thank you for the great work.

With the latest developments the airport codes QDU/QKL won't trigger any script results, though matrix results are perfectly fine.
Any idea why?
kacheng 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.