API REST simple, écrite en PHP natif (sans framework), qui expose la liste des versions de Pyramid Browser au format JSON structuré.
Toutes les réponses sont au format application/json; charset=utf-8. Chaque réponse contient un champ success (booléen). En cas de succès, les données se trouvent dans data. En cas d'échec, un message d'erreur se trouve dans message.
Retourne la liste de toutes les versions, triées par date de publication décroissante. C'est cette route qu'utilise l'interface web pour afficher le tableau de bord.
| Paramètre | Type | Description |
|---|---|---|
statut | string | Filtre par statut : publiee ou en_developpement |
curl https://version.pyramidbrowser.cm/api/versions
curl "https://version.pyramidbrowser.cm/api/versions?statut=publiee"
200 OK
{
"success": true,
"count": 2,
"data": [ { "numero": "2.1.0", "titre": "...", "..." : "..." } ]
}
Route à utiliser pour un bouton « Vérifier les mises à jour ». Récupère l'URL de téléchargement de la plateforme concernée dans telechargements et lance le téléchargement quand l'utilisateur clique sur « Mettre à jour ».
| Paramètre | Type | Description |
|---|---|---|
version_actuelle | string | Numéro de version installée sur l'appareil de l'utilisateur |
curl "https://version.pyramidbrowser.cm/api/versions/latest?version_actuelle=1.1.0"
200 OK
{
"success": true,
"mise_a_jour_disponible": true,
"data": {
"numero": "0.8.0",
"telechargements": {
"windows": { "url": "https://version.pyramidbrowser.cm/versions/PyramidBrowser-0.8.0-win.exe", "taille_mo": 92.4, "disponible": true },
"macos": { "url": "https://version.pyramidbrowser.cm/versions/PyramidBrowser-0.8.0-mac.dmg", "taille_mo": null, "disponible": false },
"linux": { "url": "https://version.pyramidbrowser.cm/versions/PyramidBrowser-0.8.0-linux.AppImage", "taille_mo": null, "disponible": false }
}
}
}
Si version_actuelle n'est pas fourni, mise_a_jour_disponible vaut null. Pour chaque plateforme dans telechargements, taille_mo et disponible ne sont renseignés que si le fichier installable correspondant a bien été déposé dans le dossier versions/ du serveur ; sinon ils valent respectivement null et false. Une version plus ancienne au format à plat (url_telechargement unique) reste supportée pour compatibilité.
{ "success": false, "message": "Aucune version publiée pour le moment" }
Retourne le détail d'une seule version, identifiée par son numéro exact (ex : 2.0.0).
curl https://version.pyramidbrowser.cm/api/versions/2.0.0
404 Not Found
{ "success": false, "message": "Aucune version trouvée pour le numéro \"9.9.9\"" }
| Champ | Type | Description |
|---|---|---|
numero | string | Numéro de version sémantique, ex : 1.2.0 |
titre | string | Titre court de la version |
date_publication | string | Date au format ISO YYYY-MM-DD |
type | string | majeure, mineure ou patch |
statut | string | publiee ou en_developpement |
description | string | Description libre de la version |
changements | string[] | Liste des changements apportés |
auteur | string | Équipe ou personne responsable |
telechargements | object | Optionnel — une clé par plateforme (windows, macos, linux), chacune avec url, taille_mo et disponible |
telechargements.{plateforme}.url | string | URL directe vers le fichier installable de cette plateforme dans versions/ |
telechargements.{plateforme}.taille_mo | number | null | Calculée dynamiquement depuis le fichier physique (uniquement sur /api/versions/latest) |
telechargements.{plateforme}.disponible | boolean | true si le fichier existe réellement sur le serveur |
| Code | Signification |
|---|---|
| 200 | Requête traitée avec succès |
| 404 | Route inconnue, ou version introuvable pour le numéro donné |
L'API n'implémente que des routes en lecture (GET).