Skip to Content
Technical Articles

OpenConnectors-LinkedIn Integration made simple with SAP CPI & Open Connectors

Introduction:

Hope in SAP TechEd#2018 most of us heard about Open Connectors and In below blog will try to show an end to end scenario of LinkedIn Share by leveraging SAP CP -Open Connectors.

Scenario:

Create a new post in LinkedIn by sending the message from POSTMAN.

 

Create an App in LinkedIn:

Login to https://www.linkedin.com/developers/ and follow below steps

Step 1:

Click on Create new app and fill all the required details like shown below

Click on Create app by accepting legal terms then you are successfully created with app which should look like below

Step 2:

Configure the authentication with open connectors redirect url [ https://auth.cloudelements.io/oauth ]

Open Connector Configuration:

Step 1:

Login to Open Connectors and click on Connectors & search for LinkedIn Connector.Click on Authenticate.

Step 2: 

Use the API Key & Secret from LinkedIn Application and click on Create instance which will trigger below screens to login & allow your application from LinkedIn perspective.

Step 3:

This will redirect to Open Connector Instance page with status connection result and then click on Test API Docs.

Step 4:

Navigate to share API and click on try out.

Step 5:

Add below payload in body which will create a post with some content in LinkedIn once you hit execute button.

Step 6:

Navigate to curl once you get response body with code 200 and copy the below highlighted parts which will be used in SAP CPI HTTP receiver adapter.

Step 7:

Its time to see the result of post created directly from Open Connector API Docs.

SAP CPI IFlow creation:

Lets create an iflow to push the data from POSTMAN tool and get it posted in LinkedIn.

Step 1:

Add HTTP channel with address /create_share.

Step 2:

Add content modifier to delete all the headers( just make sure any unwanted headers will not be sent further to Step#4.

Step 3:

Add content modifier to set the header Authorization with the value highlighted in Step#6 of open connectors.

Step 4:

Add Request-Reply step with HTTP receiver adapter to have end point url captured from Step#6 of open connector.

Now are you are done with all the required configuration and good to go with deployment.

Testing:

Copy the end point url from SAP CPI monitoring like below

Configure the Postman and pass below payload as body

{
  "comment": "Check out developer.linkedin.com!",
  "content": {
    "title": "LinkedIn Developers Resources",
    "description": "Leverage LinkedIn's APIs to maximize engagement",
    "submitted-url": "https://developer.linkedin.com",  
    "submitted-image-url": "https://example.com/logo.png"
  },
  "visibility": {
    "code": "anyone"
  }  
}

Lets see the result.

Conclusion:

Open Connectors really reduce the development effort of Integration Developer by solving most of the complexities from connection perspective.

Reference:

[ 1 ] – LinkedIn Share API

[ 2 ] – Open Connector Blog series

 

Hope this help our developers of community..!

Regards,

Sriprasad Shivaram Bhat

13 Comments
You must be Logged on to comment or reply to a post.
  • Hi Sriprasad,

    A very beautiful blog explaining how the open connector works!!

    A few points that is stopping here.

    When I send the JSON payload, I’m not able to post it. I get a response like below

     

    {

    “requestId”: “5c1a6358e4b0b792d1984a94”,

    “message”: “Request failed”,

    “providerMessage”: “errorCode – 0, message – Access to posting shares denied, requestId – 6LAR1DSAZ6, status – 403, timestamp – 1545233240705”

    }

     

    Referring to few blogs I found that in app Permissions, we have to keep w_share enabled. I did that too. but no luck. My guess is that, LinkedIn is restricting the APIs to access due to data security Policy. Any methods to resolve this issue ?

     

    Thanks,

    Sidharth VR

    • Hello Siddharth,

      Please follow the below then you should be able to resolve the issue.

      Once you are done with first time configuration of LinkedIn Instance( save it ),go back to home page and follow below.

      Hover on LinkedIn Icon and click on instance.

      Click on edit

      Click on re-authenticate which will redirect to LinkedIn sign on or if already session alive it will get re-authenticated.Then try to post it should work.

      Regards,

      Sriprasad Shivaram Bhat

       

  • Great Blog, I was able to replicate it.

    Thanks for sharing it!!!

    Could you please share business requirement where this can be used?

    Please correct me if my understanding is wrong here, if we want to connect to any 3rd party cloud application system then they will provide us URL and authorization details to communicate.

     

    How this openConnector going to help me in designing my IFlows in CPI?

     

    BR,

    Rashmi

    • From LinkedIn integration perspective you might use it in SF RCM/RKM while dealing with recruitment.

      Apart from SAP CPI this can be used with other SAP CP services like SAP Cloud Platform API Management,SAP Mobile Services,SAP Workflow Services.

      From Integration Developer perspective, Yes url will be given by 3rd party systems and type of authentication they support.In above blog just to give clear picture, shown end to end process.

      From SAP CPI perspective it reduces the complexity of connectivity part.If you take above example only first you need to get the OAuth2.0 credentials and then you need to pull the token which leads you to make multiple calls to other system & you need to design above connectivity part in your IFlow.

      Other Example I can give is usage of SOAP Axis adapter to connect to SuccessFactors and usage of SucessFactors Adapter in CPI.Usually customer landscape comprises of multiple 3rd party systems instead of creating Adapters inside SAP CPI,Open Connectors are rolled out [ which can be used across multiple SAP CP services ]

      Suggest you to go through blog series written by Divya Mary

      Hope this clear your doubts.

      Regards,

      Sriprasad Shivaram Bhat

  • Hi Sri,

     

    Nice blog, successfully executed the test . but i have one question , how did you get the structure for posting the Json payload. please post that as well , which is more helpful.

    Thanks and Regards,

    Vijay.

  • Hi,

     

    Great blog but i have one issue.

    i am getting the following error when using the ” try it out” feature –

    {
      "requestId": "5cab0e85e4b0b942749c9d08",
      "message": "Request failed",
      "providerMessage": "errorCode - 0, message - This resource is no longer available under v1 APIs, requestId - CNYZGNDSSL, status - 410, timestamp - 1554714247263"
    }
    
    Have you seen this before? 
    
    Thanks 
    
    Dale
  • Hello Dale,

    There was a change at LinkedIn side for these APIs and we are working with OpenConnectors development team to get this fixed.

    Will update the blog once fix made by them.

    Regards,

    Sriprasad Shivaram Bhat