Saltar al contenido
MundoProgra JSON:API
Menú

Empezar

Instalación

Un solo comando de Composer. El paquete se descubre solo y no hay nada que registrar a mano.

Requisitos

  • PHP 8.1 o superior
  • Laravel 10, 11, 12 o 13

Instalar

composer require mundoprogra/json-api

Eso es todo. Laravel descubre el paquete solo: al arrancar, se engancha al manejo de excepciones y agrega sus middleware al inicio de la fila global del kernel HTTP, sin tocar bootstrap/app.php, Kernel ni Handler.

Funciona también si tu bootstrap/app.php reemplaza la lista global de middleware con withMiddleware (Laravel 11 a 13): los middleware del paquete se agregan después y quedan al principio de la fila.

Publicar la configuración y los textos

Es opcional. Con estos dos comandos copias a tu aplicación el archivo de configuración y los textos de los errores, para cambiarlos:

php artisan vendor:publish --tag="json-api-config"
php artisan vendor:publish --tag="json-api-lang"

El primero crea config/json-api.php; todas sus opciones se explican en Configuración. El segundo copia los textos de los errores (title y detail), que vienen en español y en inglés y salen en el idioma actual de Laravel.

Comprobar que funciona

Con la aplicación en marcha, pide una ruta que no existe dentro del prefijo api:

curl -i -H "Accept: application/vnd.api+json" http://localhost:8000/api/no-existe

Debe responder 404 con Content-Type: application/vnd.api+json y un documento errors cuyo code es mundoprogra.json-api.route.not_found.

Si ves la página de error de Laravel en HTML, la ruta no está dentro del alcance del paquete: por defecto solo actúa sobre las rutas que empiezan con api (o sobre toda la aplicación con JSON_API_MODE=global). Está explicado en Cómo se activa.