Presentation is loading. Please wait.

Presentation is loading. Please wait.

Yahoo! Social APIs Sophie Major Nagesh Susarla

Similar presentations


Presentation on theme: "Yahoo! Social APIs Sophie Major Nagesh Susarla"— Presentation transcript:

1 Yahoo! Social APIs Sophie Major Nagesh Susarla

2 Yes, we’re doing social but this time it’s different.
What are we doing? Yes, we’re doing social but this time it’s different. Yahoo! 360 and Mash were silo’d applications. YOS is a social platform for all of Yahoo! We’re sharing it with everyone (yes, even you).

3 Four New APIs Social Directory Status Contact Updates

4 OAuth is used for authentication (provides long-lived tokens)
Open and Standard OAuth is used for authentication (provides long-lived tokens) Web services are REST-ful J7ASZTCVBBR6DHBYLT6R5QMP6E/profile Responses come in JSON and XML flavours GUID: public aspect of Yahoo ID (primary key)

5 Quick overview of OAuth

6 User experience of OAuth (1)

7 User experience of OAuth (2)

8 Connections API – Read/search social graph information.
Social Directory API Read-only collection of social APIs. Access is limited by what the owner makes available. Profiles API – Read/search profile information (name, image, age, birthday, gender, location, current status, interests, education and work history). Connections API – Read/search social graph information. Contacts API – Read/search combined address book and social graph information. Connections are a 2 way reciprocated link (much akin to social networking sites like MySpace / Facebook) Contacts are 1-way connections The data provided by connections is much more in depth than the contacts

9 Yahoo! Profiles

10 Social Directory API { "profile": {
"uri": " "guid": "J7ASZTCVBBR6DHBYLT6R5QMP6E", "created": " T00:30:04Z", "gender": "M", "image": { "height": 192, "imageUrl": " "size": "192x192", "width": 192 }, "jurisdiction": "us", "location": "Sunnyvale, CA", "nickname": "Ryan", "profileUrl": " "status": { "lastStatusModified": " ", "message": "hey there" "isConnected": true } JSON format JavaScript Object Notation: can call APIs directly from the browser

11 Status API Read-Write interface (depending on application scope) to the status of a given user. { "presence": { "id": " ", "starttime": " T09:00:00Z", "endtime": "", "src": "yahoo", "value": { "status": "giving my hack day talk...hello, hackers!" }

12 Connections API "connection": [ { "created": "2008-10-16T18:44:57Z",
"updated": " T18:44:57Z", "uri": C7SIF3MMHEOH3MJ5HYPYQQVQI", "guid": "7C7SIF3MMHEOH3MJ5HYPYQQVQI", "contactId": "327" }, "created": " T20:43:15Z", "updated": " T20:43:15Z", "uri": " connection/BJTDY5GOXXOBRASYLIGD4WUDM4", "guid": "BJTDY5GOXXOBRASYLIGD4WUDM4", "contactId": "335" ....]

13 Contacts API "contact": [ { } ...] "created": "2006-02-07T02:29:50Z",
"updated": " T02:29:50Z", "uri": " "isConnection": "false", "id": "257", "fields": [ "uri": " "id": "2", "type": " ", "value": } ...]

14 What are Updates? Update: A summary of user activity and content that will be displayed in many locations on and off the Yahoo! network. Updates Module User Permission 14

15 Updates on the Yahoo! Network: Mail

16 Updates API Read-Write interface (depending on application scope) to the activity stream of a given user. Requires an extra “application ID” (returned during the registration process) to create updates and filter when queried.

17 Updates API { "class": "app", "collectionID": "J7ASZTCVBBR6DHBYLT6R5QMP6E", "collectionType": "guid", "description": "", "intl": "us", "language": "en", "lastUpdated": " ", "link": " "loc_gender": "Neutral", "loc_iconURL": "", "loc_localizedName": "Hack Discuss Dev", "loc_longForm": "Ryan Kennedy is looking for a group", "loc_longFormRaw": "{profile_nickname} {title}", "loc_oneWord": "App. Activity", "loc_topLevelURL": " "profile_created": " T03:20:26Z", "profile_displayImage": " "profile_displayImageSize": "192x192", "profile_gender": "Neutral", "profile_guid": "J7ASZTCVBBR6DHBYLT6R5QMP6E", "profile_nickname": "Ryan Kennedy", "profile_profileUrl": " "profile_uri": " "pubDate": " T10:07:48Z", "source": "APP.xnpp3i76", "suid": " J7ASZTCVBBR6DHBYLT6R5QMP6E", "title": "is looking for a group", "type": "appActivity", "uri": " J7ASZTCVBBR6DHBYLT6R5QMP6E" }

18

19 Highly optimised, cached – scales very well

20

21

22

23

24 Privacy controls allow users to limit access to their information.
A word about privacy Privacy controls allow users to limit access to their information. Control access to your profile (anyone or only connections) and updates (connections or only you). Additional control over whether 3rd party applications can see your information. Users can limit application access for a period of 30 days if they wish

25 It’s not as bad as it looks 
This looks hard It’s not as bad as it looks  We’ve built a PHP SDK that will do most of the heavy lifting for you. Flash (ActionScript 3) SDK available and more in the works

26 Visit http://developer.yahoo.com/dashboard/
Next steps Visit Under “OAuth Applications” select “New Application” Describe your application and request scopes (can change these later) Verify your domain Save your Consumer Key, Consumer Key Secret and application ID Enjoy!

27

28 Poll app : http://apps.yahoo.com/-GPuvFs56
Some examples Search through your connection updates : Poll app :

29 Thank you


Download ppt "Yahoo! Social APIs Sophie Major Nagesh Susarla"

Similar presentations


Ads by Google