> For the complete documentation index, see [llms.txt](https://learn.devlabss.my.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.devlabss.my.id/laravel/bab-12-laravel-api-dasar/12.3-menguji-api-menggunakan-postman.md).

# 12.3 Menguji API Menggunakan Postman

## Menguji API menggunakan Postman

Setelah endpoint dibuat, sekarang Anda perlu mengujinya.

Tool yang paling sering dipakai untuk ini adalah **Postman**.

### Kenapa Postman enak dipakai

Postman membantu Anda mengirim request tanpa perlu membuat tampilan frontend dulu.

Dengan Postman, Anda bisa:

* memilih method request
* menulis URL endpoint
* melihat response JSON
* mengecek status response

Ini sangat cocok untuk belajar API.

### Endpoint yang akan diuji

Misalnya Anda sudah membuat endpoint:

```
GET /api/buku
```

Kalau server lokal berjalan di `http://127.0.0.1:8000`, maka URL uji lengkapnya:

```
http://127.0.0.1:8000/api/buku
```

### Langkah uji di Postman

{% stepper %}
{% step %}

### Buka Postman

Buat request baru.

Pilih method `GET`.
{% endstep %}

{% step %}

### Masukkan URL endpoint

Isi dengan URL endpoint API Anda.

Contohnya:

```
http://127.0.0.1:8000/api/buku
```

{% endstep %}

{% step %}

### Klik Send

Postman akan mengirim request ke Laravel.

Setelah itu Anda bisa melihat response di panel bawah.
{% endstep %}

{% step %}

### Periksa hasil response

Kalau berhasil, Anda akan melihat data JSON dari tabel buku.

Biasanya juga muncul status `200 OK`.
{% endstep %}
{% endstepper %}

### Bentuk hasil yang diharapkan

Kalau data buku ada, hasilnya kira-kira seperti ini:

```json
[
  {
    "id": 1,
    "judul": "Laravel Dasar",
    "penulis": "Ahmad",
    "stok": 3
  },
  {
    "id": 2,
    "judul": "Belajar PHP",
    "penulis": "Budi",
    "stok": 5
  }
]
```

Kalau bentuk data ini muncul, berarti endpoint Anda sudah bekerja.

### Hal yang perlu dicek saat menguji

Saat mengetes API, jangan hanya melihat datanya.

Cek juga:

* status response
* struktur JSON
* jumlah data yang dikembalikan
* apakah field penting ikut muncul

Ini membuat pengujian Anda lebih rapi.

### Status code dasar yang perlu dikenal

Untuk tahap awal, cukup kenali beberapa kode ini:

* `200` — request berhasil
* `404` — endpoint tidak ditemukan
* `500` — ada error di server

Nanti saat belajar API lebih lanjut, Anda akan bertemu lebih banyak status code.

### Kalau ingin uji endpoint detail

Selain daftar buku, Anda juga bisa membuat endpoint detail.

Contohnya:

```php
use App\Models\Buku;

Route::get('/buku/{id}', function ($id) {
    return Buku::findOrFail($id);
});
```

Lalu uji:

```
http://127.0.0.1:8000/api/buku/1
```

Dengan pola ini, Anda mulai memahami beda endpoint daftar dan endpoint detail.

### Output yang harus terlihat

Setelah subbab ini selesai, hasil berikut seharusnya sudah terlihat:

* Postman berhasil mengirim request `GET` ke endpoint API
* response JSON tampil di panel bawah Postman
* status `200 OK` muncul saat endpoint valid
* Anda bisa membedakan hasil endpoint daftar dan endpoint detail

### Error yang paling sering muncul

Beberapa penyebab hasil uji gagal:

* server Laravel belum aktif
* URL endpoint salah
* route belum ditulis di `api.php`
* database kosong
* ada error pada controller atau model

{% hint style="info" %}
Kalau response `404`, cek route dulu. Kalau response `500`, cek logika atau error di sisi Laravel.
{% endhint %}

### Poin evaluasi bab 12.3

Pastikan Anda sudah memahami hal berikut:

* Saya bisa menguji endpoint `GET` di Postman.
* Saya tahu cara membaca response JSON.
* Saya tahu arti dasar status `200`, `404`, dan `500`.
* Saya tahu bedanya endpoint daftar dan detail.

Jika sudah siap, lanjut ke [12.4 Penjelasan Perbedaan Web vs API](/laravel/bab-12-laravel-api-dasar/12.4-penjelasan-perbedaan-web-vs-api.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.devlabss.my.id/laravel/bab-12-laravel-api-dasar/12.3-menguji-api-menggunakan-postman.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
