Aller au contenu
← Retour à l'aperçu
Développeurs

API publique

L'ensemble du catalogue de solutions sous forme de fichier JSON ouvert et statique – sans inscription, sans pistage.

1 · Aperçu

Swiss IT Navigator met à disposition son catalogue complet et curé de solutions open source souveraines sous forme d'API JSON publique et en lecture seule. Les données sont générées au moment du build sur une infrastructure suisse (RZO Gais) et servies comme fichier statique – aucun code serveur à l'exécution, aucune base de données, aucune collecte de données personnelles.

2 · Point de terminaison

GEThttps://swissitnavigator.ch/api/v1/solutions.json

Il existe exactement un point de terminaison. Il renvoie tout le répertoire en une seule réponse.

3 · Accès & conditions d'utilisation

Aucune authentification
Pas de clé API, pas de jeton, pas de connexion.
CORS
Access-Control-Allow-Origin : * – utilisable directement depuis le navigateur.
Mise en cache
Cache navigateur 1 heure, CDN/proxy 24 heures (s-maxage). Merci de le respecter.
Limite de débit
Pas de limite stricte ; usage raisonnable attendu. Mettez en cache plutôt que d'interroger en boucle.
Actualité
Régénéré à chaque déploiement (généralement quotidien), avec les étoiles GitHub actuelles.

4 · Structure de la réponse

La réponse est un objet contenant des métadonnées et le tableau solutions :

ChampTypeDescription
versionnumberAPI schema version (currently 1).
generatedAtstringISO 8601 timestamp of the build that produced this file.
countnumberNumber of solutions in the array.
licensestringLicence of the dataset (MIT).
homepagestringCanonical project homepage.
solutionsSolution[]Array of solution objects (see below).

5 · Objet Solution

Chaque entrée du tableau solutions possède les champs suivants :

ChampTypeDescription
namestringDisplay name of the solution.
categorystringOne of the fixed category names (e.g. "DevOps", "Storage").
descriptionstringGerman description (source of truth).
descriptionEnstringEnglish description.
descriptionFrstring?French description (optional).
descriptionItstring?Italian description (optional).
licensestringOSI/SPDX licence identifier (e.g. "MIT", "AGPL-3.0").
deploymentstring[]Subset of "kubernetes" | "docker" | "linux".
audiencestring[]Subset of "business" | "private" — who realistically uses this solution.
complexitynumber1–10 · setup & deployment effort (lower = simpler).
maturitynumber1–10 · project stability & production-readiness (higher = more mature).
resourceUsagenumber1–10 · RAM/CPU footprint (lower = lighter).
maintenancenumber1–10 · day-to-day operational overhead (lower = less).
tagsstring[]Free-form tags, incl. "<product>-alternative" markers.
githubstringSource repository URL (GitHub or GitLab).
websitestringOfficial project website URL.
iconstringEmoji used as the solution icon.
originstringGeographic origin label (e.g. "🇨🇭 Schweiz", "🌍 International").
addedAtstringISO date (YYYY-MM-DD) the solution was added to the catalogue.
starsnumber | nullGitHub stars at build time; null if unavailable.

6 · Exemples

Shell (curl + jq)

curl -s https://swissitnavigator.ch/api/v1/solutions.json | jq '.count'

JavaScript (fetch)

const res = await fetch('https://swissitnavigator.ch/api/v1/solutions.json')
const { solutions } = await res.json()

// e.g. all low-maintenance Kubernetes-ready options
const easy = solutions.filter(
  (s) => s.deployment.includes('kubernetes') && s.maintenance <= 3
)

Exemple de réponse (tronqué)

{
  "version": 1,
  "generatedAt": "2026-06-05T08:00:00.000Z",
  "count": 123,
  "license": "MIT",
  "homepage": "https://swissitnavigator.ch",
  "solutions": [
    {
      "name": "Gitea",
      "category": "DevOps",
      "description": "Gitea ist ein selbstgehosteter Git-Service …",
      "descriptionEn": "Gitea is a self-hosted Git service …",
      "license": "MIT",
      "deployment": ["kubernetes", "docker", "linux"],
      "audience": ["business", "private"],
      "complexity": 2,
      "maturity": 8,
      "resourceUsage": 2,
      "maintenance": 2,
      "tags": ["git", "ci-cd", "github-alternative"],
      "github": "https://github.com/go-gitea/gitea",
      "website": "https://gitea.io",
      "icon": "🐙",
      "origin": "🌍 International",
      "addedAt": "2026-05-17",
      "stars": 47000
    }
  ]
}

7 · Licence & attribution

Le jeu de données est publié sous licence MIT et peut être utilisé librement – y compris à des fins commerciales. Une attribution avec un lien vers swissitnavigator.ch est appréciée. Les exploitants des projets liés sont responsables de leur propre contenu.

Mise à jour : juin 2026