You need to enable JavaScript to run this app.
导航

获取上传地址和凭证

最近更新时间2024.01.17 17:55:23

首次发布时间2022.12.21 11:32:38

此接口用于获取媒资(音频/视频)上传地址和凭证,并创建视频信息。

使用说明

  • 成功获取上传地址和凭证后,您还需要调用 CommitUploadInfo 接口确认上传。
  • 推荐使用服务端 SDK 进行上传。
  • 完整上传流程可参考媒资上传概述

请求说明

请求地址:https://vod.volcengineapi.com?Action=ApplyUploadInfo&Version=2022-01-01

调试

请求参数

下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共请求参数

参数类型是否必选示例值描述
ActionStringApplyUploadInfo接口名称。当前 API 的名称为 ApplyUploadInfo
VersionString2022-01-01接口版本。当前 API 的版本为 2022-01-01

SpaceName

String

test

点播空间名称。可通过以下方式获取空间名称:

  • 在视频点播控制台空间管理页面查看当前账号下所有空间的名称。
  • 调用 ListSpace 接口获取当前账号下所有空间的名称。
SessionKeyStringeyJleHRyYSI6InZpZ******YwODc4Njc1NTFcdTAwMjczdpMCJ9上一次请求返回的会话 key,在重试时建议携带上,服务端会参考该值进行再次选路。
FileSizeFloat4301565文件大小。

FileType

String

media

文件类型。上传素材时,您可以根据素材实际类型选择。取值如下:

  • media:音视频。支持素材和非素材。
  • image:图片。仅支持素材。
  • object:其它类型。支持素材和非素材。

说明

上传音视频时,FileType 默认为 media,您无需传入。

FileName

String

example/123.mp4

文件路径,即文件在点播存储中的存储位置,等同于传统对象存储的对象键(ObjectKey)概念。您可根据业务需求自定义文件路径。最大不超过 1024 个字符。

说明

  • 视频点播中,文件路径必须携带文件后缀,例如 .mp4。不强制要求携带文件前缀。
  • 具体的字符规则,请见文件命名通用字符规则
  • 设置 FileName 后, 当 FileName 相同时,有文件覆盖的风险。您需确保不同文件的 FileName 不同。
  • 传入 FileName 后,不需要再传入 FileExtension 参数。

FileExtension

String

.mp4

文件后缀,即点播存储中文件的类型。

说明

  • 传入 FileExtension 后,不需要再传入 FileName 参数。视频点播将生成 32 位随机字符串,和您传入的 FileExtension 共同拼接成文件路径。
  • 文件后缀必须以 . 开头,不超过 8 位。

StorageClass

Integer

1

存储类型。取值如下:

  • 1:(默认)标准存储。
  • 2:归档存储。
  • 3:低频存储。

返回参数

下表仅列出本接口特有的返回参数。更多信息请见公共返回参数

参数类型示例值描述
UploadAddressObject of UploadAddress-上传信息。

UploadAddress

参数类型示例值描述
StoreInfosArray of StoreInfos-上传的信息。
UploadHostsArray of Stringtob-upload-x.snssdk.com上传域名列表,可以用于客户端容灾、并行上传等。
UploadHeaderArray of UploadHeader-分片上传时的 HTTP Header。
SessionKeyStringeyJleHRyYSI6InZpZGM9Ym9******YwODc4Njc1NTFcdTAwMjczdpMCJ9一次上传会话 key,上传完成上报时使用该值,类似于 HTTP 协议的 cookie 机制。

StoreInfos

参数类型示例值描述
StoreUriStringtos-v-da******b686cc06f489098文件存储地址。
AuthStringSWT46O******iNjg2Y2MwNmY0ODkwOTg=文件上传凭证。

UploadHeader

参数类型示例值描述
KeyStringStorageClass上传时 Header 需要携带的 Header Key。
ValueStringarchive上传时 Header 需要携带的 Header Value。

请求示例

https://vod.volcengineapi.com?Action=ApplyUploadInfo&Version=2022-01-01&SpaceName=yourSpaceName&SessionKey=&FileSize=&FileType=&FileName=&FileExtension=&StorageClass=

返回示例

{
  "ResponseMetadata": {
    "RequestId": "2020110***0590B0006DE",
    "Action": "ApplyUploadInfo",
    "Version": "2022-12-01",
    "Service": "vod",
    "Region": "cn-north-1"
  },
  "Result": {
    "Data": {
      "UploadAddress": {
        "StoreInfos": [
          {
            "StoreUri": "tos-v-da******b686cc06f489098",
            "Auth": "SWT46O******iNjg2Y2MwNmY0ODkwOTg="
          }
        ],
        "UploadHosts": [
          "tob-upload-x.snssdk.com"
        ],
        "UploadHeader": [
          {
            "Key": "StorageClass",
            "Value": "archive"
          }
        ],
        "SessionKey": "eyJleHRyYSI6InZpZGM9Ym9******YwODc4Njc1NTFcdTAwMjczdpMCJ9",
        "FlushUploadResult": {}
      }
    }
  }
}

错误码

下表列举了本接口特有的错误码。视频点播公共错误码,详见公共错误码

状态码错误码错误信息说明
400InvalidParameter.InvalidAccessKeyError-AK 错误。
400InvalidParameter.InvalidParamError-参数错误,包括 Session 的各个部分错误。
400InvalidParameter.UserNotSupportTosError-账号配置错误。
429RequestLimitExceeded.TooManyRequestError-请求超过上限。
400InvalidParameter.InvalidSpaceError-Space 填写错误。
404ResourceNotFound.VideoNotFoundError-未找到对应视频。
400InvalidParameter.InvalidTopAccountError-账号无权限。
403RequestForbidden.AccessIsRestricted-账号访问受到限制。
500InternalError.SaveDBError-内部错误。
500InternalError.RunFunctionError-内部错误,执行 Function 时失败。
500InternalError.GetSignError-内部错误,获取上传地址签名失败。
500InternalError.RunPluginError-内部错误,运行插件失败。
500InternalError.InternalError-内部错误。

服务端 SDK

点播 OpenAPI 提供了配套的服务端 SDK,支持多种编程语言,帮助您实现快速开发。建议使用服务端 SDK 来调用 API,此 API 各语言调用的示例代码,请参考如下: