Ana içeriğe geç

Workflows — client.workflow

AI-powered automation (n8n) triggered by calls or schedules.

Create & generate

  • create(name, workflow_json, trigger_type="post_call", description=None, trigger_config=None, execution_mode=None, timeout_seconds=None) → WorkflowCreateResponse — save n8n JSON directly (POST /v1/workflows/). trigger_typepost_call|in_call|webhook|schedule.
  • generate(name, description, trigger_type="post_call", trigger_config=None, agent_id=None) → GenerateResponse — AI-generate a workflow from a description (POST /v1/workflows/generate); returns workflow_json + required_secrets.
  • refine(workflow_id, feedback) → GenerateResponse — AI-refine an existing workflow.

Read / update / delete

  • retrieve(workflow_id) → WorkflowDetailResponse
  • list(trigger_type=None, status=None, agent_id=None, include_deleted=False, page=1, per_page=20) → list[WorkflowResponse]
  • update(workflow_id, **params) → dictname, description, is_active, status, execution_mode, timeout_seconds.
  • delete(workflow_id, hard=False) → dict — soft-delete by default; hard=True is permanent.
  • restore(workflow_id) → dict

Credentials, deploy, execute

  • save_secrets(workflow_id, secrets, validate_credentials=False) → dictsecrets is a list of {"key_name","value","type"}; encrypted at rest.
  • get_credential_schema(credential_type) → CredentialSchemaResponse
  • deploy(workflow_id) → DeployResponse — push to n8n and activate.
  • test(workflow_id, test_data=None) → ExecuteResponse
  • execute(workflow_id, context_data={}, execution_mode=None) → ExecuteResponse
  • list_executions(workflow_id, status=None, page=1, per_page=20) → dict
  • export(workflow_id) → dict / import_workflow(file_path) → dict

Agent linking & scheduling

  • link_agent(workflow_id, agent_id, trigger_condition_description=None, priority=0, execution_mode_override=None) → AgentWorkflowLinkResponse
  • update_agent_link(workflow_id, agent_id, **params) → AgentWorkflowLinkResponse
  • unlink_agent(workflow_id, agent_id) → dict
  • list_agents(workflow_id) → list[AgentWorkflowLinkResponse]
  • list_by_agent(agent_id) → list[AgentWorkflowListItem]
  • set_schedule(workflow_id, cron=None, interval_minutes=None, timezone="UTC") → dict (workflow must be trigger_type="schedule")
  • remove_schedule(workflow_id) → dict / get_schedule(workflow_id) → ScheduleStatusResponse / list_schedules() → dict