---
title: "PikPak"
description: "Rclone docs for PikPak"
versionIntroduced: "v1.62"
---

# {{< icon "fa fa-cloud" >}} PikPak

PikPak is [a private cloud drive](https://mypikpak.com/).

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

## Configuration

Here is an example of making a remote for PikPak.

First run:

     rclone config

This will guide you through an interactive setup process:

```
No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n

Enter name for new remote.
name> remote

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
XX / PikPak
   \ (pikpak)
Storage> XX

Option user.
Pikpak username.
Enter a value.
user> USERNAME

Option pass.
Pikpak password.
Choose an alternative below.
y) Yes, type in my own password
g) Generate random password
y/g> y
Enter the password:
password:
Confirm the password:
password:

Edit advanced config?
y) Yes
n) No (default)
y/n> 

Configuration complete.
Options:
- type: pikpak
- user: USERNAME
- pass: *** ENCRYPTED ***
- token: {"access_token":"eyJ...","token_type":"Bearer","refresh_token":"os...","expiry":"2023-01-26T18:54:32.170582647+09:00"}
Keep this "remote" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
```

{{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/pikpak/pikpak.go then run make backenddocs" >}}
### Standard options

Here are the Standard options specific to pikpak (PikPak).

#### --pikpak-user

Pikpak username.

Properties:

- Config:      user
- Env Var:     RCLONE_PIKPAK_USER
- Type:        string
- Required:    true

#### --pikpak-pass

Pikpak password.

**NB** Input to this must be obscured - see [rclone obscure](/commands/rclone_obscure/).

Properties:

- Config:      pass
- Env Var:     RCLONE_PIKPAK_PASS
- Type:        string
- Required:    true

### Advanced options

Here are the Advanced options specific to pikpak (PikPak).

#### --pikpak-client-id

OAuth Client Id.

Leave blank normally.

Properties:

- Config:      client_id
- Env Var:     RCLONE_PIKPAK_CLIENT_ID
- Type:        string
- Required:    false

#### --pikpak-client-secret

OAuth Client Secret.

Leave blank normally.

Properties:

- Config:      client_secret
- Env Var:     RCLONE_PIKPAK_CLIENT_SECRET
- Type:        string
- Required:    false

#### --pikpak-token

OAuth Access Token as a JSON blob.

Properties:

- Config:      token
- Env Var:     RCLONE_PIKPAK_TOKEN
- Type:        string
- Required:    false

#### --pikpak-auth-url

Auth server URL.

Leave blank to use the provider defaults.

Properties:

- Config:      auth_url
- Env Var:     RCLONE_PIKPAK_AUTH_URL
- Type:        string
- Required:    false

#### --pikpak-token-url

Token server url.

Leave blank to use the provider defaults.

Properties:

- Config:      token_url
- Env Var:     RCLONE_PIKPAK_TOKEN_URL
- Type:        string
- Required:    false

#### --pikpak-root-folder-id

ID of the root folder.
Leave blank normally.

Fill in for rclone to use a non root folder as its starting point.


Properties:

- Config:      root_folder_id
- Env Var:     RCLONE_PIKPAK_ROOT_FOLDER_ID
- Type:        string
- Required:    false

#### --pikpak-use-trash

Send files to the trash instead of deleting permanently.

Defaults to true, namely sending files to the trash.
Use `--pikpak-use-trash=false` to delete files permanently instead.

Properties:

- Config:      use_trash
- Env Var:     RCLONE_PIKPAK_USE_TRASH
- Type:        bool
- Default:     true

#### --pikpak-trashed-only

Only show files that are in the trash.

This will show trashed files in their original directory structure.

Properties:

- Config:      trashed_only
- Env Var:     RCLONE_PIKPAK_TRASHED_ONLY
- Type:        bool
- Default:     false

#### --pikpak-hash-memory-limit

Files bigger than this will be cached on disk to calculate hash if required.

Properties:

- Config:      hash_memory_limit
- Env Var:     RCLONE_PIKPAK_HASH_MEMORY_LIMIT
- Type:        SizeSuffix
- Default:     10Mi

#### --pikpak-encoding

The encoding for the backend.

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

Properties:

- Config:      encoding
- Env Var:     RCLONE_PIKPAK_ENCODING
- Type:        MultiEncoder
- Default:     Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,LeftSpace,RightSpace,RightPeriod,InvalidUtf8,Dot

## Backend commands

Here are the commands specific to the pikpak backend.

Run them with

    rclone backend COMMAND remote:

The help below will explain what arguments each command takes.

See the [backend](/commands/rclone_backend/) command for more
info on how to pass options and arguments.

These can be run on a running backend using the rc command
[backend/command](/rc/#backend-command).

### addurl

Add offline download task for url

    rclone backend addurl remote: [options] [<arguments>+]

This command adds offline download task for url.

Usage:

    rclone backend addurl pikpak:dirpath url

Downloads will be stored in 'dirpath'. If 'dirpath' is invalid, 
download will fallback to default 'My Pack' folder.


### decompress

Request decompress of a file/files in a folder

    rclone backend decompress remote: [options] [<arguments>+]

This command requests decompress of file/files in a folder.

Usage:

    rclone backend decompress pikpak:dirpath {filename} -o password=password
    rclone backend decompress pikpak:dirpath {filename} -o delete-src-file

An optional argument 'filename' can be specified for a file located in 
'pikpak:dirpath'. You may want to pass '-o password=password' for a 
password-protected files. Also, pass '-o delete-src-file' to delete 
source files after decompression finished.

Result:

    {
        "Decompressed": 17,
        "SourceDeleted": 0,
        "Errors": 0
    }


{{< rem autogenerated options stop >}}

## Limitations ##

### Hashes ###

PikPak supports MD5 hash, but sometimes given empty especially for user-uploaded files.

### Deleted files ###

Deleted files will still be visible with `--pikpak-trashed-only` even after the trash emptied. This goes away after few days.