---
title: "Start a cook operation"
method: POST
path: "/api/v1/cook"
tags: ["cook"]
---

# Start a cook operation

`POST /api/v1/cook`

Triggers a recipe cook on one or more sprouts. The request body
contains a `TargetedAction` with a `CmdCook` action payload
specifying the recipe path, target sprouts/cohorts, and options
like test mode and timeout.

## Request body

- TargetedAction — A targeted action request containing a list of sprout targets and an action payload. Used by cook, cmd.run, and test.ping endpoints.
  - `target` object[], required — List of sprouts to target
    - `id` string, required — Sprout identifier
  - `action` unknown, required

## Response `200`

Cook initiated

- NATSEnvelope — Standard NATS proxy response envelope. On success, `result` contains the response data. On error, `error` contains a message string.
  - `result` unknown
  - `error` string — Error message (present only on failure)

## Other responses

- `400` — Bad request — missing or invalid parameters
- `502` — NATS communication error — farmer unreachable or returned an error

## Changes

- **2026-03-21** `011f9b67b17a` — 3 breaking, 2 info
  - added the new required request property `action`
  - added the new required request property `target`
  - the response's body type/format changed from ``/`` to `object`/`` for status `200`
  - added the optional property `error` to the response with the `200` status
  - …1 more
- **2026-03-15** `1aab0676c2b4` — 1 breaking, 4 warning
  - the response's body type/format changed from `object`/`` to ``/`` for status `200`
  - removed the request property `action`
  - removed the request property `target`
  - removed the optional property `error` from the response with the `200` status
  - …1 more
- **2026-03-13** `26871a2f667f` — 1 breaking, 4 warning
  - the response's body type/format changed from `object`/`` to ``/`` for status `200`
  - removed the request property `action`
  - removed the request property `target`
  - removed the optional property `error` from the response with the `200` status
  - …1 more

[Change history](https://skmtc.dev/gogrlx/apis/grlx-cli-api/changes/api/v1/cook/post.md)

---

[API](https://skmtc.dev/gogrlx/apis/grlx-cli-api.md) · [All operations](https://skmtc.dev/gogrlx/apis/grlx-cli-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gogrlx/grlx-cli-api/revisions/f88a30dcb10f/schema)
