Automatically encrypted upload file - web api


when i use web api ( to upload a file into my seafile repo (seafile on my server), this file is (by default) automatically encrypted?
What is the key for encyrpting? Where is stored?

When i use the web api to download this file, i have a return with url file. it is right?

I want that all file uploaded on seafile (web api and webportal) are encrypted and not visibile on server.
It is by default in Seafile?


Manual answers all your questions.

For encrypted library, yes

For Web api, it is in the server’s memory for 1 hour




ok. i have created the encypted library.

i have uploaded file into this repo with web api. The files are encrypted. Right?

Where are stored, on server? There are encrypted on server?

Then, if a user change password:

  • the encrypted repository works?
  • with web api, i can access to this files encrypted?

With webapi, if i read or download or view a file encrypted in Seafile, this files is available (if i have the token on webapi) decripted, right?


Please read the manual. These answer all of your questions. This is a much more efficient way to gain this knowledge.

Please tell me support becouse in manual i don’t view this responses.

Please tell me simple response. i want to use seafile but i must have this important informations.


Seafile take uploaded file’s content a split it to blocks. These blocks are versioned so if you change some part of file it duplicate only edited block and not whole file(saving disk space and HW).

So there is no folder in you server where you can easily access all files. You have to find all blocks and join them together.
These blocks are saved to data folder which you setup in installation process. This folder can look like this:

buffon /data/seafile-data # ls -la
total 36
drwx------ 9 root root 4096 srp 22 06:29 .
drwxr-xr-x 9 root root 4096 zář 13 12:58 ..
drwxr-xr-x 2 root root 4096 srp 15 14:45 commits
drwxr-xr-x 2 root root 4096 srp 15 14:45 fs
drwxr-xr-x 2 root root 4096 led  2 17:01 httptemp
drwxr-xr-x 2 root root 4096 srp 15 13:57 library-template
drwxr-xr-x 5 root root 4096 srp 15 14:45 storage
drwxr-xr-x 2 root root 4096 led  3 09:47 tmpfiles
drwxr-xr-x 2 root root 4096 srp 22 06:29 webdavtmp

And FYI … all this informations are in manual…

if i can delete files, where are stored the files block?

into what folder?

I don’t know in which folder are content blocks. in commits folder are files with informations about changes. Maybe in Storage folder are the blocks. If you delete file, his blocks are still presented but file is mark as deleted(they are in trash), script clear this blocks to free disk space.

ok, but if i want delete files fisically (delete blocks files) what is the folder and the right procedure?

I’m saying you It’s not easy to find right blocks. Just delete files over API and run

EDIT: And mainly you can destroy file structure. Just don’t touch seafile data folder (except temp folders like httptemp), use existing ways. I’m not tell you these way just for make your work harder I have reason :wink:

on httptemp i haven’t files.

i delete old files on /seafile-data/storage/blocks/repos-id

then i must restart seafile to view modifications? i must delete other files on other folder?

I’m saying you. Don’t touch data folder! I not going to support your high wire walk.

Yes it’s temp folder. So no persistent file should left here(but sometimes can). This folder is temp folder for file upload over Seahub.