API et webhooks
Permissions
| Scope | Donne |
|---|---|
nay_car_wash.config | /nay:carwash (éditeur de tunnels) et les réglages Car Wash dans /nay. |
Accordez-le par ACE ou par règle, voir Permissions.
API HTTP
Activez d'abord l'API et créez un jeton, voir API HTTP. Les routes répondent { "ok": true, "data": ... } et demandent Authorization: Bearer <token>.
| Méthode | Route | Scope | Requête | Données |
|---|---|---|---|---|
| GET | /nay_car_wash/v1/history | nay_car_wash.history.read | identifier, kind (tunnel ou manual), limit (1 à 100, 20 par défaut), before (id) | items (id, identifier, kind, location, program, price, time), du plus récent au plus ancien, et next : passez-le en before pour la page suivante. |
| GET | /nay_car_wash/v1/stats | nay_car_wash.stats.read | days (1 à 31, 7 par défaut), utcOffset (minutes, -720 à 840, par défaut : l'horloge du serveur) | utcOffset utilisé, total, byDay (chaque jour listé) et byLocation, chacun avec washes et revenue. |
| GET | /nay_car_wash/v1/tunnels | nay_car_wash.tunnels.read | index, label, enabled, entry pour chaque tunnel. |
Exemple :
bash
curl -H "Authorization: Bearer nay_1_xxxxxxxx" "https://api.example.com/nay_car_wash/v1/stats?days=7"Événements de webhook
Choisissez-les dans l'onglet Webhooks de /nay, voir Webhooks.
| Événement | Quand | Données |
|---|---|---|
nay_car_wash.wash | Un lavage en tunnel est terminé. | player (nom), identifier, tunnel, program, price |
nay_car_wash.manual | Une session de nettoyeur se termine. | player (nom), identifier, station, price |
Avec un webhook Discord, chaque lavage devient un embed dans votre salon, dans la langue du serveur.