---
title: "Preview backup restore"
method: POST
path: "/api/backup/preview"
tags: ["backup"]
---

# Preview backup restore

`POST /api/backup/preview`

Uploads a backup ZIP and returns a diff summary showing what would be added, removed, or changed — without applying.

## Response `200`

OK

- BackupBackupDiff
  - `access_rules` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `contacts` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `device_configs` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `devices` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `failover_groups` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `interfaces` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `iridium_locations` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `object_groups` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `preset_messages` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `satellite_rate_limits` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `sim_cards` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer
  - `system_config` BackupDiffCounts
    - `add` integer
    - `change` integer
    - `remove` integer

## Other responses

- `400` — Bad Request
- `500` — Internal Server Error

---

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