---
title: "Start a live automation for a contact (approval as configured)"
method: POST
path: "/api/v1/contacts/{id}/flows"
---

# Start a live automation for a contact (approval as configured)

`POST /api/v1/contacts/{id}/flows`

## Request

- Base URL: `https://hivepublish.com`
- URL: `https://hivepublish.com/api/v1/contacts/{id}/flows`
- Auth: HTTP bearer

Runs start_flow_for_contact with the same scope, permission and approval rules.

## Path parameters

- `id` string, uuid, required

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `flowId` string, required: The live automation to start. Automation ids come from read_automations.
  - `approvalToken` string: Single-use token returned by Hive after the owner approves this exact action.

## Response `200`

Tool result

- ToolResult
  - `data` unknown, required
  - `meta` object, required
    - `tool` string
    - `workspaceId` string, uuid

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid credential
- `403`: Missing workspace scope, role permission, or plan entitlement

---

[API](https://skmtc.dev/hivepublish/apis/hive-developer-api.md) · [All operations](https://skmtc.dev/hivepublish/apis/hive-developer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hivepublish/apis/hive-developer-api/revisions/b440c763583e?raw)
