github.com/rclone/rclone@v1.66.1-0.20240517100346-7b89735ae726/docs/content/jottacloud.md (about) 1 --- 2 title: "Jottacloud" 3 description: "Rclone docs for Jottacloud" 4 versionIntroduced: "v1.43" 5 --- 6 7 # {{< icon "fa fa-cloud" >}} Jottacloud 8 9 Jottacloud is a cloud storage service provider from a Norwegian company, using its own datacenters 10 in Norway. In addition to the official service at [jottacloud.com](https://www.jottacloud.com/), 11 it also provides white-label solutions to different companies, such as: 12 * Telia 13 * Telia Cloud (cloud.telia.se) 14 * Telia Sky (sky.telia.no) 15 * Tele2 16 * Tele2 Cloud (mittcloud.tele2.se) 17 * Onlime 18 * Onlime Cloud Storage (onlime.dk) 19 * Elkjøp (with subsidiaries): 20 * Elkjøp Cloud (cloud.elkjop.no) 21 * Elgiganten Sweden (cloud.elgiganten.se) 22 * Elgiganten Denmark (cloud.elgiganten.dk) 23 * Giganti Cloud (cloud.gigantti.fi) 24 * ELKO Cloud (cloud.elko.is) 25 26 Most of the white-label versions are supported by this backend, although may require different 27 authentication setup - described below. 28 29 Paths are specified as `remote:path` 30 31 Paths may be as deep as required, e.g. `remote:directory/subdirectory`. 32 33 ## Authentication types 34 35 Some of the whitelabel versions uses a different authentication method than the official service, 36 and you have to choose the correct one when setting up the remote. 37 38 ### Standard authentication 39 40 The standard authentication method used by the official service (jottacloud.com), as well as 41 some of the whitelabel services, requires you to generate a single-use personal login token 42 from the account security settings in the service's web interface. Log in to your account, 43 go to "Settings" and then "Security", or use the direct link presented to you by rclone when 44 configuring the remote: <https://www.jottacloud.com/web/secure>. Scroll down to the section 45 "Personal login token", and click the "Generate" button. Note that if you are using a 46 whitelabel service you probably can't use the direct link, you need to find the same page in 47 their dedicated web interface, and also it may be in a different location than described above. 48 49 To access your account from multiple instances of rclone, you need to configure each of them 50 with a separate personal login token. E.g. you create a Jottacloud remote with rclone in one 51 location, and copy the configuration file to a second location where you also want to run 52 rclone and access the same remote. Then you need to replace the token for one of them, using 53 the [config reconnect](https://rclone.org/commands/rclone_config_reconnect/) command, which 54 requires you to generate a new personal login token and supply as input. If you do not 55 do this, the token may easily end up being invalidated, resulting in both instances failing 56 with an error message something along the lines of: 57 58 oauth2: cannot fetch token: 400 Bad Request 59 Response: {"error":"invalid_grant","error_description":"Stale token"} 60 61 When this happens, you need to replace the token as described above to be able to use your 62 remote again. 63 64 All personal login tokens you have taken into use will be listed in the web interface under 65 "My logged in devices", and from the right side of that list you can click the "X" button to 66 revoke individual tokens. 67 68 ### Legacy authentication 69 70 If you are using one of the whitelabel versions (e.g. from Elkjøp) you may not have the option 71 to generate a CLI token. In this case you'll have to use the legacy authentication. To do this select 72 yes when the setup asks for legacy authentication and enter your username and password. 73 The rest of the setup is identical to the default setup. 74 75 ### Telia Cloud authentication 76 77 Similar to other whitelabel versions Telia Cloud doesn't offer the option of creating a CLI token, and 78 additionally uses a separate authentication flow where the username is generated internally. To setup 79 rclone to use Telia Cloud, choose Telia Cloud authentication in the setup. The rest of the setup is 80 identical to the default setup. 81 82 ### Tele2 Cloud authentication 83 84 As Tele2-Com Hem merger was completed this authentication can be used for former Com Hem Cloud and 85 Tele2 Cloud customers as no support for creating a CLI token exists, and additionally uses a separate 86 authentication flow where the username is generated internally. To setup rclone to use Tele2 Cloud, 87 choose Tele2 Cloud authentication in the setup. The rest of the setup is identical to the default setup. 88 89 ### Onlime Cloud Storage authentication 90 91 Onlime has sold access to Jottacloud proper, while providing localized support to Danish Customers, but 92 have recently set up their own hosting, transferring their customers from Jottacloud servers to their 93 own ones. 94 95 This, of course, necessitates using their servers for authentication, but otherwise functionality and 96 architecture seems equivalent to Jottacloud. 97 98 To setup rclone to use Onlime Cloud Storage, choose Onlime Cloud authentication in the setup. The rest 99 of the setup is identical to the default setup. 100 101 ## Configuration 102 103 Here is an example of how to make a remote called `remote` with the default setup. First run: 104 105 rclone config 106 107 This will guide you through an interactive setup process: 108 109 ``` 110 No remotes found, make a new one? 111 n) New remote 112 s) Set configuration password 113 q) Quit config 114 n/s/q> n 115 name> remote 116 Option Storage. 117 Type of storage to configure. 118 Choose a number from below, or type in your own value. 119 [snip] 120 XX / Jottacloud 121 \ (jottacloud) 122 [snip] 123 Storage> jottacloud 124 Edit advanced config? 125 y) Yes 126 n) No (default) 127 y/n> n 128 Option config_type. 129 Select authentication type. 130 Choose a number from below, or type in an existing string value. 131 Press Enter for the default (standard). 132 / Standard authentication. 133 1 | Use this if you're a normal Jottacloud user. 134 \ (standard) 135 / Legacy authentication. 136 2 | This is only required for certain whitelabel versions of Jottacloud and not recommended for normal users. 137 \ (legacy) 138 / Telia Cloud authentication. 139 3 | Use this if you are using Telia Cloud. 140 \ (telia) 141 / Tele2 Cloud authentication. 142 4 | Use this if you are using Tele2 Cloud. 143 \ (tele2) 144 / Onlime Cloud authentication. 145 5 | Use this if you are using Onlime Cloud. 146 \ (onlime) 147 config_type> 1 148 Personal login token. 149 Generate here: https://www.jottacloud.com/web/secure 150 Login Token> <your token here> 151 Use a non-standard device/mountpoint? 152 Choosing no, the default, will let you access the storage used for the archive 153 section of the official Jottacloud client. If you instead want to access the 154 sync or the backup section, for example, you must choose yes. 155 y) Yes 156 n) No (default) 157 y/n> y 158 Option config_device. 159 The device to use. In standard setup the built-in Jotta device is used, 160 which contains predefined mountpoints for archive, sync etc. All other devices 161 are treated as backup devices by the official Jottacloud client. You may create 162 a new by entering a unique name. 163 Choose a number from below, or type in your own string value. 164 Press Enter for the default (DESKTOP-3H31129). 165 1 > DESKTOP-3H31129 166 2 > Jotta 167 config_device> 2 168 Option config_mountpoint. 169 The mountpoint to use for the built-in device Jotta. 170 The standard setup is to use the Archive mountpoint. Most other mountpoints 171 have very limited support in rclone and should generally be avoided. 172 Choose a number from below, or type in an existing string value. 173 Press Enter for the default (Archive). 174 1 > Archive 175 2 > Shared 176 3 > Sync 177 config_mountpoint> 1 178 -------------------- 179 [remote] 180 type = jottacloud 181 configVersion = 1 182 client_id = jottacli 183 client_secret = 184 tokenURL = https://id.jottacloud.com/auth/realms/jottacloud/protocol/openid-connect/token 185 token = {........} 186 username = 2940e57271a93d987d6f8a21 187 device = Jotta 188 mountpoint = Archive 189 -------------------- 190 y) Yes this is OK (default) 191 e) Edit this remote 192 d) Delete this remote 193 y/e/d> y 194 ``` 195 196 Once configured you can then use `rclone` like this, 197 198 List directories in top level of your Jottacloud 199 200 rclone lsd remote: 201 202 List all the files in your Jottacloud 203 204 rclone ls remote: 205 206 To copy a local directory to an Jottacloud directory called backup 207 208 rclone copy /home/source remote:backup 209 210 ### Devices and Mountpoints 211 212 The official Jottacloud client registers a device for each computer you install 213 it on, and shows them in the backup section of the user interface. For each 214 folder you select for backup it will create a mountpoint within this device. 215 A built-in device called Jotta is special, and contains mountpoints Archive, 216 Sync and some others, used for corresponding features in official clients. 217 218 With rclone you'll want to use the standard Jotta/Archive device/mountpoint in 219 most cases. However, you may for example want to access files from the sync or 220 backup functionality provided by the official clients, and rclone therefore 221 provides the option to select other devices and mountpoints during config. 222 223 You are allowed to create new devices and mountpoints. All devices except the 224 built-in Jotta device are treated as backup devices by official Jottacloud 225 clients, and the mountpoints on them are individual backup sets. 226 227 With the built-in Jotta device, only existing, built-in, mountpoints can be 228 selected. In addition to the mentioned Archive and Sync, it may contain 229 several other mountpoints such as: Latest, Links, Shared and Trash. All of 230 these are special mountpoints with a different internal representation than 231 the "regular" mountpoints. Rclone will only to a very limited degree support 232 them. Generally you should avoid these, unless you know what you are doing. 233 234 ### --fast-list 235 236 This backend supports `--fast-list` which allows you to use fewer 237 transactions in exchange for more memory. See the [rclone 238 docs](/docs/#fast-list) for more details. 239 240 Note that the implementation in Jottacloud always uses only a single 241 API request to get the entire list, so for large folders this could 242 lead to long wait time before the first results are shown. 243 244 Note also that with rclone version 1.58 and newer, information about 245 [MIME types](/overview/#mime-type) and metadata item [utime](#metadata) 246 are not available when using `--fast-list`. 247 248 ### Modification times and hashes 249 250 Jottacloud allows modification times to be set on objects accurate to 1 251 second. These will be used to detect whether objects need syncing or 252 not. 253 254 Jottacloud supports MD5 type hashes, so you can use the `--checksum` 255 flag. 256 257 Note that Jottacloud requires the MD5 hash before upload so if the 258 source does not have an MD5 checksum then the file will be cached 259 temporarily on disk (in location given by 260 [--temp-dir](/docs/#temp-dir-dir)) before it is uploaded. 261 Small files will be cached in memory - see the 262 [--jottacloud-md5-memory-limit](#jottacloud-md5-memory-limit) flag. 263 When uploading from local disk the source checksum is always available, 264 so this does not apply. Starting with rclone version 1.52 the same is 265 true for encrypted remotes (in older versions the crypt backend would not 266 calculate hashes for uploads from local disk, so the Jottacloud 267 backend had to do it as described above). 268 269 ### Restricted filename characters 270 271 In addition to the [default restricted characters set](/overview/#restricted-characters) 272 the following characters are also replaced: 273 274 | Character | Value | Replacement | 275 | --------- |:-----:|:-----------:| 276 | " | 0x22 | " | 277 | * | 0x2A | * | 278 | : | 0x3A | : | 279 | < | 0x3C | < | 280 | > | 0x3E | > | 281 | ? | 0x3F | ? | 282 | \| | 0x7C | | | 283 284 Invalid UTF-8 bytes will also be [replaced](/overview/#invalid-utf8), 285 as they can't be used in XML strings. 286 287 ### Deleting files 288 289 By default, rclone will send all files to the trash when deleting files. They will be permanently 290 deleted automatically after 30 days. You may bypass the trash and permanently delete files immediately 291 by using the [--jottacloud-hard-delete](#jottacloud-hard-delete) flag, or set the equivalent environment variable. 292 Emptying the trash is supported by the [cleanup](/commands/rclone_cleanup/) command. 293 294 ### Versions 295 296 Jottacloud supports file versioning. When rclone uploads a new version of a file it creates a new version of it. 297 Currently rclone only supports retrieving the current version but older versions can be accessed via the Jottacloud Website. 298 299 Versioning can be disabled by `--jottacloud-no-versions` option. This is achieved by deleting the remote file prior to uploading 300 a new version. If the upload the fails no version of the file will be available in the remote. 301 302 ### Quota information 303 304 To view your current quota you can use the `rclone about remote:` 305 command which will display your usage limit (unless it is unlimited) 306 and the current usage. 307 308 {{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/jottacloud/jottacloud.go then run make backenddocs" >}} 309 ### Standard options 310 311 Here are the Standard options specific to jottacloud (Jottacloud). 312 313 #### --jottacloud-client-id 314 315 OAuth Client Id. 316 317 Leave blank normally. 318 319 Properties: 320 321 - Config: client_id 322 - Env Var: RCLONE_JOTTACLOUD_CLIENT_ID 323 - Type: string 324 - Required: false 325 326 #### --jottacloud-client-secret 327 328 OAuth Client Secret. 329 330 Leave blank normally. 331 332 Properties: 333 334 - Config: client_secret 335 - Env Var: RCLONE_JOTTACLOUD_CLIENT_SECRET 336 - Type: string 337 - Required: false 338 339 ### Advanced options 340 341 Here are the Advanced options specific to jottacloud (Jottacloud). 342 343 #### --jottacloud-token 344 345 OAuth Access Token as a JSON blob. 346 347 Properties: 348 349 - Config: token 350 - Env Var: RCLONE_JOTTACLOUD_TOKEN 351 - Type: string 352 - Required: false 353 354 #### --jottacloud-auth-url 355 356 Auth server URL. 357 358 Leave blank to use the provider defaults. 359 360 Properties: 361 362 - Config: auth_url 363 - Env Var: RCLONE_JOTTACLOUD_AUTH_URL 364 - Type: string 365 - Required: false 366 367 #### --jottacloud-token-url 368 369 Token server url. 370 371 Leave blank to use the provider defaults. 372 373 Properties: 374 375 - Config: token_url 376 - Env Var: RCLONE_JOTTACLOUD_TOKEN_URL 377 - Type: string 378 - Required: false 379 380 #### --jottacloud-md5-memory-limit 381 382 Files bigger than this will be cached on disk to calculate the MD5 if required. 383 384 Properties: 385 386 - Config: md5_memory_limit 387 - Env Var: RCLONE_JOTTACLOUD_MD5_MEMORY_LIMIT 388 - Type: SizeSuffix 389 - Default: 10Mi 390 391 #### --jottacloud-trashed-only 392 393 Only show files that are in the trash. 394 395 This will show trashed files in their original directory structure. 396 397 Properties: 398 399 - Config: trashed_only 400 - Env Var: RCLONE_JOTTACLOUD_TRASHED_ONLY 401 - Type: bool 402 - Default: false 403 404 #### --jottacloud-hard-delete 405 406 Delete files permanently rather than putting them into the trash. 407 408 Properties: 409 410 - Config: hard_delete 411 - Env Var: RCLONE_JOTTACLOUD_HARD_DELETE 412 - Type: bool 413 - Default: false 414 415 #### --jottacloud-upload-resume-limit 416 417 Files bigger than this can be resumed if the upload fail's. 418 419 Properties: 420 421 - Config: upload_resume_limit 422 - Env Var: RCLONE_JOTTACLOUD_UPLOAD_RESUME_LIMIT 423 - Type: SizeSuffix 424 - Default: 10Mi 425 426 #### --jottacloud-no-versions 427 428 Avoid server side versioning by deleting files and recreating files instead of overwriting them. 429 430 Properties: 431 432 - Config: no_versions 433 - Env Var: RCLONE_JOTTACLOUD_NO_VERSIONS 434 - Type: bool 435 - Default: false 436 437 #### --jottacloud-encoding 438 439 The encoding for the backend. 440 441 See the [encoding section in the overview](/overview/#encoding) for more info. 442 443 Properties: 444 445 - Config: encoding 446 - Env Var: RCLONE_JOTTACLOUD_ENCODING 447 - Type: Encoding 448 - Default: Slash,LtGt,DoubleQuote,Colon,Question,Asterisk,Pipe,Del,Ctl,InvalidUtf8,Dot 449 450 #### --jottacloud-description 451 452 Description of the remote 453 454 Properties: 455 456 - Config: description 457 - Env Var: RCLONE_JOTTACLOUD_DESCRIPTION 458 - Type: string 459 - Required: false 460 461 ### Metadata 462 463 Jottacloud has limited support for metadata, currently an extended set of timestamps. 464 465 Here are the possible system metadata items for the jottacloud backend. 466 467 | Name | Help | Type | Example | Read Only | 468 |------|------|------|---------|-----------| 469 | btime | Time of file birth (creation), read from rclone metadata | RFC 3339 | 2006-01-02T15:04:05.999999999Z07:00 | N | 470 | content-type | MIME type, also known as media type | string | text/plain | **Y** | 471 | mtime | Time of last modification, read from rclone metadata | RFC 3339 | 2006-01-02T15:04:05.999999999Z07:00 | N | 472 | utime | Time of last upload, when current revision was created, generated by backend | RFC 3339 | 2006-01-02T15:04:05.999999999Z07:00 | **Y** | 473 474 See the [metadata](/docs/#metadata) docs for more info. 475 476 {{< rem autogenerated options stop >}} 477 478 ## Limitations 479 480 Note that Jottacloud is case insensitive so you can't have a file called 481 "Hello.doc" and one called "hello.doc". 482 483 There are quite a few characters that can't be in Jottacloud file names. Rclone will map these names to and from an identical 484 looking unicode equivalent. For example if a file has a ? in it will be mapped to ? instead. 485 486 Jottacloud only supports filenames up to 255 characters in length. 487 488 ## Troubleshooting 489 490 Jottacloud exhibits some inconsistent behaviours regarding deleted files and folders which may cause Copy, Move and DirMove 491 operations to previously deleted paths to fail. Emptying the trash should help in such cases.