Kodeloka
  1. Kodeloka
  2. Kelas Next.js
  3. Materi

Backend & API ยท Modul 15 dari 23

API Routes & Route Handlers (app/api/route.ts)

Membuat RESTful API endpoints di Next.js 16 menggunakan NextRequest & NextResponse untuk integrasi Webhook & Mobile Apps.

๐ŸŽฏ Poin-Poin Utama Modul Ini:
  • File route.ts di dalam direktori app/api/... membuat HTTP API Endpoint
  • Mendukung HTTP Methods ekspor terpisah: GET, POST, PUT, PATCH, DELETE
  • Menggunakan objek helper NextRequest dan NextResponse

๐Ÿ› ๏ธ Konstruksi Route Handlers di Next.js 16

Jika aplikasi Anda membutuhkan Webhook receiver (Stripe, Midtrans) atau API publik untuk konsumsi Mobile App, kita menggunakan Route Handlers di app/api/route.ts.

๐Ÿ’ป Kode REST API Endpoint

app/api/events/route.ts
import { NextRequest, NextResponse } from "next/server";

export async function GET(request: NextRequest) {
  const { searchParams } = new URL(request.url);
  const category = searchParams.get("category");

  const data = [
    { id: 1, title: "React 19 Workshop", category: "frontend" },
    { id: 2, title: "Next.js 16 Summit", category: "fullstack" },
  ];

  return NextResponse.json({ success: true, data });
}

export async function POST(request: NextRequest) {
  const body = await request.json();
  return NextResponse.json({ success: true, created: body }, { status: 201 });
}