API publique Xatools : powers, prix, pions, stickers et compte à rebours xat
JSON gratuit et sans inscription pour votre site, bot ou application. Les données sont lues directement sur xat.com toutes les 5 minutes (chaque nouveau power est détecté automatiquement) et complétées par les prix de trade de fair-trade. CORS ouvert, réponses mises en cache 5 minutes.
https://api.xatools.net/v1Essayer en direct
S'exécute dans votre navigateur sur l'API réellePulsa «Consultar» o elige un ejemplo.
Endpoints
Tous répondent en JSON avec code: 200 y updated (unix) de la dernière mise à jour. Ajoutez ?pretty pour l'afficher formaté. Les noms de power ne sont pas sensibles à la casse.
GET/v1/latestDernier power avec fiche complète, compte à rebours du prochain et les 14 plus récents
Champs : latest (fiche complète, voir /v1/power), countdown (voir /v1/countdown), recent[] (résumé), stickers[] (derniers powers avec stickers).
GET/v1/countdownCompte à rebours du prochain power (annonces réelles uniquement)
status: announced (annonce officielle de xat), manual (fixé par l'équipe Xatools), ou none (sin anuncio: no se estima ni se predice nada) o released (lanzado en las últimas 12 h). time (unix), iso, seconds_left, power (id y nombre si xat lo indica), max_per_user, amount, last (dernier power), median_interval_days. Announce.php se lee cada 60 s (relay propio), así que el contador aparece en cuanto xat lo anuncia; el power nuevo se detecta en ≤2 min y el contador se reinicia solo.
GET/v1/releasesHistorique des lancements
announces[] (anuncios de xat registrados: seen, time, power_id, name, max_per_user, amount) y detected[] (cuándo apareció cada power en la tienda). El historial de un power concreto también va en /v1/power/{name} → history[].
GET/v1/powersCatalogue complet (résumé par power)
Paramètres : q (texte dans le nom, la description ou les smileys), status (unlimited, limited, epic, collection, subscription), category (group, stickers, ace, hug, game, epic, allpowers, new… ou le nom d'une section de la boutique), type (smiley, function, stickers, supers…), limit, offset, full=1 (inclut smileys, pions, stickers, hugs…).
GET/v1/power/{nombre|id}Fiche complète d'un power
id, name, status, type, category, short, long, store {xats|days, text}, trade {min, max, min_days, max_days} (fair-trade), released, released_int, categories[], smilies[], pawns[] {name, hat}, stickers[], stickers_total, hugs[], backgrounds[], aces[], effects[], frames[], collection {required[], pawns[], smilies[]}, images {icon, strip80, smiley}.
GET/v1/collections · /v1/collection/{nombre}Collections (super powers)
Chaque collection : id, name, required[] {id, name} (powers requis selon xat), pawns[] (pions débloqués), smilies[].
GET/v1/pawnsPions actifs de xat
active[] {key, power_id, name, hat} directement de xat (code prêt à l'emploi, ex. (hat#hJa)), time (validité) et fair_trade[] à titre de référence.
GET/v1/stickers · /v1/stickers/{power}Powers avec stickers et leur liste
GET/v1/pricesPrix boutique et fourchette de trade de tous les powers
Prix boutique selon xat.com et fourchette de trade selon fair-trade, mis à jour toutes les 6 h.
GET/v1/hugs · /v1/aces · /v1/effects · /v1/backgrounds · /v1/free · /v1/typesHugs, aces, effets et frames, fonds par power, smileys gratuits, sections de la boutique
GET/v1/smiley/{código} · /v1/search?q=À quel power appartient un smiley · recherche rapide
GET/v1/promoted?lang=es · /v1/announce · /v1/statusChats promus par langue · annonces xat · état du service
GET/v1/user/{id|nick} · /v1/user/{id|nick}/online · /v1/user/{id|nick}/powersID ↔ nom · en ligne ? · powers, doubles et manquants d'un utilisateur
Données en direct de xat.com via le bot Xatools. Le statut est gardé 1 minute et les powers 5 minutes ; xat ne révèle les powers d'un utilisateur que lorsque le bot le voit dans un chat (ou qu'il répond à une localisation), donc 404 est possible jusque-là. Aussi /v1/room/{chat} (infos d'un salon) et /v1/bot (statut du bot). Interface web : /usuario/.
Exemple d'utilisation
// JavaScript (navegador o Node 18+)
const r = await fetch('https://api.xatools.net/v1/latest');
const { latest, countdown } = await r.json();
console.log(latest.name, latest.store.text, latest.smilies);
if (countdown.time) console.log('Próximo power:', new Date(countdown.time * 1000));
// PHP
$j = json_decode(file_get_contents('https://api.xatools.net/v1/power/purple'), true);
echo $j['power']['trade']['min'] . ' - ' . $j['power']['trade']['max'] . ' xats';
// Python
import requests
p = requests.get('https://api.xatools.net/v1/powers', params={'status': 'limited', 'limit': 10}).json()
print([x['name'] for x in p['powers']])
Xatools n'est pas affilié à xat.com. Les données proviennent de sources publiques de xat.com ; prix : fair-trade. En cas d'usage intensif, mettez les réponses en cache au moins 5 minutes.