调用APS Tandem modeldata/{modelID}/scan接口按指定Key过滤无元素返回
解决APS Tandem Data Scan接口调用问题
针对POST请求仅返回"v1"对象的问题
你当前的请求指定了families过滤条件,但大概率目标元素的属性类型不在你列出的["n","l","x","r","z"]范围内,导致接口返回空的v1(v1是数据版本标识,实际元素数据应包含在v1对象内部)。
解决步骤:
- 直接移除
families参数,不过滤任何属性类型,确保能拿到目标元素的所有数据:{ "includeHistory": true, "skipArrays": false, "keys": ["AdWEC4j1SUizSMxCxb93HwXXXX"] } - 如果非要保留过滤规则,先确认目标元素的属性类型(比如字符串属性对应
s、布尔属性对应b、对象属性对应o),把对应的family值加到数组中。
另外务必核对keys里的元素ID,确保是遍历资产时获取的正确值,没有拼写或截断错误。
针对GET请求返回随机元素的问题
GET版本的Data Scan接口参数需通过查询字符串传递,不能用POST的JSON格式传参。正确的请求格式应为:
GET /data-scan?keys=AdWEC4j1SUizSMxCxb93HwXXXX&includeHistory=true&skipArrays=false
如果要添加families过滤,用逗号分隔多个值:
GET /data-scan?keys=AdWEC4j1SUizSMxCxb93HwXXXX&families=n,l,x,r,z&includeHistory=true&skipArrays=false
若之前用错误方式传参(比如把JSON放在GET请求体里),会导致接口忽略过滤条件,返回随机元素。
额外检查项
确认你的访问令牌已授权data:read权限,且请求URL中的Tandem项目ID正确(完整请求路径应为https://developer.api.autodesk.com/tandem/v1/projects/{projectId}/data-scan)。
内容的提问来源于stack exchange,提问作者stuartdotnet
相关产品推荐
相关产品推荐

