--- 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] [+] 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] [+] 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.