用途:在 Celigo 中构建 flow(流程),即按计划、由事件(webhook、监听器)或以其他 flow 触发的方式,把数据从一个或多个源系统移动到目标系统的集成流水线。flow 自身启动,这是它与 API(由 HTTP 调用方触发)和工具(由消费者触发)的主要区别。
主要能力:
- 页面生成器:计划导出(cron,支持全量/增量/查询/FTP、SFTP、S3 文件)和监听器(webhook 或 NetSuite/Salesforce 原生实时事件)。一个 flow 可混用多种生成器,如实时加批量兜底、合并多源、同源不同切片。
- 拓扑结构:线性(pageProcessors 扁平列表,无路由器)、分支(routers + 分支条件,支持输入过滤器 S-表达式或 JavaScript 脚本,支持 first_matching_branch 与 all_matching_branches)、抽象/实例(isAbstract: true 定义不可执行的模板,实例通过 _abstractFlowId 和 overrides 继承)。顶层只能用 pageProcessors 或 routers 之一。
- 响应映射:把本步骤响应中的字段传给下一步。若流程以拉取型导入结束且无下游消费,数据会被丢弃。
- 运行时控制:proceedOnFailure、skipRetries、runPageGeneratorsInParallel、autoResolveMatchingTraceKeys。
- 链式触发:_runNextFlowIds、_runNextExportIds。
使用方式:先规划流程与拓扑,用 celigo integrations list 找到集成,再用 celigo account search/dependencies/lint 和 celigo templates marketplace 查现有模式,自底向上构建连接、导出、导入,最后构建 flow。调度使用 6 段 cron 加 IANA 时区,监听类省略两者。始终以 disabled: true 创建,用 celigo flows get 校验后再启用。常用命令包括 celigo flows list/get/create/update/set/delete、celigo flows run、test-run、test-run-step-results、clone、add-generator、remove-generator、add-processor、remove-processor、replace-connection 以及 errors、resolve-errors、retry-errors 等错误管理命令。
适用场景:夜间对账、按小时增量同步、回填、事件驱动(“当 X 发生则做 Y”)、多租户或跨区域复用同一结构。
限制:沙箱与生产不可混用(sandbox: true 的 flow 只能用 sandbox: true 的连接);抽象流程不可执行;实例的 _integrationId 不继承,必须显式设置;平行生成器可能触发 API 速率限制;路由器模式与线性模式不可在同一顶层混用。具体字段定义需参考资料列出的各 schema 文件。