Yahoo Query Language

{{Redirect-distinguish|YQL|Lethbridge Airport}}

{{short description|SQL-like query language}}

Yahoo! Query Language (YQL) is an SQL-like query language created by Yahoo! as part of their Developer Network. YQL is designed to retrieve and manipulate data from APIs through a single Web interface, thus allowing mashups that enable developers to create their own applications{{cite news |url=https://www.pcworld.com/article/164067/yahoo_extends_yql_web_data_query_platform.html |work=PC World |title=Yahoo Extends YQL Web Data Query Platform |date=April 29, 2009 |last=Perez |first=Juan Carlos }}{{Dead link|date=February 2025 |bot=InternetArchiveBot |fix-attempted=yes }} using Yahoo! Pipes online tool.

Initially launched in October 2008 with access to Yahoo APIs,{{cite news |url=http://www.eweek.com/c/a/Application-Development/Yahoo-Launches-YQL-Execute-Updates-YSlow-660481/ |archive-url=https://archive.today/20120731002123/http://www.eweek.com/c/a/Application-Development/Yahoo-Launches-YQL-Execute-Updates-YSlow-660481/ |url-status=dead |archive-date=July 31, 2012 |work=eWeek |title=Yahoo Launches YQL Execute, Updates YSlow |last=Kolakowski |first=Nicholas |date=April 29, 2009 }} February 2009 saw the addition of open data tables from third parties such as Google Reader, the Guardian, and The New York Times. Some of these APIs still require an API key to access them. On April 29 of 2009, Yahoo introduced the capability to execute the tables of data built through YQL using JavaScript run on the company's servers for free.{{cite news |url=http://www.readwriteweb.com/archives/theres_a_great_amount_of.php |work=ReadWriteWeb |last=O'Dell |first=Jolie |date=May 2, 2009 |title=Developers: Never Mind the APIs, Here's YQL Execute }} On January 3, 2019, Yahoo retired the YQL API service.

Examples

Filter RSS feeds

select title, link from rss where url = 'https://www.engadget.com/rss.xml'

Convert CSV to JSON or XML

select * from csv where url='http://download.finance.yahoo.com/d/quotes.csv?s=YHOO,GOOG,AAPL&f=sl1d1t1c1ohgv&e=.csv' and columns='symbol,price,date,time,change,col1,high,low,col2'

Extract HTML via CSS Selectors

SELECT * FROM data.html.cssselect WHERE url='http://www.w3.org/' AND css='ul.theme'

Get AppLinks meta data

SELECT * from applinks WHERE url IN ('movietickets.com', 'pinterest.com')

Parse any XML source

select Status.presence from xml where url = 'http://mystatus.skype.com/pjjdonnelly.xml' and Status.presence.lang = 'en'

Rate limits

Use of the YQL should not exceed reasonable request volume.{{cite web|title=YQL|url=https://developer.yahoo.com/yql/|ref=yql}} Access is limited as below:

  • Per application limit (identified by your Access Key): 100,000 calls per day;
  • Per IP limits: /v1/public/*: 2,000 calls per hour; /v1/yql/*: 20,000 calls per hour.

See also

References

{{Reflist}}