The document outlines how to build your own search service using Yahoo's BOSS API. It provides examples of existing search engines that use BOSS, highlights key milestones in BOSS usage, describes what can be built with the BOSS API, and explains how to use the BOSS API and Mashup framework to build custom search applications and integrations.
2. Outlines
• Search engines using BOSS
• Big milestones for BOSS
• What else can be built with BOSS
• BOSS API
– What
– Why
– Features
• How to use it
– BOSS API
– BOSS Mashup framework
18. Big Milestone for BOSS
• 10 million queries per day in Dec 2009 = 300 million
monthly queries
source: http://www.ysearchblog.com/2008/12/08/boss-reaches-a-
milestone/
• 1 billion monthly queries in May 2009
source: http://www.ysearchblog.com/2008/12/08/boss-reaches-a-
milestone/
27. Reality of Search: Huge Barriers of Entry
• Three players (G-Y-M) dominate the market, giving
users limited choice
• Becoming a serious Search principal requires a massive
capital investment and access to top technical talent
28. Reality of Search: Huge Barriers of Entry
All crawled, ranked
and presented in a
single API
29. What?
• Open up Yahoo!'s search infrastructure and enable
third parties to build revolutionary search products.
• Unrestricted!
• http://developer.yahoo.com/search/boss
All crawled, ranked
and presented in a
single API
31. Why?
• Removes entry barriers
– massive capital investment
• Asset to innovate
– New relevancy models
– New presentation styles
• Boom the search market
– Fragment the market, foster more players, choices,
competitions
32. BOSS API Features
• Ability to re-rank results
• Blend results/content sources
• Ability to use any monetization platform
• Present results in any way
• No branding or attribution
• Unlimited queries per day* <BOSS Usage Fees>
• Access to multiple verticals (web search, image, news)
• Spell checks, keyword suggestions (Key Terms)
• 40+ supported language and region pairs
• SearchMonkey Structured Data, Delicious data
• Page data from Site Explorer
• Expanded Abstracts: 170 characters to 300!
• Mashup Framework
34. Getting Started with BOSS
1) Info & Docs: http://developer.yahoo.com/boss
2) Register for an BOSS App ID (free)
3) Code samples: Javascript, PHP and Python
http://www.saurabhsahni.com/boss-examples.zip
4) (optional) Join the BOSS Developer Group
http://tech.groups.yahoo.com/group/ysearchboss/
5) Starting your hacks
35. API Structure
The Basics:
http://boss.yahooapis.com/ysearch/{vert}/v1/{query}?
appid={BOSSappid}&format=xml
• {vert} = {web, news, images, spelling}
• {query} = {your search term}
• {appid} = required application id
• {format} = json is the default
36. API Structure
Optional Parameters:
http://boss.yahooapis.com/ysearch/{vert}/v1/{query}?
appid={BOSSappid}&format=xml&optionalparameter={value}
• lang = {value} : 40+ languages
• count = {value} : number of results request
• start = {value} : first result requested
• sites = {value} : site restricts
• view=keyterms : related words/phrases for each result
• view = searchmonkey_rdf : SearchMonkey structured data
• view = delicious_toptags : most common public tags
• view = delicious_saves : # of delicious saves
• filter = porn / hate : filter out porn or hate-related content
• type = {value} : document format (e.g. word, pdf, etc)
• abstract = long : increases abstract length to 300 words
37. BOSS API: Web XML Response
http://boss.yahooapis.com/ysearch/web/v1/iphone?appid=…
&format=xml&lang=tzh®ion=tw
38. BOSS API: Find related keywords
http://boss.yahooapis.com/ysearch/web/v1/ ?appid=…
&format=xml&lang=tzh®ion=tw&age=1d-7d&view=keyterms
39. API Structure: Images
Optional Parameters for Images:
http://boss.yahooapis.com/ysearch/images/v1/iphone?
appid={BOSSappid}&format=xml&optionalparameter={value}
• dimensions = {value}: all (default), small, medium, large, wallpaper,
widewallpaper
• refererurl = {value}: URL, no default. Search for this URL. Depending on
other query restrictions, returns all image objects with this referring URL.
• url = {value}: URL, no default. Search for this URL. Returns this exact image
result.
40. BOSS API: Images XML Response
http://boss.yahooapis.com/ysearch/images/v1/iphone?appid=…
&format=xml&dimensions=small
41. API Structure: News
Optional Parameters for News:
http://boss.yahooapis.com/ysearch/news/v1/ ?
appid={BOSSappid}&format=xml&optionalparameter={value}
• age = {value}: 7d is the default. (30d, 1w, 12h, 5d-10d, 2w-30d)
• orderby = {value}: relevance is the default. (add orderby=date to sort by
date)
42. BOSS API: News XML Response
http://boss.yahooapis.com/ysearch/news/v1/ ?appid=…
&format=xml&lang=tzh®ion=tw&age=1d-7d
43. BOSS API: Spell Check
http://boss.yahooapis.com/ysearch/spelling/v1/taipai?appid=…
&format=xml
44. BOSS Mashup framework
An experimental Python library which
provides SQL-like functions for mashing
up the BOSS API with third-party data
sources.
http://developer.yahoo.com/search/boss/
mashup.html
47. BMF+GAE
Enhanced version of BOSS Mashup
Framework to Google App Engine:
http://zooie.wordpress.com/2008/08/04/yahoo-boss-
google-app-engine-integrated/
Enables quick deployment of BOSS
applications online