SuperAPI AI 工具集

programmatic-filters

通用与其它

查看项目

更新于 10-15 23:39

技能介绍

用途:在嵌入的 Domo 仪表板或卡片中,按查看者控制可见数据。采用代理用户(服务账号)代表所有查看者,由服务端下发带过滤条件的嵌入令牌,过滤由 Domo 强制执行,终端用户无法绕过。客户端过滤可参考 jsapi-filters。

必要准备:Domo API 客户端(CLIENT_ID、CLIENT_SECRET)、嵌入 ID(来自嵌入对话框的 5 位 ID,非页面 URL)、用于过滤的数据集列名或 ID。鉴权须在服务端完成,不可暴露凭据。

使用流程:1)用 OAuth 客户端凭据换取访问令牌;2)携带访问令牌请求嵌入令牌,在 authorizations 中放入 filters、sqlFilters、policies、datasetRedirects;仪表板端点 https://api.domo.com/v1/stories/embed/auth,卡片端点 https://api.domo.com/v1/cards/embed/auth;3)客户端用隐藏 POST 表单把嵌入令牌提交到 iframe,仪表板地址 https://public.domo.com/embed/pages/{embed_id},卡片地址 https://public.domo.com/cards/{embed_id},POST 方式可避免令牌出现在 URL 或浏览器历史中。

能力:标准过滤支持 column、operator、values,可选 datasourceId;操作符包括 IN、NOT_IN、EQUALS、NOT_EQUALS、GREATER_THAN、GREATER_THAN_EQUALS_TO、LESS_THAN、LESS_THAN_EQUALS_TO。SQL 过滤使用 sqlFilters 的 sqlFilter 与可选 datasourceIds,支持 IN、NOT IN、BETWEEN、LIKE、AND、OR、IS NULL、IS NOT NULL,列名用反引号、字符串用单引号。两类过滤可同时使用。datasetRedirects 可按租户把原始数据集重定向到同构目标数据集,重定向先于过滤执行。

限制与注意事项:嵌入令牌大小约 8KB 上限,值列表过长需改用 SQL 过滤或拆分;列名须精确匹配大小写;空 filters 表示不过滤;values 必须是数组,数值用数字;令牌须按请求生成并在服务端校验,遵循最小权限。