---
title: "Reconcile backup metadata with restic snapshots"
method: POST
path: "/api/clusters/{clusterName}/backups/reconcile"
tags: ["ClusterBackup"]
---

# Reconcile backup metadata with restic snapshots

`POST /api/clusters/{clusterName}/backups/reconcile`

This endpoint triggers a manual reconciliation check to detect drift between backup metadata files and restic snapshots.
Required grant: db-backup

## Path parameters

- `clusterName` string, required

## Headers

- `Authorization` string, required

## Response `200`

Reconciliation report with orphaned and missing metadata

- ClusterReconciliationReport
  - `cleanedUp` boolean
  - `missingMetadata` string[] — Snapshots without metadata files
  - `orphanedMetadata` string[] — Metadata files referencing deleted snapshots
  - `timestamp` string

## Other responses

- `403` — No valid ACL
- `404` — Cluster not found
- `500` — Reconciliation failed

## Changes

- **2026-07-17** `7465ea0ee21a` — 1 info
  - endpoint added
- **2023-03-31** `b57fc7b9446e` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/signal18/apis/untitled-api/changes/api/clusters/:clusterName/backups/reconcile/post.md)

---

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