🔗 Crear APIs REST con Laravel

🔗 Crear APIs REST con Laravel

Construye APIs modernas con Laravel

Laravel facilita la creación de APIs RESTful gracias a su arquitectura basada en rutas, controladores y respuestas JSON. En esta lección aprenderás cómo crear una API para gestionar recursos (por ejemplo, productos) utilizando controladores tipo API y rutas dedicadas.

📘 ¿Qué es una API REST?

Una API REST permite que distintas aplicaciones se comuniquen entre sí mediante peticiones HTTP, devolviendo datos en formato JSON. En Laravel, crear una API REST significa definir rutas en routes/api.php que se comunican con controladores especializados.

⚙️ Crear un controlador API

Los controladores API en Laravel se crean con la opción --api, lo que genera solo los métodos necesarios para una API REST.

Comando para crear controlador API
php artisan make:controller Api/ProductController --api
      

Ejemplo de un controlador API básico:

app/Http/Controllers/Api/ProductController.php
json(Product::all());
    }

    public function store(Request $request) {
        $product = Product::create($request->all());
        return response()->json($product, 201);
    }

    public function show(Product $product) {
        return response()->json($product);
    }

    public function update(Request $request, Product $product) {
        $product->update($request->all());
        return response()->json($product);
    }

    public function destroy(Product $product) {
        $product->delete();
        return response()->json(null, 204);
    }
}
?>
      

🗺️ Definir rutas API

Las rutas para las APIs se definen en el archivo routes/api.php. Laravel incluye por defecto un middleware api que gestiona la serialización de respuestas JSON.

routes/api.php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Api\ProductController;

Route::apiResource('products', ProductController::class);
      

🧩 Ejemplo visual: simulador de API

Simula peticiones API REST y observa las respuestas JSON que generaría Laravel:

✅ Buenas prácticas al crear APIs

  • Usa Resource Controllers o apiResource() para mantener consistencia REST.
  • Siempre devuelve respuestas JSON con los códigos HTTP correctos (201, 404, 204, etc.).
  • Utiliza API Resources para formatear salidas JSON complejas.
  • Protege tus rutas con auth:sanctum o auth:api cuando requieran autenticación.

Publicar un comentario

0 Comentarios