Update flows

Updates one automation's metadata in place.

PATCH /v1/auto/flows/{id}

Addresshttps://api.hanzo.ai/v1/auto/flows/{id}
MethodPATCH
Operationpatch_auto_flows_by_id
AuthAuthorization: Bearer $HANZO_API_KEY

Updates one automation's metadata in place. Every field is optional; a field the request omits is left alone. Publishing a version pins which one runs, and is refused unless that version belongs to this flow.

Request

6 fields, body application/json (required).

FieldInTypeRequiredDescription
idpathstringyesID is the flow to update, from the path.
externalIdbodystring—ExternalID sets the caller's own id for this flow.
folderIdbodystring—FolderID moves the flow in the builder's tree.
idbodystring—ID is the flow to update, from the path.
metadatabodyany—Metadata replaces the caller's opaque JSON.
publishedVersionIdbodystring—PublishedVersionID pins the version runs execute.

Response

StatusBodyMeaning
200auto.Flowok
defaultproblem-detailsrefused

200 body — 9 fields.

FieldInTypeAlwaysDescription
createdbodyinteger (int64)—
externalIdbodystring—
folderIdbodystring—
idbodystring—
metadatabodyany—
projectIdbodystring—projectId == org (server-derived)
publishedVersionIdbodystring—
statusbodystring—
updatedbodyinteger (int64)—

Failure carries the platform error shape — see Errors.

Examples

hanzo auto flows update <id>
import { Configuration, AutoApi } from 'hanzoai';

const api = new AutoApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.patchAutoFlowsById({ id: 'id', externalId: "<externalId>", folderId: "<folderId>" });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import AutoApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = AutoApi(client).patch_auto_flows_by_id(id='id', external_id="<externalId>", folder_id="<folderId>")
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.AutoAPI.PatchAutoFlowsById(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, auto_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = auto_api::patch_auto_flows_by_id(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.AutoApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new AutoApi(client).patchAutoFlowsById();
curl -X PATCH https://api.hanzo.ai/v1/auto/flows/<id> \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "externalId": "<externalId>",
       "folderId": "<folderId>"
     }'

MCP reaches auto through the auto tool, which names its 14 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_auto_flows"
         }
       }
     }'

Auto API · All Hanzo APIs · Interactive reference

Was this page useful?