rclone/docs/content/pikpak.md
2024-06-14 16:04:51 +01:00

372 lines
7.9 KiB
Markdown

---
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
```
### Modification times and hashes
PikPak keeps modification times on objects, and updates them when uploading objects,
but it does not support changing only the modification time
The MD5 hash algorithm is supported.
{{< 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-chunk-size
Chunk size for multipart uploads.
Large files will be uploaded in chunks of this size.
Note that this is stored in memory and there may be up to
"--transfers" * "--pikpak-upload-concurrency" chunks stored at once
in memory.
If you are transferring large files over high-speed links and you have
enough memory, then increasing this will speed up the transfers.
Rclone will automatically increase the chunk size when uploading a
large file of known size to stay below the 10,000 chunks limit.
Increasing the chunk size decreases the accuracy of the progress
statistics displayed with "-P" flag.
Properties:
- Config: chunk_size
- Env Var: RCLONE_PIKPAK_CHUNK_SIZE
- Type: SizeSuffix
- Default: 5Mi
#### --pikpak-upload-concurrency
Concurrency for multipart uploads.
This is the number of chunks of the same file that are uploaded
concurrently for multipart uploads.
Note that chunks are stored in memory and there may be up to
"--transfers" * "--pikpak-upload-concurrency" chunks stored at once
in memory.
If you are uploading small numbers of large files over high-speed links
and these uploads do not fully utilize your bandwidth, then increasing
this may help to speed up the transfers.
Properties:
- Config: upload_concurrency
- Env Var: RCLONE_PIKPAK_UPLOAD_CONCURRENCY
- Type: int
- Default: 5
#### --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: Encoding
- Default: Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,BackSlash,Ctl,LeftSpace,RightSpace,RightPeriod,InvalidUtf8,Dot
#### --pikpak-description
Description of the remote.
Properties:
- Config: description
- Env Var: RCLONE_PIKPAK_DESCRIPTION
- Type: string
- Required: false
## 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 may be empty
PikPak supports MD5 hash, but sometimes given empty especially for user-uploaded files.
### Deleted files still visible with trashed-only
Deleted files will still be visible with `--pikpak-trashed-only` even after the
trash emptied. This goes away after few days.