Workflows and Lineage¶
The MOI Python SDK and Go SDK both support workflow creation and job lookup. Each SDK has two client layers:
RawClientmaps directly to service APIs and is the right layer for assembling a workflow graph or paging through jobs.SDKClientwrapsRawClientwith helpers for a document-processing workflow and job waiting.
Current coverage¶
The following table reflects the public source on the main branch of both official repositories:
Capability |
Python |
Go |
|---|---|---|
Create a custom node graph |
|
|
Create the built-in document pipeline |
|
|
List jobs with pagination |
|
|
Find one job by workflow and source file |
|
|
Wait for a job to appear or reach a status |
|
|
The SDKs currently have no public methods for reading, updating, deleting, or explicitly starting a workflow; pausing, resuming, canceling, retrying, or rerunning a job; listing WorkItems; publishing operator API services; or querying lineage. The pages in this section document those boundaries instead of inventing methods that do not exist.
A workflow ID identifies the definition. A job ID identifies the work created for a source file. Job lookup and waiting normally require the workflow ID and source-file ID together; do not interchange these identifiers.
Recommended path¶
Obtain stable IDs for the source volume, target volume, and source file.
Create the standard document pipeline with the high-level helper, or create a graph with
WorkflowMetadataor a Python dictionary.Write a file to the source volume. A workflow with
ProcessMode.Interval = -1is triggered on file load.Find or wait for the job by workflow ID and source-file ID.
After completion, use the Catalog/File APIs to read results from the target volume.