---
title: "POST /v1/runs/{id}/nodes/{nodeId}/resume"
method: POST
path: "/v1/runs/{id}/nodes/{nodeId}/resume"
---

# POST /v1/runs/{id}/nodes/{nodeId}/resume

`POST /v1/runs/{id}/nodes/{nodeId}/resume`

Resume a waiting node in a workflow run

## Path parameters

- `id` string, required
- `nodeId` string, required

## Query parameters

- `secret` string, required

## Request body

- union
  - object
  - InternalAppApiHttpV1RunResumeBody
    - `data` object
    - `forEachContext` ForEachContext
      - `index` integer
      - `parentNodeId` string — Legacy fields kept for backward-compatible JSON deserialization. New code should only use Stack.
      - `stack` ForEachLevel[] — Stack holds nesting levels from outermost to innermost. Single-level for-each uses a stack of length 1.
        - `index` integer — Current iteration index (0, 1, 2...)
        - `parentNodeId` string — For-each node ID (e.g., "for_each_send")
        - `total` integer — Total iterations (for progress tracking)
      - `total` integer

## Response `200`

OK

- ResumeResult
  - `action` string — "resumed" or "skipped"
  - `reason` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found

---

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