Run provider

Executes one provider action in-process and answers the outcome.

POST /v1/auto/provider/{id}/run

Addresshttps://api.hanzo.ai/v1/auto/provider/{id}/run
MethodPOST
Operationpost_auto_provider_by_id_run
AuthAuthorization: Bearer $HANZO_API_KEY

Executes one provider action in-process and answers the outcome. The caller's resolved credential travels in auth, delivered to the action verbatim — the runtime resolves no credential itself. An action that ran and failed (or an action name the provider does not have) answers ok:false with the failure message, not an HTTP error; an unknown provider is 404 and a missing action 422.

Request

6 fields, body application/json (required).

FieldInTypeRequiredDescription
idpathstringyesID is the provider to run, from the path.
actionbodystring—Action is the name of the provider action to invoke.
authbodyany—Auth is the caller's resolved credential for the provider, handed to the action verbatim.
idbodystring—ID is the provider to run, from the path.
propsbodyobject—Props are the action's input properties, keyed by property name.
props.*bodyany—

Response

StatusBodyMeaning
200auto.runRespok
defaultproblem-detailsrefused

200 body — 3 fields.

FieldInTypeAlwaysDescription
errorbodystring—Error is the provider-level failure message when not ok.
okbodyboolean—Ok reports whether the action ran to completion.
outputbodyany—Output is the action's result when ok.

Failure carries the platform error shape — see Errors.

Examples

hanzo auto provider run <id>
import { Configuration, AutoApi } from 'hanzoai';

const api = new AutoApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.postAutoProviderByIdRun({ id: 'id', action: "<action>", auth: "<auth>" });
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).post_auto_provider_by_id_run(id='id', action="<action>", auth="<auth>")
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.AutoAPI.PostAutoProviderByIdRun(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::post_auto_provider_by_id_run(&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).postAutoProviderByIdRun();
curl -X POST https://api.hanzo.ai/v1/auto/provider/<id>/run \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "action": "<action>",
       "auth": "<auth>"
     }'

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?