FR EN
FR EN
Naviguer dans les forums 
Trackers Ankama

Dofapi - L'API en ligne Dofus et Dofus Touch que vous attendiez !

Par -itadakimsu- 07 Octobre 2019 - 19:10:28

Bonjour à tous dofusien, laugh

Je me permet de poster sur le forum Dofus Touch car la version Touch de Dofapi est depuis ce soir disponible !

J'imagine que bon nombre d'entre vous ont été bloqués dans leurs idées de développement autour du jeu Dofus par l'absence d'API officiel. Dofapi est là pour vous simplifier l'accès aux données.
Nous sommes dorénavant partenaire avec DofusBook et KaellyBot pour vous produire toujours plus de features !

Après avoir collaboré avec l'équipe DofusBook pour le lancement de DofusTouchBook (pour la partie parsing de données), j'ai réutilisé mon moteur de parse pour créer une API REST permettant l'accès à l'ensemble de l'encyclopédie Dofus et DofusTouch :

  • Armes
  • Équipements
  • Panoplies
  • Familiers
  • Montures
  • Ressources
  • Consommables
  • Idoles (Dofus)
  • Harnachements (Dofus)
  • Métiers
  • Compagnons
  • Bestiaires
  • Classes
  • Havres-sacs (Dofus)

Voici le site officiel de l'API Dofapi : https://dofapi.fr/
L'API s'utilise via des requêtes HTTP de type REST (Get, Post, Put, Delete, Create). Un simulateur de requête ou pour les connaisseur un "Swagger OpenApi" est dispo pour tester vos requêtes (virez les filtres par défaut dans le simulateur) :

Exemple : dans l'exemple ci-dessous nous utiliserons : "Equipments"
*Le principe est identique pour les autres catégories
*L'id correspond aux nombres situé à la fin de l'url de chaque item.
 
Vous pouvez filtrer vos requêtes pour les affiner grâce aux filtres REST :
https://fr.dofus.dofapi.fr/equipments?filter[where][level]=200
ou
Toutes les interactions possible et plus poussées sont disponible sur le simulateur/swagger cités plus haut.
Hébergement et gestion de l'API
Nous sommes partenaire de DigitalOcean en tant que projet OpenSource. Cela nous permet de vous faire profiter de serveur plus robuste et qui gère mieux la montée en charge (requêtes). biggrin

Voici une image de l'API désormais terminée :



ROADMAP, étapes suivantes...
A l'heure où je vous écrit il me reste à travailler sur la documentation de l'API. Les types de requêtes ont été enrichis avec plusieurs manières de les trier et de les limiter, une doc est dispo sur le site officiel dofapi.

Voici une image du tableau trello sur-lequel je bosse pour vous donner une idée de l'avancement du projet :
Beaucoup de choses sont encore au programme pour vous faciliter toujours plus encore le développement de vos apps autour de l'univers d'ankama :
  • Dans les cartons, l'API pour :
    • Pages persos
    • Guildes,
    • Ladder
    • Tournois
    • Les versions anglaises, espagnols... de dofus et dofus-touch
Nous avons encore quelques surprises mais il est encore trop tôt pour vous en parler. ph34r

Concentrez vous sur vos apps et ne réinventez pas la roue, Dofapi vous fournit toutes les données sur Dofus et Dofus-Touch dont vous avez besoin.


Ps: si vous avez des idées pour enrichir l'API (format de données etc), n'hésitez pas à venir m'en parler en PV.
Ps2: pour ceux qui veulent me rejoindre sur le dev de l'API MP moi.
CONTACT : rejoignez le discord de l'app si vous souhaitez signalez un bug, proposer une amélioration ou rejoindre l'équipe Dofapi !

Cordialement,
3 0
Réactions 6
Score : 1459

Hello et bravo à toi ! 

Une possibilité de graphQL dans le futur ? ça serait super sympa à utiliser ! 

Sinon petite précision : c'est Dofus Touch ou Dofus l'API ? le nom est trompeur ... 

Et enfin, ton invitation discord est périmée, crée-en une nouvelle !

Effectivement, pardonne moi j'avais lu en diagonale ! 
​​​​​​
Super pour graphql, hâte de voir ca smile et du coup par curiosité, tu l'a montée comment pour DT ? Tu as requêté l'api REST de Dofus touch ? ou tout fait a la main ? 

0 0
Score : 92

Hello @trichetriche,

Merci pour le retour sur le discord, je n'avais pas contrôlé le lien lol. Pour répondre à tes questions, nous sommes en v1.5 de l'API. Une v2 est en construction sur une base de graphQL. L'Api est destiné à Dofus et Dofus Touch (c'est dans le titre ^^'), deux plateformes différente sont en ligne.

Bien à toi happy

0 0
Score : 92

Hello @trichetriche,

trichetriche|10/10/2019 - 16:24:00
Hello et bravo à toi ! 

Une possibilité de graphQL dans le futur ? ça serait super sympa à utiliser ! 

Sinon petite précision : c'est Dofus Touch ou Dofus l'API ? le nom est trompeur ... 

Et enfin, ton invitation discord est périmée, crée-en une nouvelle !

Effectivement, pardonne moi j'avais lu en diagonale ! 
​​​​​​
Super pour graphql, hâte de voir ca smile et du coup par curiosité, tu l'a montée comment pour DT ? Tu as requêté l'api REST de Dofus touch ? ou tout fait a la main ? 


En fait on dispose d'un moteur de parse pour Dofus et pour Dofus Touch. Ce moteur permet de récupérer l'intégralité de l'encyclopédie et de la structurer selon nos règles. Du coup on a en sortie toutes les datas prêtes à l'import en base.

 
0 0
Score : 1459

Ok je vois, et les données à parser tu les prends d'où ? Web scrapping ? 

(Je te demande parce que j'ai tenté la même chose, et je me suis rendu compte que l'encyclopédie en ligne est pas super à jour par rapport au jeu (DT, pas Dofus))

Du coup je voulais savoir comment tu avais fait ^^ 
 

0 0
Score : 84

Merci beaucoup, je ne l'utiliserai pas personnellement, mais ça sera très utile à la communauté. Par contre, lorsqu'on fait une requête pour une classe, la liste des sorts n'est pas très détaillée, juste les noms et pas les effets. Pourtant les effets sont disponibles dans l'encyclopédie et les sorts ont des pages dédiées (pas pour les sorts communs malheureusement, après j'ai pas cherché beaucoup). Par exemple le sort félintion a l'id 412 dans l'encyclopédie dofus touch :
https://www.dofus-touch.com/fr/mmorpg/encyclopedie/sorts/details?id=412&level=1&selector=1&wrapping=ak-wrapping-5da5a2ef3dc26

Edit : C'est un oubli ou c'est parce que c'est plus compliqué à parser ?

Edit 2 : d'ailleurs en fouillant un peu je suis tombé là dessus :
https://www.dofus-touch.com/fr/mmorpg/encyclopedie/sorts/details?id=411

Edit 3 : En fouillant on peut trouver les sorts communs comme flammiche
https://www.dofus-touch.com/fr/mmorpg/encyclopedie/sorts/details?id=350
et aussi les sorts des monstres, mais j'imagine que pour ces derniers ça va être compliqué de faire le lien entre les sorts disponibles dans l'api et les monstres qui les utilise.

0 0
Score : 92

Hello @Astrogomme,

Pour répondre à ta question, je vais reprendre la réponse de mon bras droit sur le projet @Aperrix :

"concernant les sorts, c'est prévu dans la V2 de dofapi MAIS comme tu l'as souligné, les sorts dans l'encyclo n'ont rien à voir avec les sorts en jeu, dans le cas de dofusbook par exemple, ils ont eux-même édité la quasi totalité des sorts eux-même pour que ce soit fidèle au jeu et que les prévisions de dégâts etc soient le plus exacte possible donc on réfléchi à comment on va faire pour vous les rendre disponible dans l'API mais il va falloir être un peu patient"

Bien à toi smile

1 0
Réagir à ce sujet