Consulta de licencias SPDX: nombre y resumen
Escriba un identificador SPDX y vea en palabras claras la licencia que hay detrás: Apache-2.0 es la Apache License 2.0, que permite uso comercial, modificación, distribución y uso privado, con condiciones sobre avisos y patentes. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Identificador
- Apache-2.0
- Nombre completo
- Apache License 2.0
El buscador de identificadores de licencia SPDX convierte un código breve como MIT, Apache-2.0 o GPL-3.0-only en el nombre legible de la licencia y una explicación concisa de sus principales permisos y condiciones. Está pensado para desarrolladores, responsables de dependencias y sistemas de compilación que encuentran estos códigos en manifiestos de paquetes, inventarios de software y metadatos de repositorios. El resultado es determinista e inmediato: no hay consultas de red, descargas ni conjeturas. Si el identificador no pertenece al registro admitido, la herramienta devuelve un error claro.
Comprenda un identificador SPDX sin memorizarlo
Los identificadores SPDX son breves para facilitar su uso en archivos procesables por máquinas, pero durante una revisión pueden resultar poco expresivos. El primero usa la grafía canónica admitida, el segundo desarrolla el nombre habitual de la licencia y el tercero explica en lenguaje claro sus permisos y obligaciones centrales. Apache-2.0, por ejemplo, permite el uso comercial y privado, la modificación y la distribución, y también exige conservar avisos, señalar cambios relevantes y respetar sus cláusulas de patentes.
MIT destaca la amplia reutilización sujeta a conservar el aviso de copyright y permiso. En las licencias copyleft, el resumen señala las obligaciones de código fuente y licencia aplicables al distribuir modificaciones. Esta información sirve como orientación rápida para una tabla de dependencias, pero no sustituye la lectura del texto íntegro ni el asesoramiento jurídico sobre un caso concreto.
Grafía canónica, identificadores antiguos y errores
La consulta elimina espacios exteriores y compara sin distinguir mayúsculas de minúsculas, por lo que puede resolver un valor copiado de un informe con formato irregular. No realiza coincidencias aproximadas, no adivina signos omitidos ni elige silenciosamente una versión. Así se evita convertir una errata en una afirmación jurídica incorrecta.
Identificadores actuales como GPL-3.0-only y GPL-3.0-or-later permanecen separados, pues permitir solo una versión o también versiones posteriores cambia la autorización. Por compatibilidad con metadatos antiguos, formas obsoletas como GPL-3.0 conservan su significado histórico “only” y se devuelven como GPL-3.0-only. Ante un rechazo, compruebe el valor en la lista oficial SPDX y envíe el identificador exacto.
La herramienta no interpreta el título completo de una licencia ni un valor personalizado LicenseRef como identificador estándar reconocido.
Integre el resultado en revisiones y automatizaciones
Un flujo habitual extrae el campo de licencia de los metadatos de paquetes o de un SBOM, consulta cada valor distinto y muestra el nombre y el resumen junto a la dependencia. Esto permite separar rápidamente licencias permisivas, copyleft por archivo y copyleft fuerte antes de abrir el texto legal completo. Puede almacenar el resultado por identificador canónico cuando procese valores repetidos, aunque la operación ya es una consulta local pequeña.
La capacidad acepta un identificador, no expresiones con AND, OR, WITH o paréntesis. Tampoco decide compatibilidad entre licencias, suficiencia de avisos ni cumplimiento de una distribución comercial.
Qué puede hacer con ella
Revisar un manifiesto de dependencias
Convierta códigos de licencia en nombres y resúmenes legibles antes de aprobar un paquete nuevo.
Enriquecer una interfaz de SBOM
Muestre permisos y condiciones junto a cada identificador del inventario sin realizar una consulta de red.
Validar metadatos importados
Rechace identificadores desconocidos o mal escritos y envíe esos casos a revisión humana.
Preguntas frecuentes
¿Admite expresiones de licencia SPDX completas?
No. Envíe un solo identificador; las expresiones con AND, OR, WITH o paréntesis quedan fuera de esta capacidad.
¿Por qué GPL-3.0 devuelve GPL-3.0-only?
GPL-3.0 es una forma SPDX antigua y obsoleta cuyo significado histórico corresponde únicamente a la versión 3. El resultado canónico lo hace explícito.
¿El resumen constituye asesoramiento jurídico?
No. Es una orientación técnica breve. Lea la licencia completa y consulte a profesionales cualificados para tomar decisiones legales.
¿Importan las mayúsculas al escribir el identificador?
No. Se eliminan los espacios de alrededor y la grafía se compara sin distinguir mayúsculas, así que un valor copiado de un informe desordenado también se reconoce, y recibe la forma canónica, como Apache-2.0.
¿Qué diferencia hay entre GPL-3.0-only y GPL-3.0-or-later?
La primera concede la licencia solo bajo la versión 3; la segunda permite además usar versiones posteriores. Como esa elección cambia el permiso que otorga el licenciante, la consulta mantiene separados los dos identificadores.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su 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)Ejemplo de solicitud
{
"identifier": "Apache-2.0"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.license_spdx_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_chars | 100 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Comprenda un identificador SPDX sin memorizarlo
Introduzca un único valor en el campo identifier y recibirá tres campos estables: identifier, full_name y summary.
Grafía canónica, identificadores antiguos y errores
Un valor vacío, no textual, demasiado largo o ajeno al registro produce invalid_input.
Integre el resultado en revisiones y automatizaciones
La forma JSON determinista también resulta útil en scripts, controles de solicitudes de cambios, paneles de inventario y validaciones de importación. Trate invalid_input como una señal para revisión humana: quizá exista una expresión compuesta, un LicenseRef personalizado o metadatos incorrectos.
Preguntas técnicas
¿Qué ocurre con un identificador desconocido?
La solicitud falla con invalid_input e incluye el valor no reconocido; nunca se adivina un reemplazo.
¿Cuánto cuesta una consulta por API?
Cada solicitud API completada cuesta $0.002. La versión del navegador puede ejecutarse localmente sin consultar la red.