API publique
Endpoints en lecture seule pour récupérer les données du jeu — sans clé, sans inscription.
Base URL
https://shrouded.tools Authentification
Les endpoints listés ci-dessous sont publics : pas de clé API, pas d'inscription, pas de header obligatoire. Les endpoints d'écriture (POST/DELETE) et /api/v1/admin/* sont protégés par cookie de session et restreints au LAN/tailnet — ils ne sont pas accessibles publiquement.
CORS
Aujourd'hui les endpoints ne renvoient pas de header Access-Control-Allow-Origin, donc un fetch() depuis un autre domaine sera bloqué par le navigateur. Pour un usage server-side (curl, Python, Node, Bun, Deno) ce n'est pas un souci. Si vous voulez consommer côté browser, ouvrez une issue sur Forgejo et je whitelisterai votre origine.
Limites de taux
Nginx applique 60 req/min/IP avec un burst de 30 (zone public_api). Largement suffisant pour de la navigation normale. Au-delà : HTTP 429. Si vous avez besoin d'un quota plus élevé pour un usage légitime (mod, app tierce), contactez-moi.
Dumps complets (snapshot statique)
Pour ne pas marteler l'API quand vous avez besoin du catalogue entier, les fichiers JSON pré-build sont aussi servis sur le CDN :
/assets/wiki/items.json— 3526 items/assets/wiki/recipes.json— 1951 recettes/assets/wiki/bestiary.json— 331 monstres/assets/wiki/perks.json— 233 perks/assets/wiki/quests.json— 168 quêtes/assets/wiki/lore.json— 283 entrées lore/assets/map/markers.json— 1323 markers carte/assets/map/chests.json— 2579 coffres avec drops
Endpoints
Items
/api/v1/items Liste tous les items. Filtres optionnels : kind, slot, q (recherche).
curl https://shrouded.tools/api/v1/items?kind=weapon /api/v1/items/{code} Détail d'un item par son code (debug_name).
curl https://shrouded.tools/api/v1/items/WeaponIronSword Recettes
/api/v1/recipes Liste de toutes les recettes (cuisine + crafting + upgrades).
curl https://shrouded.tools/api/v1/recipes /api/v1/recipes/{code} Détail d'une recette par son code.
Skill tree
/api/v1/skills/tree Arbre complet : 12 sous-classes, ~150 nœuds, edges. Une seule requête.
curl https://shrouded.tools/api/v1/skills/tree /api/v1/skills/paths Liste les chemins (warrior / ranger / mage / hub).
/api/v1/skills/nodes/{code} Détail d'un nœud par son code.
Builds partagés
/api/v1/builds/{slug} Récupère un build skill partagé via le bouton « Share » du planner.
curl https://shrouded.tools/api/v1/builds/abc123 Santé
/api/v1/health Status check (200 OK quand le backend tourne).
Attribution & licence
Le site et son code sont sous AGPL-3.0. Les données extraites du jeu Enshrouded (© Keen Games GmbH) sont fournies à des fins éducatives / communautaires sans affiliation officielle. Si vous réutilisez les dumps JSON, merci de mentionner la source shrouded.tools et de respecter la licence AGPL si vous distribuez votre service.
OpenAPI (interne)
La spec OpenAPI complète existe à /api/v1/openapi.json mais elle est restreinte au LAN/tailnet (cf. audit sécu Phase 5). Si vous générez un client typé, partez de la doc ci-dessus ou ouvrez une issue pour un export.