LinkedIn:为照片创建公司分享

时间:2018-02-12 15:40:33

标签: linkedin-api

我很难在Linkedin上创建公司照片分享。

我见过几个帖子,人们说,他们可以通过创建链接共享在LinkedIn上创建照片共享,传递“submitted-url”的图像URL。

E.G。考虑以下有效负载: ```

{
    "visibility": { "code": "anyone" },
    "content": {
       "submitted-url": "localhost/image.jpg"
    }
}

```

就我而言,至少,该份额在LinkedIn上显示为链接分享。我也试过提供“标题”等字段的组合,但没有运气。

接下来,我找到了以下文档:https://developer.linkedin.com/docs/guide/v2/shares/rich-media-shares#upload

这似乎与https://developer.linkedin.com/docs没有关联,所以我不知道这个文档是否仍然适用。

我尝试了以下端点:“https://api.linkedin.com/media/upload”,其中包含“Content-Type:application / x-www-form-urlencoded”和“Authorization:Bearer ...”-headers,文件有效负载但回应是:

```

{
    "serviceErrorCode": 100,
    "message": "Not enough permissions to access media resource",
    "status": 403
}

``

无关紧要,我为我的应用设置了哪些权限。

我碰巧从一些应用程序中了解到,有一种方法可以通过API在LinkedIn上分享照片共享,但我无法找到描述这些内容的正确文档。

如果您知道某种方式对您有用但尚未列在此处,请通知我和其他所有患此问题的人:)

如果来自LinkedIn的某人可以添加适当的文档,那将是一流的!

谢谢!

2 个答案:

答案 0 :(得分:0)

与此同时,我们的应用程序被LinkedIn“营销合作伙伴”程序接受,该程序允许您访问LinkedIn API V2,documentation是公开可用的,但您需要手动申请。他们可能会也可能不会接受您的申请。

只是为下一个可能会遇到这个或我们遇到的其他问题的人而烦恼。

一旦我们的应用程序被“营销合作伙伴”程序接受,我们就开始收到LinkedIn v1 API调用的奇怪错误,即“410 Gone” - “此资源在v1 API下不再可用”。

使用获得API v2权限的应用程序的所有调用都未能发生此错误。无法再将旧API与该应用程序一起使用。

确认我们的申请接受该计划的电子邮件是在这些问题开始后的一天内发送给我们的。处理API切换的奇怪方式,但幸运的是我们现在可以访问API v2。

LinkedIn API v2为您提供了上传和发布照片共享(一张或多张照片)的可能性,这是API v1无法实现的。

接受后每次调用API v1时收到的错误:

{ "status": 410, "message": "This resource is no longer available under v1 APIs", "errorCode": 0, "requestId": "removed", "timestamp": 1522333590761 }

答案 1 :(得分:0)

LinkedIn提供rich media API进行图像共享。

假设您已经具有访问令牌(access_token),您的组织ID为org_id,图像文件名为“ flower.png”

1)下面的通话可帮助您使用上传媒体API将图片上传到LinkedIn。

curl -X POST \
  https://api.linkedin.com/media/upload \
  -H 'authorization: Bearer <access_token>’ \
  -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' \
  -F fileupload=@flower.png

上面的调用返回以下响应格式:

{
    "location": “<image_urn>“
}

2)现在使用上面的image_urn作为响应,您将能够使用下面的调用创建图像共享

在进行以下调用之前,请使用原始值替换access_token,org_id和image_urn

curl -X POST \
  https://api.linkedin.com/v2/shares \
  -H 'authorization: Bearer <access_token>’ \
  -H 'content-type: application/json' \
  -d '{  "owner": "urn:li:company:<org_id>“,  
  "text": {
    "text": "test image attachemnt 0614"
  },
  "subject": "test image attachemnt 0614",
  "distribution": {
     "linkedInDistributionTarget": {} 
  },
  "content":{
    "contentEntities": [
      {
         "entity": “<image_urn>”
      }
      ],
     "description": "content description1",
     "title": "Test Share with Image"
  }
}'