« Documentation de l'API Jeuxvideo.com » : différence entre les versions

De JVFlux
Ligne 215 : Ligne 215 :


== Liens externes ==
== Liens externes ==
* [http://www.jeuxvideo.com/forums/1-1000021-1691093-1-0-1-0-documentation-de-l-api-de-jeuxvideo-com.htm Lien du topic sur JVC pour poser vos questions]
* [https://play.google.com/store/apps/details?id=com.jeuxvideo&hl=fr L'application Android]
* [https://play.google.com/store/apps/details?id=com.jeuxvideo&hl=fr L'application Android]
* [https://play.google.com/store/apps/details?id=com.jeuxvideomp&hl=fr L'application Android des MP]
* [https://play.google.com/store/apps/details?id=com.jeuxvideomp&hl=fr L'application Android des MP]

Version du 2 avril 2013 à 03:02

L'API de Jeuxvideo.com, utilisée à l'origine par les applications mobiles de Jeuxvideo.com, permet de développer plus facilement des applications, sites web, et autres scripts en rapport avec Jeuxvideo.com.

Elle est au format XML, ce qui fait qu'elle est plus facile à parser, mais aussi plus rapide à charger qu'une page web normale.

Identification

L'API utilise le nom de domaine ws.jeuxvideo.com. Pour y accéder, il faut utiliser un des identifiants ci-dessous (authentification HTTP basique).

Attention, ces identifiants peuvent changer à tout moment (c'est déjà arrivé).

Utilisateur Mot de passe
Android app_and_gnw FC?4554?
iPhone app_ios_nw W!P45-R

Utilisation

Connexion

Pour vous connecter, utilisez la page mon_compte/connexion.php.

Voici les paramètres à envoyer (GET ou POST) :

NOTE : à l'heure où j'écris cet article, il est impossible de se connecter avec l'application Android, et donc depuis l'API. Le problème devrait être réglé bientôt.

Pour le renvoi de mot de passe, utilisez cette URL (en remplaçant Cisla par le pseudo ou bien l'adresse e-mail) :

http://ws.jeuxvideo.com/cgi-bin/passperdu_ws.cgi?email_pseudo=Cisla

Jeux, astuces, news...

URL Description
00.machines_version.xml Dernière version de l'application et liste des consoles
01.flux_jeux_nouveautes.xml
01.flux_jeux_prochainement.xml
Listes de jeux
01.jeux/21963.xml
01.jeux/details/21963.xml
01.jeux/videos/21963.xml
01.jeux/screen/21963.xml
03.preview/43689.xml
03.test_complet/9813.xml
01.jeux/news/21963.xml
05.jeu_astuce/41030.xml
05.astuce/33258.xml
Informations sur le jeu (le nombre correspond à l'id)
03.dossier/18270.xml
03.dossier/18270/1.xml
Un dossier : 18270 est l'id du dossier, 1 est la page (si vous n'en mettez pas, vous avez le sommaire)
02.flux_news.xml
02.flux_news-4.xml
La liste des dernières news. Dans le deuxième exemple, en ajoutant le nombre 4, vous retournez 4 jours en arrière (ça peut aller jusqu'à 9)
03.flux_articles_tests.xml
03.flux_articles_tests-4.xml
03.flux_articles_apercus.xml
03.flux_articles_apercus-4.xml
03.flux_articles_dossier.xml
03.flux_articles_dossier-4.xml
04.flux_videos_cliq.xml
04.flux_videos_cliq-4.xml
04.flux_videos_gaming.xml
04.flux_videos_gaming-4.xml
04.flux_videos_autres.xml
04.flux_videos_autres-4.xml
05.flux_astuces.xml
05.flux_astuces-4.xml
Même chose pour les derniers articles, tests, astuces et aperçus
02.news_screen/1234.xml Voir les screenshots associés à une news
ean.php?ean=0045496830144 Voir le jeu associé au code-barre (EAN) 0045496830144
forums_index.xml Liste des forums généraux
search_n/mario
search/mario
search_sug/mario
search_forums/mario
search_forums_sug/mario
Effectuer une recherche dans le nom des jeux ou des forums

Forums

Pour les forums, les URL sont les mêmes que pour JVC, à part que :

  • Le .htm est transformé en .xml
  • Le www.jeuxvideo.com est remplacé par un ws.jeuxvideo.com
  • La chaîne de caractère à la fin de l'URL (comme blabla-15-18-ans ou nom-du-topic) est remplacée par un 0 (sauf pour la recherche).

Par exemple :
http://www.jeuxvideo.com/forums/0-50-0-1-0-1-0-blabla-15-18-ans.htm
Devient :
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-0-0.xml

Exemples d'URL :

URL Description
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-0-0.xml La liste des sujets
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-2-cactus.xml Rechercher « cactus » dans le titre des topics
http://ws.jeuxvideo.com/forums/1-50-88795466-1-0-1-0-0.xml Un topic
http://ws.jeuxvideo.com/forums/2-50-0-1-0-1-0-0.xml Formulaire pour créer un topic
http://ws.jeuxvideo.com/forums/3-50-88795466-1-0-1-0-0.xml 10 derniers messages d'un topic + formulaire
http://ws.jeuxvideo.com/forums/5-50-88795466-1-0-1-0-0.xml Formulaire de réponse à un topic
http://ws.jeuxvideo.com/cgi-bin/jvforums/forums.cgi Envoi d'un message (avec les données POST)

Aux données de formulaires qui vous sont communiquées, vous devez ajouter (comme sur JVC normal) le paramètre yournewmessage pour le message et newsujet pour le titre du topic (si vous créez un nouveau topic). Même chose pour les captchas.

Vous devez être connecté (envoyer le cookie wenvjgol) pour récupérer et envoyer un formulaire.

Le même formulaire peut aussi bien être envoyé au forums.cgi de ws.jeuxvideo.com qu'à celui de www.jeuxvideo.com, ce qui vous permet de choisir entre apparaître « via mobile » ou non.

Messages privés

L'id de l'utilisateur mentionnée ci-dessous correspond à la partie du cookie wenvjgol qui se trouve avant le premier "$".

Une fois connecté, vous devez envoyer le cookie wenvjgol à chaque requête.

URL Description
messages-prives/connexion_ws.php Les paramètres sont les mêmes que pour la connexion depuis mon_compte/connexion.php, décrite plus haut. Cependant, la réponse XML contient quelques informations supplémentaires à propos des MP.
messages-prives/boite-reception_ws.php Cette requête permet de récupérer quelques informations, comme le nombre de messages non-lus. Paramètres à envoyer :
  • newnom : Pseudo de l'utilisateur
  • id_user : id de l'utilisateur
messages-prives/boite-reception_ws.php Permet de connaître le contenu de la boîte de réception. Paramètre à envoyer :
  • id_user : id de l'utilisateur
messages-prives/message_ws.php Permet de lire le contenu d'un message privé. Paramètres à envoyer :
  • id_user : id de l'utilisateur
  • id_discussion : id de la discussion
  • nb_clic : le nombre de fois où l'utilisateur a cliqué sur « Voir les messages précédents »
  • last_position_message : Si ce paramètre vaut 0, les 5 derniers messages sont affichés. Sinon, les 10 messages les plus anciens en partant du xème sont affichés, la numérotation débutant à partir de 0.
messages-prives/nouveau_ws.php Permet d'envoyer un nouveau message privé. Paramètres à envoyer :
  • id_user : id de l'utilisateur
  • all_dest : les destinataires, séparés pas des point-virgules
  • sujet : le titre du MP
  • yournewmessage : le contenu du MP
  • tmp : le timestamp actuel
  • control : md5("k_ys4+a]x" + idUtilisateur + "j6A=d?6-W*-" + timestamp + "z_.Im")

Il se peut également que vous ayez à gérer un code de confirmation.

messages-prives/repondre_ws.php Permet de répondre à un message privé. Paramètres à envoyer :
  • id_user : id de l'utilisateur
  • id_discussion : id de la discussion
  • yournewmessage : le contenu du message
  • tmp : le timestamp actuel
  • control : md5("vx*96-dP" + timestamp + "8e63ddO_" + idUtilisateur + "al)orc9W")

Il se peut également que vous ayez à gérer un code de confirmation.

messages-prives/suggest_pseudo_ws.php Liste quelques pseudos qui commencent par ce que l'utilisateur est en train de taper. Paramètres à envoyer :
  • id_user : id de l'utilisateur
  • search : ce que l'utilisateur est en train de taper
messages-prives/indesirable_ws.php Liste les utilisateurs ajoutés en indésirable. Paramètres à envoyer :
  • id_user : id de l'utilisateur
messages-prives/add_indesirable_ws.php Permet d'ajouter un utilisateur dans les indésirables. Paramètres à envoyer :
  • id_user : id de l'utilisateur actuel
  • id_user_indesirable : id de l'utilisateur à ajouter en indésirable
  • pseudo_indesirable : pseudo de l'utilisateur à ajouter en indésirable
messages-prives/add_indesirable_ws.php Permet d'enlever un utilisateur des indésirables. Paramètres à envoyer :
  • id_user : id de l'utilisateur actuel
  • id_user_indesirable : id de l'utilisateur à enlever des indésirables
messages-prives/info_alerte_ws.php Permet de connaître les informations qui permettront de faire une DDB sur un message. Paramètres à envoyer :
  • id_user : id de l'utilisateur qui fait la DDB (par celui qui est DDB)
  • id_message : id du message concerné
messages-prives/alerte_ws.php Permet d'effectuer une DDB (ce qui est inutile, étant donné qu'elles ne sont jamais traitées). Paramètres à envoyer :
  • id_user : id de l'utilisateur qui fait la DDB
  • pseudo : pseudo de l'utilisateur
  • motif : le motif, par exemple Piratage (les mêmes motifs que dans les MP sur JVC normal)
  • id_message : id du message concerné
  • id_discussion : id de la discussion concernée
  • time_alerte : timestamp actuel
  • key_alerte : md5("v6dE{" + idDiscussion + "d96/" + idMessage + "mvn85Qa" + timestamp + "auxarmeheuuuuuuu")

Reverse-engineering

Cet article est en cours de rédaction, ces informations seront ajoutées plus tard.

Liens externes