---
title: "Force stack reconcile"
method: POST
path: "/stacks/{stack}/reconcile"
tags: ["stacks"]
---

# Force stack reconcile

`POST /stacks/{stack}/reconcile`

Triggers a one-shot reconcile for a specific stack. This creates and executes a
reconcile command that reverts any out-of-band changes to managed resources on the
stack back to their last-known desired state. The reconcile is equivalent to
re-applying the last reconcile snapshot. The command executes asynchronously —
use the returned command_id to poll for completion via GET /commands/:id/status.

Side effects: This endpoint creates real infrastructure changes. Any resources that
have been modified outside of formae since the last reconcile will be reverted to
their managed state. This is a destructive operation for out-of-band changes.

## Path parameters

- `stack` string, required

## Response `200`

OK: No drift detected, nothing to reconcile.

- ModelForceReconcileResponse
  - `command_id` string
  - `message` string

## Other responses

- `202` — Accepted: Reconcile command created and executing.
- `403` — Forbidden: Stack does not have an auto-reconcile policy.
- `409` — Conflict: Stack has active commands, reconcile skipped.
- `500` — Internal Server Error.

---

[API](https://skmtc.net/platform-engineering-labs/apis/formae-rest-api.md) · [All operations](https://skmtc.net/platform-engineering-labs/apis/formae-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/platform-engineering-labs/formae-rest-api/versions/e4ee5fb76a4f/schema)
