Skip to content

client.flows

client.flows — the flows operations.

On AsyncKindgi every method is the same, awaited.

list(
*,
limit: int | None = None,
cursor: str | None = None,
name: str | None = None,
scope_kind: Literal['tenant', 'org', 'project'] | None = None,
scope_id: str | None = None,
inherit: bool | None = None,
timeout: float | None = None,
) -> FlowCollectionPage

List flows. GET /v1/flows

Cursor-paginated list of the latest version per flow id. Optional ?name= filters by prefix on flow id.

publish(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
**fields: Any,
) -> PublishFlowResult

Publish a flow definition. POST /v1/flows

Body is a full flow JSON. Server validates via @kindgi/flow.loadFlow before persisting. Node handler code is not uploaded through this route.

get(*, timeout: float | None = None) -> Flow

Fetch the latest version of a flow. GET /v1/flows/{flowId}

list_versions(
*,
limit: int | None = None,
cursor: str | None = None,
timeout: float | None = None,
) -> FlowCollectionPage

List versions of a flow. GET /v1/flows/{flowId}/versions

Cursor-paginated. Sort order is binding-defined (for example semver asc).

get_version(*, timeout: float | None = None) -> Flow

Fetch a specific flow version. GET /v1/flows/{flowId}/versions/{version}

unregister(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
) -> UnregisterFlowResult

Unregister a specific flow version. POST /v1/flows/{flowId}/versions/{version}/unregister

reinstate_version(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
) -> ReinstateFlowVersionResult

Reinstate a specific tombstoned flow version. POST /v1/flows/{flowId}/versions/{version}/reinstate

Un-tombstones a previously-unregistered version: clears the tombstone on that version and recomputes the latest active version. Restores the manifest bytes verbatim (semver hygiene). Idempotent — reinstating an active version returns wasTombstoned: false. Reactivates a fully-retired flow identity when applicable. Publish is always allowed regardless of retirement state — this verb restores previously-published bytes; a fresh publish is the way to bring a flow back with new bytes.