Recherche de licence SPDX : nom et résumé
Saisissez un identifiant SPDX et découvrez en clair la licence qui se cache derrière : Apache-2.0 est l'Apache License 2.0, qui autorise l'usage commercial, la modification, la distribution et l'usage privé, avec des conditions sur les mentions et les brevets. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Identifiant
- Apache-2.0
- Nom complet
- Apache License 2.0
La recherche d’identifiants SPDX transforme un code bref comme MIT, Apache-2.0 ou GPL-3.0-only en un nom lisible et une synthèse de ses principales autorisations et conditions. Elle s’adresse aux développeurs et aux équipes qui examinent manifestes, SBOM et métadonnées de dépôts. Le résultat est immédiat et déterministe, sans réseau, téléchargement ni supposition. Une valeur absente du registre pris en charge déclenche une erreur explicite.
Comprendre un code SPDX sans le mémoriser
Saisissez une valeur dans identifier. Pour Apache-2.0, elle mentionne notamment l’usage commercial, la modification, la distribution, la conservation des avis et les clauses de brevet. Pour MIT, elle rappelle la grande liberté de réutilisation et le maintien de l’avis de copyright.
Les licences copyleft signalent les obligations relatives au code source et à la redistribution. Cette synthèse convient à un tableau de dépendances, mais elle ne remplace ni le texte intégral de la licence ni un conseil juridique adapté à votre situation.
Formes canoniques, anciennes valeurs et erreurs
Les espaces extérieurs sont supprimés et la casse n’influence pas la recherche. Aucun rapprochement approximatif, signe manquant ou numéro de version n’est deviné. GPL-3.0-only et GPL-3.0-or-later restent donc distincts.
Pour les anciennes métadonnées, GPL-3.0 conserve son sens historique « only » et renvoie GPL-3.0-only. Vérifiez alors la liste SPDX officielle et transmettez le code exact. Un titre complet ou un LicenseRef personnalisé n’est pas assimilé à un identifiant standard.
Intégrer la réponse à vos contrôles
Vous pouvez extraire les licences d’un manifeste ou d’un SBOM, interroger chaque valeur distincte puis afficher le nom et la synthèse près de chaque dépendance. Cette capacité accepte un seul identifiant, jamais une expression avec AND, OR, WITH ou des parenthèses. Elle ne juge pas la compatibilité entre licences ni la conformité juridique d’une distribution.
Cas d’usage
Examiner un manifeste
Développez les codes de licence avant d’approuver une nouvelle dépendance.
Enrichir une interface SBOM
Affichez droits et conditions dans l’inventaire sans requête réseau.
Valider des métadonnées
Dirigez les identifiants inconnus vers une vérification humaine.
Questions fréquentes
Les expressions SPDX complètes sont-elles acceptées ?
Non. Envoyez un identifiant unique, sans AND, OR, WITH ni parenthèses.
Pourquoi GPL-3.0 devient-il GPL-3.0-only ?
Cette ancienne forme SPDX signifiait historiquement version 3 uniquement ; la réponse canonique le précise.
La synthèse constitue-t-elle un conseil juridique ?
Non. Consultez la licence complète et un professionnel qualifié pour toute décision juridique.
La casse compte-t-elle quand je saisis l'identifiant ?
Non. Les espaces autour sont retirés et l'orthographe est comparée sans tenir compte de la casse : une valeur copiée d'un rapport mal formaté est donc reconnue, et vous recevez la forme canonique, comme Apache-2.0.
Quelle différence entre GPL-3.0-only et GPL-3.0-or-later ?
La première accorde la licence pour la seule version 3 ; la seconde permet aussi d'utiliser les versions ultérieures. Comme ce choix modifie la permission accordée par le concédant, la recherche garde les deux identifiants distincts.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/dev/license-spdx-lookup \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"identifier":"Apache-2.0"}'const res = await fetch("https://api.kit.forhosting.com/dev/license-spdx-lookup", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"identifier": "Apache-2.0"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/license-spdx-lookup",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"identifier": "Apache-2.0"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/license-spdx-lookup", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"identifier":"Apache-2.0"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"identifier":"Apache-2.0"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/license-spdx-lookup", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"identifier": "Apache-2.0"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.license_spdx_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_chars | 100 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comprendre un code SPDX sans le mémoriser
La réponse contient identifier, full_name et summary : l’orthographe canonique, le nom usuel et une explication claire.
Formes canoniques, anciennes valeurs et erreurs
Une valeur vide, non textuelle, trop longue ou inconnue produit invalid_input.
Intégrer la réponse à vos contrôles
Le JSON stable convient aussi aux scripts, contrôles de pull request, tableaux d’inventaire et validations d’import. Traitez invalid_input comme un motif de contrôle humain : la donnée peut contenir une expression composée, un LicenseRef ou une faute.
Questions techniques
Que devient une valeur inconnue ?
La requête renvoie invalid_input avec la valeur concernée, sans proposer de remplacement.
Quel est le prix d’une recherche API ?
Chaque requête API réussie coûte $0.002. La version navigateur s’exécute localement sans réseau.