Data Exchange的 createExchange操作拒绝已发布的Revit云协作模型的source.fileId,原因是格式错误(EMEA)
我正在为ACC EMEA项目中的一个已发布的Revit Cloud工作共享模型调用APS Data Exchange GraphQL createExchange 方法。
What already works:
PublishModel返回200/items/{itemId}/tip返回一个有效的已发布版本- 动态
viewName解析工作正常
阻塞的问题在于 createExchange 将 source.fileId 视为格式错误并拒绝。
我把这两个值测试为 source.fileId:
urn:adsk.wipemea:dm.lineage:Rpzb-JclT_CiRrIJG2s6_Aurn:adsk.wipemea:fs.file:vf.Rpzb-JclT_CiRrIJG2s6_A?version=21
两者都被拒绝。
我使用的区域是 EMEA,以及这个端点:
POST https://developer.api.autodesk.com/dataexchange/2023-05/graphql
这些是请求头:
Authorization: Bearer <token>
Content-Type: application/json
Region: EMEA
这是我发送的mutation体:
{
"query": "mutation CreateExchange($input: CreateExchangeInput!) { createExchange(input: $input) { exchange { id name } } }",
"variables": {
"input": {
"viewName": "{3D - kasp084nNVZPT}",
"source": {
"fileId": "urn:adsk.wipemea:fs.file:vf.Rpzb-JclT_CiRrIJG2s6_A?version=21"
},
"target": {
"name": "DX_Auto",
"folderId": "urn:adsk.wipemea:fs.folder:co.IKtTt0VuS0Sq8ngHp9otfA"
}
}
}
}
这是我收到的响应:
{
"errors": [
{
"message": "[400 Bad Request] The following ID is malformed: urn:adsk.wipemea:fs.file:vf.Rpzb-JclT_CiRrIJG2s6_A?version=21.",
"locations": [
{
"line": 1,
"column": 57
}
],
"path": [
"createExchange"
],
"extensions": {
"x-request-id": "af217ec4-fba8-4e52-834f-822c122f5e36",
"errorType": "BAD_REQUEST"
}
}
],
"data": {
"createExchange": null
}
}
我也测试了RCW lineage id,得到同样的“malformed id”错误。
示例请求ID:
38ac0ee7-0ef8-4181-b5fc-21be18ba8b3aaf217ec4-fba8-4e52-834f-822c122f5e36
我的问题:在ACC EMEA中,createExchange 调用期望的 source.fileId 格式是什么,用于已发布的Revit Cloud工作共享模型?
我已经测试了来自 /tip 的RCW lineage项目ID和已发布版本ID,结果两者都被视为格式错误而被拒绝。
解决方案
fileId和 folderId并非来自Data Management API的 ID。它们应当是Data Exchange GraphQL API的 ID值。
对于folderId,请使用以下查询任一返回的ID值。
query GetProjectFolders ($projectId:ID!){
project(projectId: $projectId) {
id
name
folders {
results {
id
name
}
}
}
}
query GetFolderContent($folderId: ID!) {
folder(folderId: $folderId) {
id
name
folders {
results {
id
name
__typename
}
}
items {
... on Items {
results {
id
name
extensionType
}
}
}
}
}
对于fileId,请使用上述文件夹查询中项的ID值。
参考:
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。