API Publique

L'API de Commus DCS FR est ouverte et gratuite. Utilisez-la dans vos projets DCS francophones.

Base URL : https://commus.kerboul.me/api

GET/api/communities

Liste paginée des communautés avec filtres.

Paramètres

searchstring— Recherche textuelle (nom, description) — insensible aux accents
modulesstring— Noms de modules séparés par virgule (ex: F-16C,F/A-18C)
communityTypestring— Types séparés par virgule (open_community, closed_squadron...)
sizeCategorystring— Catégories de taille séparées par virgule
recruitmentStatusstring— open, closed, none, unknown
eventFrequencystring— daily, several_per_week, weekly, biweekly, monthly, occasional, unknown
historicalPeriodsstring— cold_war, ww2, gulf_war, post_modern, modern, none
experiencesstring— Slugs d'expériences séparés par virgule
sortstring— Tri : name, size, updated, created, votes
sortDirstring— asc ou desc
pagenumber— Numéro de page (défaut: 1)
limitnumber— Résultats par page (défaut: 50, max: 100)

Exemple

curl "https://commus.kerboul.me/api/communities?search=bolt&recruitmentStatus=open&limit=5"
GET/api/communities/:slug

Détails complets d'une communauté par son slug.

Paramètres

slugstring— Identifiant URL de la communauté

Exemple

curl "https://commus.kerboul.me/api/communities/bolt"
GET/api/communities/random

Retourne le slug d'une communauté aléatoire.

Exemple

curl "https://commus.kerboul.me/api/communities/random"
GET/api/communities/similar

Communautés similaires basées sur les modules partagés.

Paramètres

slugstring— Slug de la communauté de référence

Exemple

curl "https://commus.kerboul.me/api/communities/similar?slug=bolt"
POST/api/communities/:slug/vote

Voter pour une communauté (+1). Protégé par session signée, délai minimal sur la fiche et rate limiting persistant côté serveur.

Paramètres

slugstring— Slug de la communauté

Exemple

Utiliser le bouton de vote depuis la fiche communauté (le jeton de session est généré à l'ouverture de la page).
GET/api/communities/export

Export complet des communautés pour intégration externe.

Exemple

curl "https://commus.kerboul.me/api/communities/export"
GET/api/modules

Liste de tous les modules DCS référencés.

Exemple

curl "https://commus.kerboul.me/api/modules"
GET/api/experiences

Liste de tous les types d'expérience (PvP, PvE, formation...).

Exemple

curl "https://commus.kerboul.me/api/experiences"
GET/api/stats

Statistiques globales de l'annuaire.

Exemple

curl "https://commus.kerboul.me/api/stats"
GET/api/changelog

Dernières communautés ajoutées ou modifiées (30 entrées).

Exemple

curl "https://commus.kerboul.me/api/changelog"
GET/api/rss.xml

Flux RSS des dernières communautés.

Exemple

curl "https://commus.kerboul.me/api/rss.xml"
POST/api/submissions

Soumettre une nouvelle communauté pour modération.

Paramètres

communityNamestring— Nom de la communauté (obligatoire)
contactNamestring— Nom du contact (obligatoire)
discordUrlstring— URL Discord
websiteUrlstring— URL du site web
descriptionstring— Description de la communauté

Exemple

curl -X POST "https://commus.kerboul.me/api/submissions" \ -H "Content-Type: application/json" \ -d '{"communityName":"Mon Escadron","contactName":"Pilote1","discordUrl":"https://discord.gg/xxx"}'