Yahoo! Search BOSS

4,238 views
4,061 views

Published on

Yahoo! Search BOSS

Published in: Technology, Design
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,238
On SlideShare
0
From Embeds
0
Number of Embeds
39
Actions
Shares
0
Downloads
44
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Add Images here
  • Choose a funny image here
  • Add more
  • Add more
  • Fix these links
  • Yahoo! Search BOSS

    1. 1. Yahoo! Search BOSS<br />Praveen P.N (praveenp@yahoo-inc.com)<br />twitter @holydevil<br />
    2. 2. What is BOSS?<br />Build your Own Search Service<br />
    3. 3. What does boss give you?<br /><ul><li>Search Data and Infrastructure
    4. 4. Monetization (We give you Ads!!)
    5. 5. Support and Tools</li></ul>BOSSis a service that provides you (the developer) flexible access to different types of data from Yahoo and allows you to build powerful commercial search applications with that data. <br />BOSSprovides you Search Advertising and simple terms so that you can monetize that innovative product and continue to invest your personal time in it.<br />$$$$<br />BOSSalso gives you Support and Tools to get your product working. <br />
    6. 6. <ul><li>Restful XML and JSON API
    7. 7. Web, Image, Spelling, News and Search Ads
    8. 8. More services soon
    9. 9. Flexibility to Blend and Re-rank Results
    10. 10. Create your own look and feel
    11. 11. Change ranking
    12. 12. Mix it with other API’s
    13. 13. OAuthbased Authentication</li></ul>What does that mean?<br />
    14. 14. What else do you get<br /><ul><li>Web and Limited Web results (smaller subset and at most 3 days old)
    15. 15. Complex query combinations and filters
    16. 16. Search for data in different markets
    17. 17. Image attributes like height, width, etc
    18. 18. Time span filtering for News Search
    19. 19. Document type filtering
    20. 20. Extended abstracts
    21. 21. Recognizes most search filters from Yahoo! and Google (backdoor hacks) </li></li></ul><li>How DO I hack with it?<br />
    22. 22. Sign up<br /><ul><li>Self-serve sign up with simple Credit Card/Paypal payment options
    23. 23. Visit BOSS Page or wait until the end for pricing
    24. 24. Simplified pricing based on query type
    25. 25. A combined bill for developers taking Search Advertising
    26. 26. One signup, use in any market</li></ul>Don’t bother for now, we have a key setup for you<br />
    27. 27. The query<br /><ul><li>Tells you what the user is looking for
    28. 28. Powers secondary APIs
    29. 29. Can be generated by a search box, URL, tags or keyword extraction from the page.
    30. 30. Generates related topics
    31. 31. The Query is your BFF! </li></ul>e.g. http://yboss.yahooapis.com/ysearch/web?q=“Dark Knight”&format=xml<br />
    32. 32. Sample calls<br /><ul><li>Getting multiple data sets
    33. 33. /ysearch/web,images,news?q=anna
    34. 34. /ysearch/web,images,news?web.q=anna&images.q=anna&news.q=lokpal
    35. 35. Searching through sites
    36. 36. A Simple Movie Search
    37. 37. /ysearch/web?q=“Dark Knight”&sites=movies.yahoo.com,netflix.com,imdb.com
    38. 38. AND/OR operators
    39. 39. /ysearch/web?q="stevejobs"AND((ipad)OR(iphone))&sites=bestbuy.com,newegg.com
    40. 40. Important: Use Braces or quotes</li></li></ul><li>Unary Operators<br /><ul><li>Search for Batman but not “Dark Knight”
    41. 41. q=(batman -“Dark Knight")
    42. 42. Find pages with “Heath Ledger” but not “Dark Knight”
    43. 43. q=+”heath ledger”–”Dark Knight”&sites=movies.yahoo.com
    44. 44. Force auto-spelling off
    45. 45. q=+”drk knight”</li></ul>AND OR<br />
    46. 46. Searching in body and in title<br /><ul><li>Searching for Dark Knight in the Title on Yahoo movies
    47. 47. q=reviews intitle:"dark knight"&sites=movies.yahoo.com
    48. 48. Searching for Dark Knight in the Title in Yahoo movies containing Christian Bale
    49. 49. q=reviews intitle:"dark knight" inbody:"christian bale"&sites=movies.yahoo.com</li></li></ul><li>Market and document specific Filters<br /><ul><li>Search for “Dark Knight” in India specific sites
    50. 50. q=“Dark Knight”&market=en-in
    51. 51. Search for “PDF’s containing “Dark Knight”
    52. 52. q=“Dark Knight”&type=pdf
    53. 53. Search for MS Office type (except PPT’s) containing “Dark Knight”
    54. 54. q=“Dark Knight”&type=msoffice,-ppt</li></li></ul><li>Output<br />
    55. 55. Image search parameters<br /><ul><li>Search for images that are not offensive
    56. 56. /ysearch/images?q=“san francisco”&filter=yes
    57. 57. Search for images that are wallpaper size
    58. 58. /ysearch/images?q=“san francisco”&dimensions=wallpaper
    59. 59. Search for a image at a certain refer URL
    60. 60. /ysearch/images?q=yahoo&refererurl=http://www.flickr.com</li></ul>Interesting Output Fields<br /><ul><li>format, file size, height, width, title, total result count</li></li></ul><li>News search parameters <br /><ul><li>Search news that is less than 7 days old
    61. 61. /ysearch/news?q=lokpal&age=7d
    62. 62. Search news that is between 20hrs and 2 days old
    63. 63. /ysearch/news?q=lokpal&age=20h2d
    64. 64. Re-rank news results by date
    65. 65. /ysearch/news?q=lokpal&ranking=true</li></ul>Interesting Output Fields<br /><ul><li> Source, Date, Source URL</li></li></ul><li>BOSS + YQL<br />Table Name: boss.search<br />e.g. select * from boss.search where ck=… and secret=… and q=‘yahoo’ and service=‘news’<br />
    66. 66. Understand OAuth<br />Identification<br />Consumer Key – Used to make a call to the API<br />Consumer Secret – Used for 3 legged oAuth (not used for BOSS)<br />Making a call (www.oauth.net/code)<br /><ul><li>Consumer Key
    67. 67. Nonce – Random string generated by oAuth (prevents replay attacks)
    68. 68. Signature – Generated by library
    69. 69. Signature Method – Various types of methods supported (e.g. HMAC-SHA1)
    70. 70. oAuth Timestamp –Unix time (valid for 5 minutes only)
    71. 71. oAuth version – 1.0</li></ul>We have code samples in PHP, Perl, Ruby for you!!<br />
    72. 72. Hack IDEAS and useful API’s<br /><ul><li>RealTime
    73. 73. Twitter/Facebook API
    74. 74. Video
    75. 75. YouTube data API
    76. 76. Vertical search engines
    77. 77. Programmable web has interesting API’s
    78. 78. Local Search Engines
    79. 79. Yahoo Geocoding services e.g. Placefinder
    80. 80. Chrome extensions
    81. 81. Mobile Applications</li></li></ul><li>Example hacks<br />
    82. 82. Duckduckgo.com<br />
    83. 83. Interceder<br />
    84. 84. Inquisitor: Browser Extenstion (v1) <br />22<br />Hack: http://www.inquisitorx.com/firefox/index_en.php<br />
    85. 85. Ask-boss (v1)<br />Hack: http://ask-boss.appspot.com<br />Code: https://github.com/saurabhsahni/Hacks/tree/master/askBOSS<br />
    86. 86. webmeme.com<br />
    87. 87. More resources<br /><ul><li>Yahoo! BOSS: http://developer.yahoo.com/boss
    88. 88. BOSS Technical Documentation: http://developer.yahoo.com/search/boss/boss_api_guide/
    89. 89. YQL: http://developer.yahoo.com/yql
    90. 90. Fire Eagle: http://developer.yahoo.com/fireeagle/
    91. 91. Google App Engine: http: //appengine.google.com
    92. 92. Amazon Web Services: http://aws.amazon.com
    93. 93. oAuth: http://oauth.net/
    94. 94. Open Social: http://www.opensocial.org/
    95. 95. Open Data: http://theinfo.org
    96. 96. Alt Search Engines: http://www.altsearchengines.com/ </li></li></ul><li>Thank You!<br />&<br />happy hacking<br />

    ×