• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
LinkedIn Platform at LeWeb 2010
 

LinkedIn Platform at LeWeb 2010

on

  • 2,561 views

LinkedIn Platform Workshop from LeWeb 2010.

LinkedIn Platform Workshop from LeWeb 2010.

Statistics

Views

Total Views
2,561
Views on SlideShare
2,515
Embed Views
46

Actions

Likes
3
Downloads
23
Comments
0

4 Embeds 46

http://localhost 22
http://www.linkedin.com 15
https://www.linkedin.com 5
http://10.16.21.185 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Americans spend 8.8 Hours a Dayat WorkIn 1987, 61% of them were satisfied with their jobsThen we had the Internet revolution. Social networks. Smart phones….In 2009, that number dropped to 45%
  • * Fantasticopportunity to provide great economic value and personal happiness.* Looking for passionate developers to use our platform to share in this mission.
  • 200 CountriesAlmost 50% outside US80th Million member from Dijon, FranceWe will be truly successful when we solve two incredibly hard problems for you and everyone of our 85 million members
  • Fundamentally do two things:First: Help people tell their professional story
  • Other sites let you tell your personal storyFacebook: Social Utility: Friends, Family, Status and Photos
  • But LinkedIn lets you tell your professional story.Resume: Not a very compelling story. Low fidelity.Like the telegraph. Dots and dashes.
  • LinkedIn Profile. Story of today. Like the telephone. Audio.Our goal:How can we help make it easier for you to develop your story?Allow you to stand out, be found, and differentiate yourself from the crowdSo that people know they want you, not just someone with your skills.Developers can assistAll these fields available via APIFind a way to get more information, and better information.Profile MakeoverWhat and how: More compelling picture of not just what you’ve done, but how you did it..
  • Story of tomorrow: Video.Share all your creations Pictures Videos Presentations SitesCode
  • Profile data relatively static. Talks about yesterday. What you’ve done.Feed is highly dynamic. Talks about today. What’s going on now.Provides you’re keeping up with the current state of the artFor example, I’m looking to hire Developer Advocates for the teamIf I see someone linking to OAutharticle, definitely gets my interestEven better, providing a perceptiveDevelopers:Help people cultivate their feeds & share articlesTrack your network. Profile updates, status and shares, jobsBe in the conversation
  • Marko Kaiser from SeesmicAll social services in one placeTalk about his experiences using the LinkedIn APIs
  • All this leads to a trusted professional identity. Profile of record.On *and* off LinkedIn.For example, Presdo. A networking tool used at LeWeb used LI APIs to import your information.If you weren’t on LI, you couldn’t use it, and didn’t have any meetings.Or E-mail clients, or blogs and other publishers, many more examples.
  • The first goal is helping you tell your storyThe second is enabling you to achieve your career aspirationsBecause Story is yesterday and today. (Where I came from and arrived at.)Career: Where do you want to go tomorrow?
  • Before you can get there, do you even know what you want to do?How do you find out options?How could you get there?Who can you talk with about accomplishing that task?Career Explorer mines LinkedIn data to help make this happen.
  • LinkedIn is not a database of professionalsBut a graph with connections.If you’re not connecting, you’re denying yourself power and opportunities to grow and learn
  • If a professional colleague asked you for advice, you’d be happy to provide it.And they may be happy to ask…If only they’d known you were the best person to talk to.Developers can mine relationships between people to facilitate those suggestions.Help people better use their connectionsFor example: Search for something on another site, suggest experts from your LinkedIn network when appropriate
  • Jobs:Find them, research the role & company, apply, get the interview“I didn’t know ___ worked there!”Both push and pullCan a freelancer/consultant get interesting clients to find him?
  • Land your dream job, find the best candidates, finance your company, shifting from cold calling to warm prospecting, have the info and knowledge to be successful at what you doGoshido raised 162k Euro in 8 days using LI network.
  • Launched at LeWeb last yearOpen program. Anyone can join.Read and Write REST style APIsProfiles, Connections, Feed, People-Search
  • If you’re looking for inspiration, winners of hackday are on linkedinlabs.Of note, our most recent hackday winner created LinkedIn Instant. A google-instant like searching tool using our APIs.The total time for development was 5 hours, including all the custom markup and CSS added
  • The platform launched in October. Labeled as Early Access.Feedback is really important to us at this stage, it helps us understand what developers want to do with JavaScript
  • Here’s the basic markup for a “sign in with linkedin” buttonScript tag of type text/javascript for our source, with key/values inside
  • Inside the script tag, key/value pairs are comma separated, and each item is on a newline
  • The two main parameters are api_key and authorizeapi_key is the key we got from developer.linkedin.comauthorize: if true, we’ll automatically log the user in if they’ve given you access.if false, we’ll always display the “sign in with linkedin” button and ask them to approve your app again
  • Script tag of IN/Login which is our login widget. The insides are displayable content (in this case, what will replace the button when the user logs in)
  • all of this creates the button you see here. When the user clicks it, they’re asked to give your site permissionOnce you have permission, you can begin making API calls
  • We’re going to start by modifying the IN/Login tag to add one of those onAuth parameters. We’ll call the function getProfile
  • getProfile looks like this.
  • Most interestingly, we’re making a call to IN.API.Profile() right away. This is the JavaScript API. Items are chained together to define the request, which is turned into a REST request on the backend
  • The syntax looks like this. IN.API.Profile(), followed by fields() and result()Starting with the parameter for the Profile() method, you can pass in one or more of the following:public profile URLs can be passed in as url= your URL here
  • The fields you want for the profile are denoted using fields()Names are camelCase, and a full list of profiles can be found here
  • The call happens when you call the result() methodIt can be invoked one of two ways. The first way is with just a callback function, which will receive the resultThe second way includes a scope for the function in more complex Object Oriented environments
  • Lastly, .error() is a method you can add on to capture any errorsAnd params() lets you pass key-value pairs along
  • Inside of result, you get a json payload of the APIThe format is very similar to the standard XML. Collections are under a “values” key, attributes are prefixed by an underscore
  • Thanks for listening.Fantastic opportunity to provide great economic value and personal happiness. Looking for passionate developers to use our platform to share in this mission. And even for developers to join our team.Open for questions.

LinkedIn Platform at LeWeb 2010 LinkedIn Platform at LeWeb 2010 Presentation Transcript

  • LinkedIn Platform
    http://developer.linkedin.com
  • Sources: http://www.bls.gov/tus/charts/, http://www.conference-board.org/press/pressdetail.cfm?pressid=3820
    8.8
    61
    45
  • Our Mission: Connect the world’s professionals to make them more productive and successful
  • 85 Million Members
    Matthew Reye
    E-Business Manager, HP
    Anne Marie Perignon
    CFO, Wells Fargo
    SoumitraRajan
    Pre-Sales Engineer
    Apple
    Rob Le
    Dir, Marketing Operations
    Aon Insurance
    Vinita Bhagda
    Sr. Product Manager
    Coca-Cola
    Nick Riccard
    Interactive Art Director
    VMware
    Mei Wu Lee
    Marketing Manager
    Verizon
    Veronica Capa
    Project Coordinator
    Google
    Patrick Wyser
    Sales Director
    Nokia
    George Kingsten
    Enterprise Sales Associate
    Accenture
    *Names used for examples only.
  • Help You TellYour Professional
    Story
  • MBA
    Master’s Degree
    Bachelor’s Degree
    What I do now
    What I used to do
    10 Years Ago…
  • Who Do I Recommend
    Today
    Languages
    Photo
    Colleagues
    Mentor
    International Experience
    Professional Articles
    Recommendations
    Events
    Startup Advisor
    Search Expert
    Reading List
    Entrepreneur
    Referrals
    Inventor
    Publications
    Groups
  • ?????
    Tomorrow
    ?
  • Your Feed
  • Marko Kaiser @marcoSeesmic http://www.seesmic.com
  • Your Story Travels
    With You
  • 2. Achieve YourCareer Aspirations
  • Imagine your future
  • Use the
    Professional Graph
  • Leverage the Inside Connection
  • Transform the Way You Work
    • Land your dream job
    • Find the best candidates
    • Finance your company
    • Collaborate with others
    • Tap the information & knowledge you need to be successful
  • LinkedIn Developer Network
    developer.linkedin.com
  • LinkedIn Labs linkedinlabs.com
    Collection of LinkedIn Hackday Winners
    Cool ideas and inspiration
    Working examples of the JavaScript APIs
  • JavaScript APIs
    Easy
    No “oAuth”, no “tokens”, no “signing”
    Simple
    Familiar HTML and JS Syntax
    Powerful
    All REST APIs still available
    Fun
    Watch the code
  • Sign in with LinkedIn
    <!DOCTYPE><html><head> <title>LinkedIn JavaScript API</title> <script type="text/javascript" src="http://platform.linkedin.com/in.js">api_key: 7TUS2_LeCD_vLuUE0L9ew35dh-tYtWkZDk4lQm6LYbcdVXgRELNWUMxl authorize: false </script></head><body> <script type="IN/Login">
    Logged in as <?js= firstName ?> <?js= lastName ?>
    </script></body></html>
  • Sign in with LinkedIn
    <!DOCTYPE><html><head> <title>LinkedIn JavaScript API</title> <script type="text/javascript" src="http://platform.linkedin.com/in.js">api_key: 7TUS2_LeCD_vLuUE0L9ew35dh-tYtWkZDk4lQm6LYbcdVXgRELNWUMxl authorize: false </script></head><body> <script type="IN/Login">
    Logged in as <?js= firstName ?> <?js= lastName ?>
    </script></body></html>
  • Sign in with LinkedIn
    api_key: The API Key received during signup on developer.linkedin.com
    authorize: Either "true" or "false". If "false", the user will not be automatically logged in for API calls.
  • Sign in with LinkedIn
    <!DOCTYPE><html><head> <title>LinkedIn JavaScript API</title> <script type="text/javascript" src="http://platform.linkedin.com/in.js">api_key: 7TUS2_LeCD_vLuUE0L9ew35dh-tYtWkZDk4lQm6LYbcdVXgRELNWUMxl authorize: false </script></head><body><script type="IN/Login">
    Logged in as <?js= firstName ?> <?js= lastName ?>
    </script></body></html>
  • Sign in with LinkedIn
  • Retrieve a Profile
    <script type="IN/Login" data-onAuth="getProfile">
    Logged in as <?js= firstName ?> <?js= lastName ?>
    </script>
  • Retrieve a Profile
    function getProfile() {
    IN.API.Profile("url=http://www.linkedin.com/in/adamnash")
    .fields("firstName", "lastName", "industry", "distance", "summary")
    .result(function(res) {
    var user = res.values[0],
    tmpl = ["<p>{firstName} {lastName} works in ",
    "the {industry} industry. You are {distance} degree(s) ",
    "away in the network. What follows is their summary.",
    "</p><p>{summary}</p>"].join("");
    for (var name in user) {
    tmpl = tmpl.replace(newRegExp("{"+name+"}", "g"), user[name]);
    }
    document.getElementById("profile").innerHTML = tmpl;
    });
    }
  • Retrieve a Profile
    function getProfile() {
    IN.API.Profile("url=http://www.linkedin.com/in/adamnash")
    .fields("firstName", "lastName", "industry", "distance", "summary")
    .result(function(res) {
    var user = res.values[0],
    tmpl = ["<p>{firstName} {lastName} works in ",
    "the {industry} industry. You are {distance} degree(s) ",
    "away in the network. What follows is their summary.",
    "</p><p>{summary}</p>"].join("");
    for (var name in user) {
    tmpl = tmpl.replace(newRegExp("{"+name+"}", "g"), user[name]);
    }
    document.getElementById("profile").innerHTML = tmpl;
    });
    }
  • IN.API.Profile(1).fields(2).result(3)
    The member IDs to get:
    url=http://www.linkedin.com/in/adamnash
    mx_82djaa (member token)
    The keyword "me" (current user)
  • IN.API.Profile(1).fields(2).result(3)
    The member IDs to get
    The fields to return:
    camelCase names
    http://developer.linkedin.com/docs/DOC-1061
  • IN.API.Profile(1).fields(2).result(3)
    The member IDs to get
    The fields to return
    A callback function for the result
    The function itself
  • IN.API.Profile(1).fields(2).result(3)
    The member IDs to get
    The fields to return
    A callback function for the result
    Additional Chained Methods
    .error() is identical to result() for errors
    .params() passes key-value pairs to the API
  • .result(myFunction(r) {...}, [scope])
    The variable "r" is a JavaScript Object
    Contains "values" for collections of items
    Similar to the XML REST API
  • LinkedIn Developers Program
    http://developer.linkedin.com