Geotrek-admin icon indicating copy to clipboard operation
Geotrek-admin copied to clipboard

APIv2 : serve GPX, KML and PDF files via APIv2 instead of using APIv1 redirection

Open Chatewgne opened this issue 3 years ago • 1 comments

APIv2 currently serves links to files as attributes on Treks. For instance on https://demo-admin.geotrek.fr/api/v2/trek/2/ :

{
...
"gpx":"https://demo-admin.geotrek.fr/api/fr/treks/2/boucle-du-pic-des-trois-seigneurs.gpx",
...
"kml":"https://demo-admin.geotrek.fr/api/fr/treks/2/boucle-du-pic-des-trois-seigneurs.kml",
...
"pdf": {
    "fr":"https://demo-admin.geotrek.fr/api/fr/treks/2/boucle-du-pic-des-trois-seigneurs.pdf",
    "en":"https://demo-admin.geotrek.fr/api/en/treks/2/boucle-du-pic-des-trois-seigneurs.pdf",
    "es":"https://demo-admin.geotrek.fr/api/es/treks/2/boucle-du-pic-des-trois-seigneurs.pdf"
    }
}

Those links are APIv1 endpoints, which means that APIv2 currently relies on APIv1 to serve these files, and this should be de-coupled for coherence

To do :

  • Add enpoints on APIv2 to serve these files
  • Replace the urls above with news link to APIv2

And we'll end up with something like this :

{
...
"gpx":"https://demo-admin.geotrek.fr/api/v2/trek/2/gpx/",
...
"kml":"https://demo-admin.geotrek.fr/api/v2/trek/2/kml/",
...
"pdf": {
    "fr":"https://demo-admin.geotrek.fr/api/v2/trek/2/pdf/?language=fr",
    "en":"https://demo-admin.geotrek.fr/api/v2/trek/2/pdf/?language=en",
    "es":"https://demo-admin.geotrek.fr/api/v2/trek/2/pdf/?language=es"
    }
}

Already done for profile.json, dem.json, profile.svg in this PR https://github.com/GeotrekCE/Geotrek-admin/pull/2934

Chatewgne avatar Jan 31 '22 15:01 Chatewgne

Avoir deux routes qui mènent vers la même fonction

de sorte à ce que l'api "v1" soit utilisée uniquement en interne côté back-end

Chatewgne avatar Feb 15 '24 13:02 Chatewgne