Ricerca licenza SPDX: nome e sintesi
Scriva un identificatore SPDX e veda in parole semplici la licenza che c'è dietro: Apache-2.0 è la Apache License 2.0, che consente uso commerciale, modifica, distribuzione e uso privato, con condizioni su avvisi e brevetti. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Identificatore
- Apache-2.0
- Nome completo
- Apache License 2.0
La ricerca degli identificatori SPDX trasforma un codice breve come MIT, Apache-2.0 o GPL-3.0-only nel nome leggibile della licenza e in una spiegazione concisa dei principali permessi e vincoli. È pensata per chi sviluppa o verifica dipendenze, manifesti, SBOM e metadati dei repository. Il risultato è immediato e deterministico: non usa rete, download o ipotesi. Se il valore non appartiene al registro supportato, viene restituito un errore chiaro.
Comprendere un codice SPDX senza impararlo a memoria
Inserisca un valore nel campo identifier. Per Apache-2.0 vengono ricordati uso commerciale, modifica, distribuzione, conservazione degli avvisi e termini sui brevetti. Per MIT emerge l’ampia facoltà di riuso, purché restino gli avvisi richiesti.
Le licenze copyleft evidenziano gli obblighi relativi al sorgente e alla licenza quando si distribuiscono modifiche. La sintesi è adatta a tabelle di dipendenze e schermate di revisione, ma non sostituisce il testo integrale né una consulenza legale sul caso concreto.
Grafia canonica, forme storiche ed errori
Gli spazi esterni vengono rimossi e il confronto ignora maiuscole e minuscole. Non vengono indovinati segni, versioni o corrispondenze approssimative. GPL-3.0-only e GPL-3.0-or-later restano quindi distinti.
Per compatibilità con vecchi metadati, GPL-3.0 mantiene il significato storico “only” e restituisce GPL-3.0-only. In tal caso controlli l’elenco SPDX ufficiale e invii il codice esatto. Titoli completi e LicenseRef personalizzati non sono considerati identificatori standard.
Usare il risultato nelle verifiche automatiche
È possibile estrarre il campo licenza da un manifesto o SBOM, consultare ogni valore distinto e mostrare nome e sintesi accanto alla dipendenza. La capacità accetta un solo identificatore, non espressioni con AND, OR, WITH o parentesi. Non stabilisce compatibilità tra licenze, completezza degli avvisi o conformità legale di una distribuzione commerciale.
Casi d'uso
Esaminare un manifesto
Espanda i codici prima di approvare una nuova dipendenza.
Arricchire un’interfaccia SBOM
Mostri permessi e condizioni nell’inventario senza usare la rete.
Convalidare metadati
Invii gli identificatori sconosciuti alla revisione umana.
Domande frequenti
Sono accettate espressioni SPDX complete?
No. Invii un solo identificatore, senza AND, OR, WITH o parentesi.
Perché GPL-3.0 restituisce GPL-3.0-only?
La vecchia forma SPDX indicava storicamente solo la versione 3; il risultato canonico lo esplicita.
La sintesi è una consulenza legale?
No. Legga la licenza completa e consulti un professionista qualificato per decisioni legali.
Le maiuscole contano quando scrivo l'identificatore?
No. Gli spazi attorno vengono eliminati e la grafia viene confrontata senza distinguere le maiuscole, così anche un valore copiato da un report disordinato viene riconosciuto, e lei riceve la forma canonica, come Apache-2.0.
Che differenza c'è tra GPL-3.0-only e GPL-3.0-or-later?
La prima concede la licenza solo per la versione 3; la seconda permette anche di usare le versioni successive. Poiché questa scelta cambia il permesso concesso dal licenziante, la ricerca tiene separati i due identificatori.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo 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)Esempio di richiesta
{
"identifier": "Apache-2.0"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.license_spdx_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_chars | 100 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Comprendere un codice SPDX senza impararlo a memoria
La risposta contiene identifier, full_name e summary: grafia canonica, nome comune e spiegazione essenziale.
Grafia canonica, forme storiche ed errori
Un valore vuoto, non testuale, troppo lungo o sconosciuto genera invalid_input.
Usare il risultato nelle verifiche automatiche
Il JSON stabile è utile anche per script, controlli delle pull request, inventari e importazioni. Tratti invalid_input come richiesta di verifica umana: potrebbe esserci un’espressione composta, un LicenseRef o un dato errato.
Domande tecniche
Che cosa accade con un valore sconosciuto?
La richiesta genera invalid_input e riporta il valore, senza inventare sostituzioni.
Quanto costa una ricerca tramite API?
Ogni richiesta API riuscita costa $0.002. La versione nel browser funziona localmente senza rete.