【问题标题】:Autodesk Construction Cloud API unavailable endpointsAutodesk Construction Cloud API 端点不可用
【发布时间】:2023-01-03 14:44:54
【问题描述】:
我们的团队正在使用 Autodesk Construction Cloud,它的 Docs 模块非常重要。正因为如此,我们正在尝试开发一些内部工具来自动化他们所做的一些工作,主要是围绕复制文件。
在 ACC Docs 中,您可以轻松地将文件从一个文件夹复制到另一个文件夹。从我们的调查来看,ACC 似乎在内部使用这样的端点来复制文件:
https://developer.api.autodesk.com/dm/v3/projects/{{projectId}}/documents:copy?targetFolder={{targetFolder}}
通过使用来自 ACC 请求的身份验证令牌(从浏览器获取),我们可以轻松地使用来自 Postman 甚至 AWS Lambda 函数的此调用。但是,当我们使用从文档中描述的三足认证过程获得的认证令牌时,相同的 API 调用失败。
现在甚至有可能获得与该端点一起用于复制 ACC 文档文件的身份验证令牌吗?还是因为这个 API 仍然不是真正的“公开”,所以现在不可用?
【问题讨论】:
标签:
autodesk-forge
autodesk
autodesk-bim360
autodesk-construction-cloud
【解决方案1】:
新年快乐!
这些 API 是内部 API。请不要尝试使用它们。即使它可能有效,您也要自行承担使用它的风险..
关于将文件从一个文件夹复制到另一个文件夹,您可以使用公共 API。拿到原文件的版本urn后,调用下面的endpoint,参数为
POST https://developer.api.autodesk.com/data/v1/projects/{PROJECT_ID}/items?copyFrom=urn%3Aadsk.wipprod%3Afs.file%3Avf.rH_L4XJsTmeiYA4ixCVNAA%3Fversion%3D1
与负载,其中指定目标文件夹。
{
"jsonapi": {
"version": "1.0"
},
"data": {
"type": "items",
"relationships": {
"tip":{
"data":{
"type":"versions",
"id":"1"
}
},
"parent": {
"data": {
"type": "folders",
"id": "urn:adsk.wipprod:fs.folder:co.0xaYa2rVTJuFiz7rxLCOQQ"
//!<<< The folder we want to put this file
}
}
}
},
"included":[
{
"type":"versions",
"id":"1",
"attributes":{
"name":"rac_basic_sample_project.rvt" //!<<< Version name
}
}
]
}