API c2c

Deux questions en une :

Merci - bon courage :relaxed:

Oui, et elle est en place, car l’interface du topoguide utilise uniquement l’API pour accéder à la base de donnée.
Exemple pour les dernières sorties : https://api.camptocamp.org/outings
Il n’y a pas de doc complète, à part ce qu’il ya sur github : GitHub - c2corg/v6_api: REST API for https://www.camptocamp.org

Ok est-ce qu’il y a moyen d’ajouter les filtres dans l’url
du genre date=2016-12-07&act=skitouring

Je n’ai pas trouvé de syntaxe qui marche.

Utilise le filtre de recherche, et modifie l’url (qui se met à jour en fonction des critères) en remplaçant « www » par « api ». Et ça marche.
Par conte l’API n’est pas stabilisée : il pourra y avoir des changements de champs et structure des données selon les besoins.
On peut voir que les infos des régions associées aux sorties sont déjà renvoyées par l’API, mais elles ne sont pas affichées par l’UI dans les cards.

Bah non désolé ça marche pô…
Par exemple

https://api.camptocamp.org/outings#bbox=-607746%2C3714145%2C1407745%2C7485854&act=skitouring&date=2016-11-20%2C2016-11-26&ocond=excellent%2Cexcellent

me donne trois tonnes de sorties de toutes activités, toutes dates…

Par ailleurs il n’y a pas de filtre pour sélectionner les sorties d’un utilisateur ?

Ok. Et bien en regardant les requètes qui transitent quand on utilise le filtre, j’ai trouvé le problème : il faut ajouter le critère &pl=fr :
https://api.camptocamp.org/outings?bbox=-549043%2C4306073%2C1466449%2C6933061&act=skitouring&date=2016-11-20%2C2016-11-26&pl=fr
Et là c’est bon. Ce critère indique le language de l’interface. Même si on n’en a pas besoin, apparemment il faut qu’il y soit.

Si, il faut ajouter le critère &u=ID_USER

Merci Bubu, avec ça je vais pouvoir avancer (reste plus qu’à trouver un peu de temps…)

This post was flagged by the community and is temporarily hidden.

Pas besoin de RSS, l’ API suffit ( par contre un peu de doc sur l’API serait utile !)
J’ai pu me faire mon petit tableau à ma sauce… en attendant les évolutions du site.

4 Likes

Top !

Comme @Bush, intéressé de savoir comment tu as fait.

Et surtout, tu voudrais pas donner directement un coup de main aux codeurs bénévoles ? ça ferait pleins d’heureux que les màj se fassent plus vite.

Antoine, pas ‹ codeur ›.

Ha!!!
du synthétique, efficace, sans fioriture, tout ce que j’aime !

C’est bôôôô!!!
Merci

Un peu de json, un peu de php, un peu de css, du bootstrap et de l’huile de coude pour taper sur le clavier :relaxed:

Mon serveur est pas dimensionné pour recevoir toutes vos requêtes et puis je voudrai pas faire du détournement de clics…
Mais si quelqu’un veut le code « en l’état » pour l’installer sur son serveur PHP pas de souci, demandez en MP, c’est gratuit mais à fignoler.

Bidouiller un truc d’amateur dans son coin et s’insérer dans un méga-projet comme la V6 sont deux choses bien différentes je pense…

1 Like

C’est uniquement un problème de serveur ? (et d’éthique ?)

Sinon, ton développement va évidemment dans le sens des utilisateurs…
Etonnant qu’une démarche individuelle surpasse déjà la « task force » C2C…

De quoi se poser quelques questions, pour ceux qui ont payé, surtout avec tout le pognon (300.000 euros)…

Faut pas t’arrêter à ce que tu vois…
Je n’ai fait qu’extraire quelques données et bricolé une petite mise en page sans contrainte, c’est à des centaines d’années-lumières du boulot réalisé sur la V6.

C’est vrai qu’il est vraiment dommage (voire assez sidérant…) d’avoir lancé cette version avec une page d’accueil aussi éloignée des préoccupations du C2Ciste moyen alors que c’était très facile et peu couteux de faire un truc sympa.

La bonne nouvelle c’est que la base est solide et qu’il sera donc possible de faire évoluer le site dans le bon sens.

2 Likes

serais-tu prêt à partager ces bouts de code (en mettant sur github par exemple) ? Ca permettrait d’avoir quelque chose d’utilisable en attendant…

et si les devs C2C pouvaient coller ton bout de code dans la page d’accueil de suite… :sweat:

C’est ce que je pensais également, mais en fait l’équipe est très sympa et il y a de quoi faire pour tous les niveaux (je suis moi-même totalement amateur en matière de développement web).
Ca ne coûte rien d’essayer :wink:

2 Likes

Je pose la question ici parce que je vois que certains ont commencé à jouer avec l’API. Est-ce qu’un dev du site ou un lecteur dev saurait m’expliquer comment est généré le paramètre bbox de l’url ?

J’ai tâtonné dessus hier aprem et voilà où j’en suis : bbox correspond à bouding box, c’est à dire les bordures externes de la carte. Il est décrit par quatre coordonnées, que j’ai cru comprendre comme étant, dans l’ordre, Ouest / Sud / Est / Nord

J’ai essayé de reproduire le fonctionnement de la carte interactive des topoguides avec une carte WebGL. Je reproduis les paramètres Est/Ouest sans trop de problèmes, mais les paramètres Nord/Sud renvoient des latitudes étranges. Par exemple, Londres est à 51° de latitude Nord dans le monde réel (et sur ma carte également) et le paramètre Nord exprimé dans l’url c2c semble être 67°. Pour Perpignan, 42°N dans le monde réel, 52°N sur la carto CampToCamp.

J’ai cherché dans le code source de l’API et de l’UI sur github mais je n’ai rien trouvé pouvant m’aider. Si quelqu’un sait comment est généré ce paramètre, je suis preneur !

Les coordonnées sont en EPS:3857 (Mercator) métrique. Et les 4 coordonnées sont dans l’ordre W S E N effectivement.

Est ce qu’il exist un swagger ou un postman pour l’API pour tester les endpoints?