---
title: "Propose a Klaviyo flow (approved in the app)"
method: POST
path: "/api/v1/propose_klaviyo_flow"
tags: ["General"]
---

# Propose a Klaviyo flow (approved in the app)

`POST /api/v1/propose_klaviyo_flow`

## Request

- Base URL: `https://api.pymaia.com`
- URL: `https://api.pymaia.com/api/v1/propose_klaviyo_flow`
- Auth: HTTP bearer

Propose a Klaviyo flow (approved in the app). Create, always draft: name, trigger "list|segment|metric:<id>", pasos [{espera:{valor,unidad}}|{email:{asunto,preview?,template_id?}}] or raw definition. Or flow_id + status.

## Request body

- object
  - `name` string
  - `trigger` string
  - `pasos` object[]
  - `definition` object
  - `flow_id` string
  - `status` 'live' | 'manual' | 'draft'
  - `reason` string, required

## Response `200`

Tool executed successfully

- object
  - `ok` boolean
  - `result` unknown
  - `duration_ms` number

## Other responses

- `400`: Invalid params or handler error
- `401`: Missing or invalid Bearer token
- `403`: Missing required scope(s) (`denied_scope`), or the tool's module is disabled for the organization (`module_disabled`, with `why`, `fix` and `module`)
- `404`: Tool not found, internal-only, or excluded for OAuth connectors
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/pymaia/apis/pymaia-api.md) · [All operations](https://skmtc.dev/pymaia/apis/pymaia-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pymaia/apis/pymaia-api/revisions/705a6973177b?raw)
