list_storage_driver_descriptors
const url = 'https://example.com/api/v1/admin/policies/storage-drivers';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}use reqwest;
#[tokio::main]pub async fn main() { let url = "https://example.com/api/v1/admin/policies/storage-drivers";
let mut headers = reqwest::header::HeaderMap::new(); headers.insert("Authorization", "Bearer <token>".parse().unwrap());
let client = reqwest::Client::new(); let response = client.get(url) .headers(headers) .send() .await;
let results = response.unwrap() .json::<serde_json::Value>() .await .unwrap();
dbg!(results);}curl --request GET \ --url https://example.com/api/v1/admin/policies/storage-drivers \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”List storage driver capability descriptors
统一 API 响应格式
成功: { "code": "success", "msg": "", "data": {...} }
失败: { "code": "auth.credentials_failed", "msg": "Invalid Credentials" }
object
object
管理端/服务端可执行动作声明。
object
该 action 可通过哪些后端 endpoint 执行。
用于把 action 归类到授权、连接测试、policy action 等入口。
True 表示该动作会修改 provider 远端状态。
True 表示执行前必须存在可用授权凭据。
True 表示必须先保存 policy,draft 参数不能执行。
授权 provider,例如 microsoft_graph。
存储对象能力。
object
是否支持容量观测。
是否支持高效 range read。
是否支持底层对象路径列举。
底层对象路径采用 opaque UUID,还是保留原文件名作为 provider item name。
是否暴露对象存储 upload/download strategy 选项。
是否支持 presigned download。
是否需要或支持 remote node 绑定。
是否支持 provider/storage-native media metadata。
是否支持 provider/storage-native thumbnail。
Connector 的主要凭据模式。
人类可读说明。
Connector-owned recommendations for moving a policy to a more specific driver.
object
Host rules owned by the source connector.
This keeps provider-detection rules in connector metadata instead of in the admin UI. Frontend code only performs generic URL host matching.
object
Suffix hostname match after URL parsing and lower-casing.
Exact hostname match after URL parsing and lower-casing.
Candidate driver that should be suggested for matching endpoint hosts.
持久化到 policy 的 driver type。
当前部署是否启用该 connector。
管理端配置字段声明。
object
True 表示 endpoint 可以省略 URL scheme,由 connector 在后端补齐或解释。
Endpoint 允许的 URL protocol,取值与浏览器 URL.protocol 一致,例如 https:。
可选 help 文案 key。
Endpoint 协议不合法时的前端文案 key。
前端可用的基础控件类型。
前端本地化 label key。默认通常等于 name。
提交 payload 中的字段名。
Select/radio 等枚举控件的稳定取值。
可选 placeholder,本地化策略由前端决定。
是否必填。复杂条件校验仍由 connector/service 做最终裁决。
字段必填校验失败时的前端文案 key。
字段进入哪个配置域。
是否是敏感字段,前端应按 secret input 处理,后端不应明文回显。
True 表示该字段失焦时前端可以安全 trim。
同一字段只对部分 driver 可见时使用。为空表示不额外限制。
人类可读名称。
用于开发追踪的相关 issue 编号,不参与业务逻辑。
是否需要额外授权才能成为可用 policy。
管理端展示元数据。
这类 label/icon/helper 虽然最终由前端渲染,但语义上属于 connector: 新 connector 不应该要求前端再维护一份 driver 展示矩阵。
object
Base_path 为空时展示的 fallback 文案。
Base_path input placeholder。
创建向导配置步骤说明 key。
创建向导配置步骤标题 key。
前端 i18n description key。
编辑页上下文说明 key。
创建向导右侧 helper 文案 key。
Icon 库名称兜底。
Driver 选择卡片/上下文条图标资源。
前端 i18n label key。
上传工作流能力。
object
是否允许前端直接拿 provider-native session 上传。
支持对象存储 multipart/block upload 语义。
对象存储 multipart/block upload 的具体语义。
object
是否支持清理未完成的 provider multipart/block upload。
Complete 阶段是否需要显式提交 part 列表。
是否支持查询 provider 已接收的 part/block 列表。
Provider 最小非 final part 大小。
True 表示实际 part size 由 policy chunk_size 决定,但会被 min_part_size 修正。
浏览器直传 part 后是否必须从响应读取 ETag。
Azure block upload 通过 URL 中的 blockid 作为 completion token,因此不要求 浏览器能读 ETag;S3-compatible multipart 通常需要 ETag。
浏览器是否可以通过 presigned URL 直传 part。
AsterDrive 服务端是否可以 relay 上传 part。
支持浏览器/客户端使用 presigned URL 直传。
支持 provider-native resumable/session upload。
Provider-native resumable/session upload 的具体语义。
该字段只描述 provider 自己的 session/range 协议,例如 Microsoft Graph upload session。S3-compatible multipart/block upload 不应填这里。
object
当前实现是否向上层暴露 provider-native abort。
后端默认使用的分片大小。
分片边界对齐要求。
是否允许浏览器直接拿 provider session 上传。
Provider 是否在最后一个 range/fragment 接收后隐式完成 session。
Provider 或当前实现允许的最大分片大小。
小文件可绕过 resumable session 的大小上限。
Provider 接受的最小分片大小。
Provider 标识,例如 microsoft_graph。
面向 UI/诊断的 session 名称,例如 Microsoft Graph upload session。
当前实现是否向上层暴露 provider-native status/query。
后端/客户端可以用单请求写入小对象。
单请求上传的静态语义。实际是否走 direct 仍受 policy chunk_size 限制。
object
Provider 自身单请求 API 的最大对象大小;None 表示当前 connector 不声明静态上限。
True 表示单请求 direct/relay 上限由具体 policy chunk_size 决定。
True 表示浏览器把对象发给 AsterDrive,由后端 relay 到 provider。
后端可以通过 StreamUploadDriver 把 reader 写入 provider。
Example
{ "code": "success", "data": [ { "actions": [ { "affordance_action": "start_authorization", "endpoints": [ "execute_draft_storage_policy_action" ], "kind": "policy_action", "policy_action": "configure_tencent_cos_cors" } ], "capabilities": { "object_naming": "opaque_uuid" }, "credential_mode": "none", "driver_recommendations": [ { "target_driver_type": "local" } ], "driver_type": "local", "fields": [ { "kind": "text", "scope": "connection", "visible_when_driver_types": [ "local" ] } ] } ]}Unauthorized
Forbidden