Vimeo API: 如何将 vimeo 保存到子文件夹中?

Vimeo API: how to save a vimeo into a subfolder?

哪个 api 允许我作为开发人员将视频移动到文件夹中?

例如,我有视频https://vimeo.com/12345678

在我的个人区域,我在 "Video" 下创建了文件夹 "DEV"。在浏览器中打开,链接为 https://vimeo.com/manage/folders/20417534

我尝试了以下调用

POST https://api.vimeo.com/me/albums/20417534/videos/12345678 

但是我收到一个错误,抱怨相册不存在。

我想这不是正确的 API 调用方式。

我必须调用哪个API来指定将视频保存在哪个文件夹中?

您使用的 /me/albums/ 路径不正确。您需要改用 /projects/ 路径(Vimeo 最初将该功能命名为 "projects",但后来将其更改为 "folders"。API 仍沿用原来的命名约定)。

要将 /videos/12345678 中的视频添加到 https://vimeo.com/manage/folders/20417534 中的文件夹,请提出此请求:

PUT https://api.vimeo.com/me/projects/20417534/videos/12345678

或者,如果您想使用您的用户 ID,您可以将 /me/ 路径替换为 /users/666666666/,但是 /me/ 是一个不错的快捷方式,因为此请求只能真正成功你自己的文件夹。

该端点记录在此处:https://developer.vimeo.com/api/reference/projects#add_video_to_project

您不必上传然后移动视频。您可以指定参数 folder_uri 并仅发送文件夹的 uri。视频将立即出现在那里。

var parameters = new Dictionary<string, string>
{
    ["upload.approach"] = "pull",
    ["upload.link"] = link,
    ["privacy.embed"] = "private",
    ["privacy.download"] = "false",
    ["privacy.comments"] = "nobody",
    ["privacy.view"] = "unlisted",
    ["name"] = title,
    ["description"] = description
};
    
if (parentFolderId != null) {
    parameters.Add("folder_uri", parentFolderId);
}