APIOutils

Bibliothèques clientes

Les clients officiels de WoWDB, d’un seul fichier et sans dépendance, et la génération de clients par OpenAPI.

Voir en Markdown

Bibliothèques officielles#

Chaque client tient en un seul fichier sans dépendance : copiez-le dans votre projet. Tous suivent la même interface : une méthode par ressource, la pagination automatique (iterate), une erreur typée avec le code de l’API, et une nouvelle tentative après Retry-After sur un 429.

Bon à savoirCes bibliothèques ne sont pas (encore) publiées sur npm, PyPI, Packagist, RubyGems ou Maven : téléchargez-les ci-dessous, et vérifiez leur somme SHA-256. Le fichier SHA256SUMS les réunit (sha256sum -c SHA256SUMS).
Avec un client officiel
import { WowDb } from "./wowdb.mjs";

const wowdb = new WowDb({ userAgent: "bot-de-ma-guilde/1.0" });
const lame = await wowdb.items.retrieve("classic", 5191);
console.log(lame.name, lame.weapon.dps);

for await (const dague of wowdb.items.iterate("classic", { type: "dagger", rogue: true })) {
  console.log(dague.name);
}

Téléchargements#

  • JavaScript / TypeScriptNavigateur, Node.js 18+, Deno, Bun (ESM)
    v1.0.0testé

    wowdb.mjs · 6,4 Kio · types : wowdb.d.ts

    SHA-256a7b00fe9cf204a05c23ab5f3eaef5607730755d1c40577dff2129d5397c378fb

    TéléchargerLire le code

  • PythonPython 3.8+, bibliothèque standard
    v1.0.0testé

    wowdb.py · 6,3 Kio

    SHA-256e6c997523786fc301d38525f0c44ca49fe02bf5eb225a60459882a2d8e2ea100

    TéléchargerLire le code

  • PHPPHP 8.1+, extension json
    v1.0.0

    WowDb.php · 5,3 Kio

    SHA-2563ce312657cd8295f76b02101b0836e07ec3b0ebe15caa078ca144820d9d22a0a

    TéléchargerLire le code

  • RubyRuby 3.0+, bibliothèque standard
    v1.0.0

    wowdb.rb · 4,1 Kio

    SHA-256b4ce1c7f5971bd4c9852738e32e6951c20dab52bcbd2ec719a165d88239f071a

    TéléchargerLire le code

  • GoGo 1.18+, bibliothèque standard
    v1.0.0

    wowdb.go · 5,2 Kio

    SHA-2564c5d45843a156ec6d71b73443b5ca7c0d362d50a7cec3eb5c0681c788c76da80

    TéléchargerLire le code

  • JavaJava 11+, java.net.http, lecteur JSON intégré
    v1.0.0

    WowDb.java · 11,7 Kio

    SHA-256ac84d831bb2b7a5a0d82b8ef0f76b4cd29f9e43ddabf0aa26573ecf6cc3e02d1

    TéléchargerLire le code

  • C# / .NET.NET 6+, System.Text.Json
    v1.0.0

    WowDb.cs · 6,9 Kio

    SHA-2561e3d47affb44aaf06a51f6ad1046029bcf3c5226166cc392542817d9cedbcaff

    TéléchargerLire le code

Les clients marqués « testé » sont exécutés contre l’API à chaque série de tests de WoWDB ; les autres suivent la même interface et les mêmes règles (erreurs, pagination, Retry-After). Un souci, une amélioration ? Dites-le sur le forum.

Générer un client depuis OpenAPI#

Pour un client typé dans un autre langage, ou avec vos conventions, générez-le depuis la spécification OpenAPI 3.1. Quelques générateurs connus :

LangageOutilCommande
TypeScript (types)openapi-typescriptnpx openapi-typescript https://api.wowdb.assemblee-defias.fr/v1/openapi.json -o wowdb.d.ts
TypeScript (client fetch)OpenAPI Generatoropenapi-generator-cli generate -i https://api.wowdb.assemblee-defias.fr/v1/openapi.json -g typescript-fetch -o wowdb-ts
Pythonopenapi-python-clientopenapi-python-client generate --url https://api.wowdb.assemblee-defias.fr/v1/openapi.json
Gooapi-codegenoapi-codegen -package wowdb -generate types,client openapi.json > wowdb.gen.go
JavaOpenAPI Generatoropenapi-generator-cli generate -i https://api.wowdb.assemblee-defias.fr/v1/openapi.json -g java -o wowdb-java
C#NSwagnswag openapi2csclient /input:https://api.wowdb.assemblee-defias.fr/v1/openapi.json /namespace:WowDb /output:WowDb.cs
PHPOpenAPI Generatoropenapi-generator-cli generate -i https://api.wowdb.assemblee-defias.fr/v1/openapi.json -g php -o wowdb-php
RubyOpenAPI Generatoropenapi-generator-cli generate -i https://api.wowdb.assemblee-defias.fr/v1/openapi.json -g ruby -o wowdb-ruby
RustOpenAPI Generatoropenapi-generator-cli generate -i https://api.wowdb.assemblee-defias.fr/v1/openapi.json -g rust -o wowdb-rust
Kotlin, Swift, Dart…OpenAPI Generatoropenapi-generator-cli list donne les 50 générateurs de clients
Bon à savoirPour oapi-codegen, téléchargez d’abord le fichier : curl -o openapi.json https://api.wowdb.assemblee-defias.fr/v1/openapi.json.

API de WoWDB des Défias, v1. Données du jeu © Blizzard Entertainment. Conditions d’usage · Markdown · llms.txt · OpenAPI