---
title: "Run an rclone command"
method: POST
path: "/core/command"
---

# Run an rclone command

`POST /core/command`

Executes a standard rclone CLI command remotely and streams or returns its output.

## Query parameters

- `command` string
- `arg` string[]
- `opt` string
- `returnType` string
- `_group` string
- `_async` boolean

## Headers

- `Prefer` 'respond-async'

## Request body

- CoreCommandRequest
  - `command` string — Name of the rclone command to execute, for example `ls` or `lsf`.
  - `arg` string[] — Optional positional arguments for the command. Repeat to supply multiple values.
  - `opt` string — Optional command options encoded as a JSON string.
  - `returnType` string — Controls how output is returned; accepts `COMBINED_OUTPUT`, `STREAM`, `STREAM_ONLY_STDOUT`, or `STREAM_ONLY_STDERR`.
  - `_group` string — Assign the request to a custom stats group.
  - `_async` boolean — Run the command asynchronously. Returns a job id immediately.

## Response `200`

Outcome of a command executed with `core/command`, including streamed result.

- object
  - `error` boolean, required
  - `result` string, nullable
  - `returnType` string, nullable

## 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)

## Changes

- **2026-08-19** `638e349833a9` — 1 info
  - added the required property `executeId` to the response with the `202` status
- **2026-07-12** `fdf1b1fc77fe` — 1 breaking
  - removed the required property `executeId` from the response with the `202` status
- **2026-07-12** `842fb2d927ae` — 1 info
  - added the required property `executeId` to the response with the `202` status
- **2026-06-05** `2849bf2803ce` — 2 info
  - added the new optional `header` request parameter `Prefer`
  - added the success response with the status `202`
- **2026-04-11** `86281b9ee38c` — 2 info
  - the `query` request parameter `command` became optional
  - the request property `command` became optional

[Full history](https://skmtc.dev/rclone/apis/rclone-rc-api/changes/core/command/post.md)

---

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