---
title: "Compare source and destination"
method: POST
path: "/operations/check"
---

# Compare source and destination

`POST /operations/check`

Compares source and destination trees, reporting matches, differences, and missing files.

## Query parameters

- `srcFs` string
- `dstFs` string
- `download` boolean
- `checkFileHash` string
- `checkFileFs` string
- `checkFileRemote` string
- `oneWay` boolean
- `combined` boolean
- `missingOnSrc` boolean
- `missingOnDst` boolean
- `match` boolean
- `differ` boolean
- `error` boolean
- `_group` string
- `_async` boolean

## Headers

- `Prefer` 'respond-async'

## Request body

- OperationsCheckRequest
  - `srcFs` string — Source remote name or path to verify, e.g. `drive:`.
  - `dstFs` string — Destination remote name or path that should match the source.
  - `download` boolean — Set to true to read file contents during comparison instead of relying on hashes.
  - `checkFileHash` string — Hash name to expect in the supplied SUM file, such as `md5`.
  - `checkFileFs` string — Remote containing the checksum SUM file when using `checkFileHash`.
  - `checkFileRemote` string — Path within `checkFileFs` to the checksum SUM file.
  - `oneWay` boolean — Set to true to only ensure that source files exist on the destination.
  - `combined` boolean — Set to true to include a combined summary report in the response.
  - `missingOnSrc` boolean — Set to true to report files missing from the source.
  - `missingOnDst` boolean — Set to true to report files missing from the destination.
  - `match` boolean — Set to true to include matching files in the report.
  - `differ` boolean — Set to true to include differing files in the report.
  - `error` boolean — Set to true to include entries that encountered errors.
  - `_group` string — Assign the request to a custom stats group.
  - `_async` boolean — Run the command asynchronously. Returns a job id immediately.

## Response `200`

Comparison summary from `operations/check`, including missing, matching, and differing files.

- object
  - `success` boolean, required — True when the check completes without differences or errors.
  - `status` string, required — Human readable status string.
  - `hashType` string — Hash algorithm used for comparisons when applicable.
  - `combined` string[] — Combined summary lines when `combined=true` is requested.
  - `missingOnSrc` string[] — Files present on the destination but missing from the source.
  - `missingOnDst` string[] — Files present on the source but missing from the destination.
  - `match` string[] — Files that matched on both sides.
  - `differ` string[] — Files that differed between source and destination.
  - `error` string[] — Entries that produced errors during the check.

## Other responses

- `202` — Request accepted for async processing. Poll /job/status with the returned jobid.
- `4XX` — Any error response (HTTP 4xx/5xx)
- `5XX` — Any error response (HTTP 4xx/5xx)

---

[API](https://skmtc.net/rclone/apis/rclone-rc-api.md) · [All operations](https://skmtc.net/rclone/apis/rclone-rc-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rclone/rclone-rc-api/versions/2849bf2803ce/schema)
