Erreurs
Quand une commande échoue, MyHUD répond avec un code d'erreur et un message.
- HTTP :
{ "ok": false, "error": "<code>", "message": "..." }, avec le statut ci-dessous. - WebSocket :
{ "type": "ack", "ok": false, "code": "<code>", "error": "..." }.
Les messages d'erreur sont en anglais.
Erreurs de commande
| Code | HTTP | Cause | Que faire |
|---|---|---|---|
unknown_action | 404 | La commande n'existe pas. | Vérifie le nom dans Commandes ou GET /api/actions. |
invalid_payload | 400 | Le payload est faux : champ manquant, valeur invalide, veto qui ne respecte pas les règles. | Lis le message. Il indique le champ en cause. |
conflict | 409 | La commande ne peut pas s'exécuter maintenant : pas encore de veto sur FACEIT, pas de session de veto, emplacement de map vide… | Attends et réessaie, ou fais d'abord l'étape manquante. |
unavailable | 503 | Il manque quelque chose : fenêtre principale fermée, pas connecté, OBS non connecté, pas d'abonnement. | Ouvre MyHUD et connecte-toi, connecte OBS, ou vérifie ton abonnement. |
timeout | 504 | La fenêtre MyHUD ou FACEIT/HLTV n'a pas répondu à temps. | Réessaie. |
upstream_error | 502 | FACEIT, HLTV ou le serveur MyHUD a renvoyé une erreur. | Vérifie l'URL, puis réessaie plus tard. |
dispatch_error | 500 | Erreur inattendue. | Réessaie. Si elle revient, signale-la avec le message. |
Erreurs d'accès
| Code | HTTP | Cause |
|---|---|---|
unauthorized | 401 | Jeton absent ou faux, depuis un autre appareil. |
forbidden | 403 | Le mode réseau local est désactivé, ou l'appareil n'est pas sur un réseau local. |
forbidden_origin | 403 | La requête vient d'une page web. |
invalid_host | 403 | L'adresse utilisée pour joindre MyHUD n'est pas acceptée. Utilise une adresse IP, localhost ou le nom du PC. |
rate_limited | 429 | Plus de 20 requêtes par seconde depuis un autre appareil. |
WebSocket uniquement
| Code | Cause |
|---|---|
busy | Tu as envoyé un trigger avant de recevoir l'ack du précédent. |
invalid_json | Le message n'est pas du JSON valide. |
invalid_message | Le message a un type inconnu ou un champ manquant. |
Pour les codes de fermeture, voir API WebSocket.
