Skip to content

Move a step to a new status

Request

Move one step to a new status, such as done or blocked (blocked needs a reason). No version id is needed; it refuses only if that step changed first. Use this when someone finishes or is stuck on a step. No version is sent: a change someone else saved first is kept, and this one is applied over it, unless they changed this step, which is 409 step_changed. blocked needs blockedReason.

Security
bearerKey
Path
idstringrequired
stepIdstringrequired
Headers
Idempotency-Keystring, [ 1 .. 128 ] characters

1 to 128 characters. A retry with the same key and body returns the first result; the same key with another body is 409.

Bodyapplication/jsonrequired
statusstringrequired
Enum:"todo""in_progress""blocked""done""cancelled"
blockedReasonstring, [ 1 .. 500 ] characters
curl -i -X POST \
  'https://docs.hrcledger.com/_mock/docs/openapi/api/v1/actions/plans/{id}/steps/{stepId}/status' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "status": "blocked",
    "blockedReason": "Waiting on their legal team"
  }'

Responses

Done.

Bodyapplication/json
okanyrequired
Value:true
dataobject(PublicPlan)required
Response
{ "ok": true, "data": { "id": "Pln5tH8jKw2qR6mX9vBz", "url": "https://hrcledger.com/actions/items/Pln5tH8jKw2qR6mX9vBz", "title": "Win Inova", "objective": "Win the Inova imaging contract", "archived": false, "steps": [ … ], "revisionNo": 3, "updatedAt": "2026-10-16T14:02:11.000Z" } }