ciur / papermerge

Open Source Document Management System for Digital Archives (Scanned Documents)
https://papermerge.com
Apache License 2.0
2.42k stars 258 forks source link

[Discussion] Integrating Papermerge in a third party app #558

Closed maheshmnj closed 7 months ago

maheshmnj commented 8 months ago

Hello @ciur, Thank you so much for building this great tool. I am looking at papermerge as a potential solution to integrate into our utility mobile app. Our app has users of different roles Building owner, tenant, and contractor for each building. We would like to integrate paper into allowing our users to upload their files and retrieve them for preview. I looked into the documentation but I couldn't understand whether our requirement could be met, Here are some general questions I have about paper merge, It would be great if you could help clarify the following questions.

Best, Mahesh

ciur commented 8 months ago

I will assume that you are interested in P3 (version 3.0 and later, which will be out December 2023).

Can we change the permissions of the uploaded file/ control the access of the file, e.g if a contractor uploads it, the tenant should not be able to view the file but the owner should. Is this possible?

Short answer is: yes you can. Long answer: from P3 application does not manage any authorization/authentication - it just receives a token (which contains currently logged in user), assumes session is valid, and returns you whatever you are asking for. The AA (authorization and authentication) is managed by other, external application. Out of the box, P3 comes with its own AA which currently does not support any permission management at all, but supports multiple authentication schemes. It is up to you and your particular need to supply the AA part.

Do we need to deploy an instance of papermerge on our backend in order to consume the rest apis?

Not necessary, papermerge can be used as external service.

Where are the uploaded files stored, how long do the files stay and what is the storage limit and file upload limit?

Currently the files will be uploaded to the same storage filesystem where application runs, but in general you can customize that as well to support e.g. S3 storage.

maheshmnj commented 8 months ago

Thanks for the info @ciur

maheshmnj commented 8 months ago

@ciur I am trying to setup a local server by referring the docs complete-stack-in-2-minutes

I was able to run the papermerge client and uploaded few image files and a pdfs, but I am not able to preview any of the images, I tried multiple images of different formats png, jpg,jpeg

image image

Any idea what could potentially be wrong here?

Also for consuming the rest APIs do I need to run a different server?

ciur commented 8 months ago

yes, the thing is that in version 2.1.x (I guess this is the version you are testings) there is no support for png, jpg and tiff. Version 2.1.x has only support for pdf files. Documentation is misleading because prior versions (2.0.x) has support for images.

Support for png, jpg, tiff will be reintroduced in version 3.0.