If Arches is localised (with >1 language and thus uses the /language pattern in urls), the API calls fail because they lack the language.
[01/May/2025 10:21:01] "POST /auth/get_client_id HTTP/1.1" 302 0
Method Not Allowed (GET): /en/auth/get_client_id
Method Not Allowed: /en/auth/get_client_id
[01/May/2025 10:21:03] "GET /en/auth/get_client_id HTTP/1.1" 405 0
Originally discovered in the Arches QGIS plugin here: archesproject/arches-qgis#32.
Solution there requires the language code if Arches is localised, otherwise auth will fail. Non-localised Instances don't require it.
The best solution would be to redirect http://localhost:8000 requests to http://localhost:8000/en (or the respective locale). I'm unsure if this is possible, as locale redirects are done on the django level which the API can't see or benefit from.
Alternatively, we could create a localisation endpoint, but this would need to be accessible without the language code (/en) otherwise the problem would persist.