{"id":2517,"date":"2017-03-20T12:33:00","date_gmt":"2017-03-20T07:03:00","guid":{"rendered":"https:\/\/www.innovationm.com\/blog\/?p=2517"},"modified":"2017-06-07T13:02:11","modified_gmt":"2017-06-07T07:32:11","slug":"linkedin-integration-in-swift-3-0","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/","title":{"rendered":"LinkedIn Integration in Swift 3.0"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p>Social media is everywhere and integrating any social media platform upgrades your application in every way. LinkedIn is one such platform widely used &amp; client-demanding both at the same time.<\/p>\n<p>Integrating Sign in from LinkedIn into your app is not a difficult process. Just follow the simple steps so that you can have an easy access to your linkedIn account.<\/p>\n<p>Your xcode projects needs to be added to the linkedIn account in order to use LinkedIn sdk in your xcode project.<\/p>\n<p><strong>Add app to your LinkedIn account:<\/strong><\/p>\n<ol>\n<li>\u00a0Open your browser and search for link\u00a0<a href=\"https:\/\/developer.linkedin.com\/\">https:\/\/developer.linkedin.com\/<\/a><\/li>\n<li>\u00a0Now click on My Apps from the tab.<\/li>\n<li>\u00a0Sign in with your LinkedIn existing account or create a new LinkedIn account.<\/li>\n<li>\u00a0Under My Apps section, you&#8217;ll find all those apps which are linked to your account. You can review settings for your existing apps or you can Create a new application just on a click of Create Application button.<a href=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-3.22.05-PM.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-2603 size-full aligncenter\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-3.22.05-PM.png\" alt=\"Screen Shot 2017-02-10 at 3.22.05 PM\" width=\"1003\" height=\"235\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-3.22.05-PM.png 1003w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-3.22.05-PM-300x70.png 300w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-3.22.05-PM-624x146.png 624w\" sizes=\"(max-width: 1003px) 100vw, 1003px\" \/><\/a><\/li>\n<li>\u00a0Here you&#8217;ll find a form where you have to fill all the details related to your app including App name, App logo etc.<\/li>\n<li>\u00a0After filling all the mandatory details, click on submit button.<\/li>\n<li>\u00a0Now under the Authentication section of your newly created App, you&#8217;ll find your app&#8217;s client ID and client Secret keys which you need to add to your xcode project which we&#8217;ll discuss later.<a href=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at3.36.31PM.jpg\"><img decoding=\"async\" class=\"aligncenter wp-image-2605 size-full\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at3.36.31PM.jpg\" alt=\"ScreenShot2017-02-10at3.36.31PM\" width=\"972\" height=\"450\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at3.36.31PM.jpg 972w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at3.36.31PM-300x139.jpg 300w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at3.36.31PM-624x289.jpg 624w\" sizes=\"(max-width: 972px) 100vw, 972px\" \/><\/a><\/li>\n<li>\u00a0If you wan&#8217;t to fetch email address from the user&#8217;s account, make sure you have checked the r_emailaddress option. If it is unchecked, your app will not be able to get the user&#8217;s email address.<\/li>\n<li>\u00a0Also add a valid\u00a0Authorized URL for redirection under the following fields:<a href=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at4.03.10PM.jpg\"><img decoding=\"async\" class=\"wp-image-2606 aligncenter\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at4.03.10PM.jpg\" alt=\"ScreenShot2017-02-10at4.03.10PM\" width=\"454\" height=\"277\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at4.03.10PM.jpg 687w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at4.03.10PM-300x183.jpg 300w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/ScreenShot2017-02-10at4.03.10PM-624x381.jpg 624w\" sizes=\"(max-width: 454px) 100vw, 454px\" \/><\/a><\/li>\n<li>Now goto Mobile section and in iOS Settings add your Bundle identifier and a url suffix and also note down the Application Id given at this page.<a href=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/9qRhf.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-3155 aligncenter\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/9qRhf.png\" alt=\"9qRhf\" width=\"864\" height=\"617\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/9qRhf.png 864w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/9qRhf-300x214.png 300w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/9qRhf-624x446.png 624w\" sizes=\"(max-width: 864px) 100vw, 864px\" \/><\/a><\/li>\n<\/ol>\n<p>Finally click on Update button to update all the settings. This completes\u00a0the process of adding your app to your LinkedIn account.<\/p>\n<p><strong>Creating a new xcode project<\/strong><\/p>\n<ol>\n<li>\u00a0Create your xcode project.<\/li>\n<li>\u00a0Create a podfile of your project inside your project&#8217;s directory using terminal commands:\n<ol>\n<li class=\"_AXc\">Open a terminal window, and $ cd into your project directory.<\/li>\n<li class=\"_AXc\">Create a Podfile. This can be done by running $ pod init command.<\/li>\n<li class=\"_AXc\">Open your Podfile from finder.<\/li>\n<\/ol>\n<\/li>\n<li>\u00a0Add &#8216;LinkedinSwift&#8217; and SwiftyJSON pods just like you are seeing in an image below:<a href=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-5.25.46-PM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2611 aligncenter\" src=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-5.25.46-PM.png\" alt=\"Screen Shot 2017-02-10 at 5.25.46 PM\" width=\"463\" height=\"248\" srcset=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-5.25.46-PM.png 638w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-5.25.46-PM-300x161.png 300w, https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/Screen-Shot-2017-02-10-at-5.25.46-PM-624x334.png 624w\" sizes=\"(max-width: 463px) 100vw, 463px\" \/><\/a><\/li>\n<li>\u00a0Save the podfile<\/li>\n<li>\u00a0Now install the podfile:\n<ul>\n<li class=\"_AXc\">Open a terminal window, and $ cd into your project directory.<\/li>\n<li class=\"_AXc\">Install\u00a0a Podfile. This can be done by running $ pod install command.<\/li>\n<\/ul>\n<\/li>\n<li>\u00a0Close your project and go to your project directory folder where you&#8217;ll find your project file with .xcworkspace extension. Open &lt;your project&gt;.xcworkspace file.<\/li>\n<li>Now create a bridging-header file and add the following code\u00a0before #endif.\n<pre class=\"lang:objc decode:true\">#import &lt;LinkedinSwift\/LSHeader.h&gt;<\/pre>\n<\/li>\n<li>\u00a0Find your view controller file and at the top\u00a0add statement import LinkedInSwift.<\/li>\n<li>\u00a0If no errors occurs, you have successfully installed all the required pods. Else your linkedInSwift pod might be missing in your project directory or might be misplaced from the required location.<\/li>\n<li>\u00a0Now open your info.plist file as a source code to add LinkedIn Application ID. For this copy the code below and add to your info.plist file at any place.\n<pre class=\"lang:xhtml decode:true\">&lt;key&gt;LIAppId&lt;\/key&gt;\r\n    &lt;string&gt;&lt;your App ID&gt;&lt;\/string&gt;\r\n    \r\n    &lt;key&gt;CFBundleURLTypes&lt;\/key&gt;\r\n    &lt;array&gt;\r\n        &lt;dict&gt;\r\n            &lt;key&gt;CFBundleURLSchemes&lt;\/key&gt;\r\n            &lt;array&gt;\r\n                &lt;string&gt;li&lt;your App ID&gt;&lt;\/string&gt;\r\n            &lt;\/array&gt;\r\n        &lt;\/dict&gt;\r\n    &lt;\/array&gt;\r\n    &lt;key&gt;LSApplicationQueriesSchemes&lt;\/key&gt;\r\n    &lt;array&gt;\r\n        &lt;string&gt;linkedin&lt;\/string&gt;\r\n        &lt;string&gt;linkedin-sdk2&lt;\/string&gt;\r\n        &lt;string&gt;linkedin-sdk&lt;\/string&gt;\r\n    &lt;\/array&gt;<\/pre>\n<\/li>\n<li>\u00a0Make sure you have added App Transport key to enable web services in your App. If it is not present, add the following key to your info.plist file:\n<pre class=\"lang:xhtml decode:true\">&lt;key&gt;NSAppTransportSecurity&lt;\/key&gt;\r\n    &lt;dict&gt;\r\n        &lt;key&gt;NSExceptionDomains&lt;\/key&gt;\r\n        &lt;dict&gt;\r\n            &lt;key&gt;linkedin.com&lt;\/key&gt;\r\n            &lt;dict&gt;\r\n                &lt;key&gt;NSExceptionAllowsInsecureHTTPLoads&lt;\/key&gt;\r\n                &lt;true\/&gt;\r\n                &lt;key&gt;NSIncludesSubdomains&lt;\/key&gt;\r\n                &lt;true\/&gt;\r\n                &lt;key&gt;NSExceptionRequiresForwardSecrecy&lt;\/key&gt;\r\n                &lt;false\/&gt;\r\n            &lt;\/dict&gt;\r\n        &lt;\/dict&gt;\r\n    &lt;\/dict&gt;<\/pre>\n<\/li>\n<\/ol>\n<p>Now open your view controller file from where you need to authenticate with LinkedIn. Under your view controller class, define a variable of type LinkedInSwiftHelper and pass all the requred parameters given below:<\/p>\n<pre class=\"lang:swift decode:true\">private let linkedinHelper = LinkedinSwiftHelper(configuration: LinkedinSwiftConfiguration(clientId: \"&lt;your client ID&gt;\", clientSecret: \"&lt;your client Secret&gt;\", state: \"DLKDJF46ikMMZADfdfds\", permissions: [\"r_basicprofile\", \"r_emailaddress\"], redirectUrl: \"&lt;your redirection URL&gt;\"))\r\n<\/pre>\n<ul>\n<li>client ID and client secret key can be found in your app console.<\/li>\n<li>Mention only those permissions which you have check marked under\u00a0Default Application Permissions section in your app console.<\/li>\n<li>your redirection URL would be replaced by the authorization URL you have added in your app console.<\/li>\n<\/ul>\n<p>Now call authorizeSuccess() method of LinkedInSwiftHelper class\u00a0in order to get the access token which will be useful for fetching profile info from LinkedIn server as defined below:<\/p>\n<pre class=\"lang:default decode:true \">linkedinHelper.authorizeSuccess({ (token) in\r\n\r\n            print(token)\r\n            \/\/This token is useful for fetching profile info from LinkedIn server\r\n            }, error: { (error) in\r\n\r\n            print(error.localizedDescription)\r\n            \/\/show respective error\r\n        }) {\r\n            \/\/show sign in cancelled event\r\n        }<\/pre>\n<p>If you receive an access token, only then you can request LinkedIn server to send user profile info by calling requestUrl() method of LinkedInSwiftHelper class along with the following parameters:<\/p>\n<pre class=\"lang:default decode:true\">linkedinHelper.requestURL(\"https:\/\/api.linkedin.com\/v1\/people\/~:(id,first-name,last-name,email-address,picture-url,picture-urls::(original),positions,date-of-birth,phone-numbers,location)?format=json\", requestType: LinkedinSwiftRequestGet, success: { (response) -&gt; Void in\r\n            \r\n            print(response)\r\n            \/\/parse this response which is in the JSON format\r\n        }) {(error) -&gt; Void in\r\n            \r\n            print(error.localizedDescription)\r\n            \/\/handle the error\r\n           }<\/pre>\n<p>Mention only those information related parameters in URL which you want from the LinkedIn server. Also mention the response format like JSON, xml.<\/p>\n<p>Now you have to add following method in your `AppDelegate.swift` file:<\/p>\n<pre class=\"lang:default decode:true \">func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey: Any] = [:]) -&gt; Bool {\r\n\t\t\r\n    if LinkedinSwiftHelper.shouldHandle(url) {\r\n        return LinkedinSwiftHelper.application(app, open: url, sourceApplication: options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String, annotation: options[UIApplicationOpenURLOptionsKey.annotation])\r\n    }\r\n    \r\n    return true\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<p>If you want the number of connections from the users, add &#8220;<strong>num-connections<\/strong>&#8221; key to the request url.<\/p>\n<p>Now you have all the information related to the user. Use it as per your own requirement.<\/p>\n<p>Thank You for reading us!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; Social media is everywhere and integrating any social media platform upgrades your application in every way. LinkedIn is one such platform widely used &amp; client-demanding both at the same time. Integrating Sign in from LinkedIn into your app is not a difficult process. Just follow the simple steps so that you can have an [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2693,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,71],"tags":[],"class_list":["post-2517","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ios","category-mobile"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>LinkedIn Integration in Swift 3.0 | InnovationM Blog<\/title>\n<meta name=\"description\" content=\"Learn how to integrate LinkedIn in Swift 3.0.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LinkedIn Integration in Swift 3.0 | InnovationM Blog\" \/>\n<meta property=\"og:description\" content=\"Learn how to integrate LinkedIn in Swift 3.0.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-20T07:03:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-06-07T07:32:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png\" \/>\n\t<meta property=\"og:image:width\" content=\"624\" \/>\n\t<meta property=\"og:image:height\" content=\"347\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InnovationM Admin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InnovationM Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"LinkedIn Integration in Swift 3.0\",\"datePublished\":\"2017-03-20T07:03:00+00:00\",\"dateModified\":\"2017-06-07T07:32:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/\"},\"wordCount\":783,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/02\\\/LinkedIn-SignIn-Integration.png\",\"articleSection\":[\"iOS\",\"Mobile\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/\",\"name\":\"LinkedIn Integration in Swift 3.0 | InnovationM Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/02\\\/LinkedIn-SignIn-Integration.png\",\"datePublished\":\"2017-03-20T07:03:00+00:00\",\"dateModified\":\"2017-06-07T07:32:11+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"description\":\"Learn how to integrate LinkedIn in Swift 3.0.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/02\\\/LinkedIn-SignIn-Integration.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/02\\\/LinkedIn-SignIn-Integration.png\",\"width\":624,\"height\":347},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/linkedin-integration-in-swift-3-0\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"LinkedIn Integration in Swift 3.0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\",\"name\":\"InnovationM - Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\",\"name\":\"InnovationM Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"caption\":\"InnovationM Admin\"},\"sameAs\":[\"http:\\\/\\\/www.innovationm.com\\\/\"],\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/author\\\/innovationmadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"LinkedIn Integration in Swift 3.0 | InnovationM Blog","description":"Learn how to integrate LinkedIn in Swift 3.0.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/","og_locale":"en_US","og_type":"article","og_title":"LinkedIn Integration in Swift 3.0 | InnovationM Blog","og_description":"Learn how to integrate LinkedIn in Swift 3.0.","og_url":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/","og_site_name":"InnovationM - Blog","article_published_time":"2017-03-20T07:03:00+00:00","article_modified_time":"2017-06-07T07:32:11+00:00","og_image":[{"width":624,"height":347,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"LinkedIn Integration in Swift 3.0","datePublished":"2017-03-20T07:03:00+00:00","dateModified":"2017-06-07T07:32:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/"},"wordCount":783,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png","articleSection":["iOS","Mobile"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/","url":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/","name":"LinkedIn Integration in Swift 3.0 | InnovationM Blog","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png","datePublished":"2017-03-20T07:03:00+00:00","dateModified":"2017-06-07T07:32:11+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"description":"Learn how to integrate LinkedIn in Swift 3.0.","breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/02\/LinkedIn-SignIn-Integration.png","width":624,"height":347},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/linkedin-integration-in-swift-3-0\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"LinkedIn Integration in Swift 3.0"}]},{"@type":"WebSite","@id":"https:\/\/www.innovationm.com\/blog\/#website","url":"https:\/\/www.innovationm.com\/blog\/","name":"InnovationM - Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.innovationm.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed","name":"InnovationM Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","caption":"InnovationM Admin"},"sameAs":["http:\/\/www.innovationm.com\/"],"url":"https:\/\/www.innovationm.com\/blog\/author\/innovationmadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/2517","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/comments?post=2517"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/2517\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/2693"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=2517"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=2517"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=2517"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}