---
title: "Quatrix"
description: "Rclone docs for Quatrix"
versionIntroduced: "v1.63.2"
---

# Quatrix

Quatrix by Maytech is [Quatrix Secure Compliant File Sharing | Maytech](https://www.maytech.net/products/quatrix-business).

Paths are specified as `remote:path`

Paths may be as deep as required, e.g., `remote:directory/subdirectory`.

The initial setup for Quatrix involves getting an API Key from Quatrix. You can
get the API key in the user's profile at `https://<account>/profile/api-keys`
or with the help of the API - <https://docs.maytech.net/quatrix/quatrix-api/api-explorer#/API-Key/post_api_key_create>.

See complete [Swagger documentation for Quatrix](https://docs.maytech.net/quatrix/quatrix-api/api-explorer).

## Configuration

Here is an example of how to make a remote called `remote`.  First run:

```console
rclone config
```

This will guide you through an interactive setup process:

```text
No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> remote
Type of storage to configure.
Choose a number from below, or type in your own value
[snip]
XX / Quatrix by Maytech
   \ "quatrix"
[snip]
Storage> quatrix
API key for accessing Quatrix account.
api_key> your_api_key
Host name of Quatrix account.
host> example.quatrix.it

Configuration complete.
Options:
- type: quatrix
- api_key: your_api_key
- host: example.quatrix.it
Keep this "remote" remote?
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
```

Once configured you can then use `rclone` like this (replace `remote` with the
name you gave your remote):

List directories in top level of your Quatrix

```console
rclone lsd remote:
```

List all the files in your Quatrix

```console
rclone ls remote:
```

To copy a local directory to an Quatrix directory called backup

```console
rclone copy /home/source remote:backup
```

### API key validity

API Key is created with no expiration date. It will be valid until you delete or
deactivate it in your account. After disabling, the API Key can be enabled back.
If the API Key was deleted and a new key was created, you can update it in rclone
config. The same happens if the hostname was changed.

```console
$ rclone config
Current remotes:

Name                 Type
====                 ====
remote               quatrix

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> e
Choose a number from below, or type in an existing value
 1 > remote
remote> remote
Configuration complete.
Options:
- type: quatrix
- host: some_host.quatrix.it
- api_key: your_api_key
Keep this "remote" remote?
Edit remote
Option api_key.
API key for accessing Quatrix account
Enter a string value. Press Enter for the default (your_api_key)
api_key>
Option host.
Host name of Quatrix account
Enter a string value. Press Enter for the default (some_host.quatrix.it).

Configuration complete.
Options:
- type: quatrix
- host: some_host.quatrix.it
- api_key: your_api_key
Keep this "remote" remote?
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
```

### Modification times and hashes

Quatrix allows modification times to be set on objects accurate to 1 microsecond.
These will be used to detect whether objects need syncing or not.

Quatrix does not support hashes, so you cannot use the `--checksum` flag.

### Restricted filename characters

File names in Quatrix are case sensitive and have limitations like the maximum
length of a filename is 255, and the minimum length is 1. A file name cannot be
equal to `.` or `..` nor contain `/` , `\` or non-printable ascii.

### Transfers

For files above 50 MiB rclone will use a chunked transfer. Rclone will upload
up to `--transfers` chunks at the same time (shared among all multipart uploads).
Chunks are buffered in memory, and the minimal chunk size is 10_000_000 bytes by
default, and it can be changed in the advanced configuration, so increasing `--transfers`
will increase the memory use. The chunk size has a maximum size limit, which is
set to 100_000_000 bytes by default and can be changed in the advanced configuration.
The size of the uploaded chunk will dynamically change depending on the upload speed.
The total memory use equals the number of transfers multiplied by the minimal
chunk size. In case there's free memory allocated for the upload (which equals
the difference of `maximal_summary_chunk_size` and `minimal_chunk_size` * `transfers`),
the chunk size may increase in case of high upload speed. As well as it can decrease
in case of upload speed problems. If no free memory is available, all chunks will
equal `minimal_chunk_size`.

### Deleting files

Files you delete with rclone will end up in Trash and be stored there for 30 days.
Quatrix also provides an API to permanently delete files and an API to empty the
Trash so that you can remove files permanently from your account.

<!-- autogenerated options start - DO NOT EDIT - instead edit fs.RegInfo in backend/quatrix/quatrix.go and run make backenddocs to verify --> <!-- markdownlint-disable-line line-length -->
### Standard options

Here are the Standard options specific to quatrix (Quatrix by Maytech).

#### --quatrix-api-key

API key for accessing Quatrix account

Properties:

- Config:      api_key
- Env Var:     RCLONE_QUATRIX_API_KEY
- Type:        string
- Required:    true

#### --quatrix-host

Host name of Quatrix account

Properties:

- Config:      host
- Env Var:     RCLONE_QUATRIX_HOST
- Type:        string
- Required:    true

### Advanced options

Here are the Advanced options specific to quatrix (Quatrix by Maytech).

#### --quatrix-encoding

The encoding for the backend.

See the [encoding section in the overview](/overview/#encoding) for more info.

Properties:

- Config:      encoding
- Env Var:     RCLONE_QUATRIX_ENCODING
- Type:        Encoding
- Default:     Slash,BackSlash,Del,Ctl,InvalidUtf8,Dot

#### --quatrix-effective-upload-time

Wanted upload time for one chunk

Properties:

- Config:      effective_upload_time
- Env Var:     RCLONE_QUATRIX_EFFECTIVE_UPLOAD_TIME
- Type:        string
- Default:     "4s"

#### --quatrix-minimal-chunk-size

The minimal size for one chunk

Properties:

- Config:      minimal_chunk_size
- Env Var:     RCLONE_QUATRIX_MINIMAL_CHUNK_SIZE
- Type:        SizeSuffix
- Default:     9.537Mi

#### --quatrix-maximal-summary-chunk-size

The maximal summary for all chunks. It should not be less than 'transfers'*'minimal_chunk_size'

Properties:

- Config:      maximal_summary_chunk_size
- Env Var:     RCLONE_QUATRIX_MAXIMAL_SUMMARY_CHUNK_SIZE
- Type:        SizeSuffix
- Default:     95.367Mi

#### --quatrix-hard-delete

Delete files permanently rather than putting them into the trash

Properties:

- Config:      hard_delete
- Env Var:     RCLONE_QUATRIX_HARD_DELETE
- Type:        bool
- Default:     false

#### --quatrix-skip-project-folders

Skip project folders in operations

Properties:

- Config:      skip_project_folders
- Env Var:     RCLONE_QUATRIX_SKIP_PROJECT_FOLDERS
- Type:        bool
- Default:     false

#### --quatrix-description

Description of the remote.

Properties:

- Config:      description
- Env Var:     RCLONE_QUATRIX_DESCRIPTION
- Type:        string
- Required:    false

<!-- autogenerated options stop -->

## Storage usage

The storage usage in Quatrix is restricted to the account during the purchase.
You can restrict any user with a smaller storage limit. The account limit is
applied if the user has no custom storage limit. Once you've reached the limit,
the upload of files will fail. This can be fixed by freeing up the space or
increasing the quota.

## Server-side operations

Quatrix supports server-side operations (copy and move). In case of conflict,
files are overwritten during server-side operation.
