Hi, I am working on Every Door app to integrate Panoramax API to upload images and for viewing purpose as well. The main objective is to add a feature where users can upload images of OSM objects/POIs.
What’s the best way to do it if I don’t want to host a dedicated Panoramax server?
Regarding upload, the tricky part is authentication.
We use Oauth2 for this and Panoramax itself does not provide the Oauth service by relies on an external one (OSM Oauth2 for OSM-FR instance, and a local keycloack for IGN).
Authentication is not required to access the picture catalog and the pictures themselves.
A js based viewer is available, and deals with 360 and not 360 pictures, but you can display the pictures yourself if it is easier for you (the tricky part is 360 ones).
you can just ask your users to provide an API token (the mobile app baba does this)
you can use each instances auth api (/api/auth/login), that will trigger the OAuth dance (but you need a browser for this)
you can use the CLI way of handling authentication, doc is here, where the CLI generate a new token, not related to any user, and ask the user to open a link in a browser to claim the token. This can be usefull when a full OAuth dance using a browser to complicated.
After the authentication is done, uploading pictures is easy, you can find the documentation here (and the open api here).
One important thing to note is that for contribution, you cannot use the meta catalog, you need to choose an instance. The meta catalog is only used as a view of all uploaded pictures.
You can either start by supporting only the instance you need, or you can use this API to get the up to date list of all federated instances.