Cette API sert de backend pour l’extension Firefox StatusWatch.
Elle se charge de vérifier la disponibilité et la latence des services (IP, hostname, URL) configurés par l’utilisateur dans l’extension.
- Vérification d’adresses IP via ICMP (ping).
- Vérification de services HTTP/HTTPS via requête web.
- Réponse structurée avec latence et statut up/down.
- Extensible facilement (nouveaux protocoles possibles).
- API clé optionnelle pour sécuriser l’accès.
- Node.js >= 18
- npm
git clone https://github.com/Torskoo/statuswatch-api.git
cd statuswatch-api
npm installnode server.jsPar défaut, le serveur écoute sur http://localhost:3000.
Vérifie une liste de services envoyés par l’extension.
POST /check
Content-Type: application/json
Authorization: Bearer <apiKey> # optionnel
{
"services": [
{ "id": "abc123", "url": "https://example.com" },
{ "id": "def456", "url": "8.8.8.8" }
]
}{
"results": [
{ "id": "abc123", "status": "up", "latency_ms": 87 },
{ "id": "def456", "status": "down", "error": "timeout" }
]
}status:upoudownlatency_ms: temps de réponse en millisecondes (si dispo)error: message d’erreur si indisponible
Les variables suivantes peuvent être définies :
PORT: port HTTP (par défaut3000)API_KEY: si défini, toutes les requêtes doivent inclureAuthorization: Bearer <API_KEY>
statuswatch-api/
├── server.js # Point d'entrée principal
├── package.json # Dépendances
└── README.md # Ce fichier
- express – framework web
- ping – ping ICMP
- node-fetch – requêtes HTTP
MIT © 2025
Contributions et PR bienvenues 🙌