LinkedIn V2 API视频共享错误或我错过了什么?

时间:2019-05-20 18:13:10

标签: post linkedin linkedin-api

我正在使用ugcPost端点生成我的共享。

根据文档,我正在发出预上传请求(包括多部分设置),并且收到对该请求的适当的多部分响应。但是,绝对没有aws key-id或其他任何内容……标头上传为多部分后,标头mentioned in the sample不是我收到的标头。

他们提到了对单个零件上传请求的以下响应:

{
  "value": {
      "asset": "urn:li:digitalmediaAsset:C5400AQHpR1ANqMWqNA",
      "mediaArtifact": "urn:li:digitalmediaMediaArtifact:(urn:li:digitalmediaAsset:C5400AQHpR1ANqMWqNA,urn:li:digitalmediaMediaArtifactClass:aws-userUploadedVideo)",
      "uploadMechanism": {
          "com.linkedin.digitalmedia.uploading.MediaUploadHttpRequest": {
              "headers": {
                  "Content-Type": "application/octet-stream",
                  "x-amz-server-side-encryption": "aws:kms",
                  "x-amz-server-side-encryption-aws-kms-key-id": "e10ace24-blah-4977-bar-89foo193e2ab"
              },
              "uploadUrl": "https://video-uploads.s3-accelerate.amazonaws.com/C5400AQHpR1ANqMWqNA/aws-userUploadedVideo?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20180120T000018Z&X-Amz-SignedHeaders=content-type%3Bhost%3Bx-amz-server-side-encryption%3Bx-amz-server-side-encryption-aws-kms-key-id&X-Amz-Expires=86400&X-Amz-Credential=AKIAJYU2MA%2F20180120%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=f7c0756a80998786766588878768778768977687d4c687b3f1a0e8"
          }
      }
   }
}

但是,当我注册分段上传时,我会收到类似的消息:

{
   "value": {
       "uploadMechanism": {
           "com.linkedin.digitalmedia.uploading.MultipartUpload": {
              "metadata": "base64_encoded_metadata",
              "partUploadRequests": [
                  {
                      "headers": {
                          "Content-Length": "5242880",
                          "Content-Type": "application/octet-stream"
                      },
                      "urlExpiresAt": 1558459064787,
                      "byteRange": {
                          "lastByte": 5242879,
                          "firstByte": 0
                      },
                      "url": "https://video-uploads-prod.s3-accelerate.amazonaws.com/ABCD/aws-userUploadedVideo?uploadId=xxx&partNumber=1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=xxx&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=86400&X-Amz-Credential=xxx&X-Amz-Signature=xxx"
                  },
                  {...other_parts...}
               ]
            }
        }
    }
}

据我了解,我应该在partUploadRequests数组上进行迭代,并使用其中每个“块”中包含的标头进行分段上传。我得到的这些标题...当我将其作为多部分请求时,我没有从LinkedIn获得"x-amz-server-side-encryption"标题。因此,当我尝试上传块时,我从亚马逊收到一条错误消息,说一些有关签名的信息...

<Error><Code>SignatureDoesNotMatch</Code><Message>The request signature we calculated...(truncated)

我在多部分上传的范围之外发出此请求没有问题...但是当我尝试将其分成多部分时,它就失败了。

与他们的api文档一致,如果我没有执行此操作的权限,我希望得到4xx错误...但是我没有得到这样的错误,只是我没有获得正确的标题来自LinkedIn?

这是我在初始上传注册请求正文中发送的内容:

{
    "registerUploadRequest": {
        "supportedUploadMechanism": ["MULTIPART_UPLOAD"],
        "fileSize": 123123123,
        "owner": "url:li:organization:x123123123",
        "recipes": [
            "urn:li:digitalmediaRecipe:feedshare-video"
        ],
        "serviceRelationships": [
            {
                "identifier": "urn:li:userGeneratedContent",
                "relationshipType": "OWNER"
            }
        ]
    }
}

我的应用程序具有Marketing Dev。平台访问权限,我正在遵循以下文档说明:https://docs.microsoft.com/en-us/linkedin/marketing/integrations/community-management/shares/vector-asset-api#register-an-upload

到目前为止,仅当尝试进行多部分上传时才成功。到目前为止,我已经能够成功发布单个图像帖子和帖子的文章类型...但是视频上传使我望而却步...

有人能对此有所启发吗?

编辑:发布此消息后几乎立刻((在我之前搜索时未显示)我发现this question似乎暗示着尚不支持这种上传?到目前为止,这里有一些错误,任何人都可以进一步确认它不受支持!!

1 个答案:

答案 0 :(得分:0)

视频上传是一项受限制的功能,仅授予选择开发人员。

来源: https://docs.microsoft.com/en-us/linkedin/marketing/integrations/community-management/shares/ugc-post-api