Apidog

Platform Pengembangan API Kolaboratif All-in-one

Desain API

Dokumentasi API

Debug API

Mocking API

Pengujian Otomatis API

HTTP PUT vs PATCH: Apa Bedanya?

Pelajari beda PUT & PATCH di HTTP. Kapan pakai, kelebihan & kekurangan. Optimalkan API Anda!

Ardianto Nugroho

Ardianto Nugroho

Updated on April 15, 2025

Permintaan HTTP adalah tulang punggung pengembangan web modern. Mereka memungkinkan kita untuk berinteraksi dengan API dan mengambil data dari server. Dua permintaan HTTP yang paling umum digunakan adalah PUT dan PATCH. Dalam postingan blog ini, kita akan menjelajahi perbedaan antara kedua permintaan ini dan kapan menggunakannya.

💡
Uji dan debug API Anda dengan cepat menggunakan Apidog dengan mudah melakukan permintaan HTTP, termasuk PUT dan PATCH. Mulai secara gratis dengan mengunduh sekarang!
button

Apa itu API?

Sebelum kita menyelami perbedaan antara PUT dan PATCH, mari kita definisikan terlebih dahulu apa itu API. API adalah singkatan dari Application Programming Interface (Antarmuka Pemrograman Aplikasi). Ini adalah serangkaian aturan yang ditentukan yang memungkinkan aplikasi yang berbeda untuk berkomunikasi satu sama lain. API bertindak sebagai lapisan perantara yang memproses transfer data antar sistem, memungkinkan perusahaan membuka data dan fungsionalitas aplikasi mereka ke pengembang pihak ketiga eksternal, mitra bisnis, dan departemen internal di dalam perusahaan mereka.

Definisi dan protokol dalam API membantu bisnis menghubungkan berbagai aplikasi berbeda yang mereka gunakan dalam operasi sehari-hari, yang menghemat waktu karyawan dan memecah silo yang menghambat kolaborasi dan inovasi. Bagi pengembang, dokumentasi API menyediakan antarmuka untuk komunikasi antar aplikasi, menyederhanakan integrasi aplikasi. API digunakan untuk menjembatani kesenjangan antara potongan kode kecil dan diskrit untuk membuat aplikasi yang kuat, tangguh, aman, dan mampu memenuhi kebutuhan pengguna.

Ikhtisar metode HTTP?

HTTP (Hypertext Transfer Protocol) adalah protokol lapisan aplikasi yang digunakan untuk mengirimkan dokumen hipermedia, seperti HTML, melalui internet. Ini memfasilitasi komunikasi antara peramban web dan server web, tetapi juga dapat digunakan untuk tujuan lain. HTTP beroperasi sebagai protokol klien-server, dengan permintaan biasanya dimulai oleh penerima, biasanya peramban web. Dokumen lengkap direkonstruksi dari berbagai sub-dokumen yang diambil, termasuk teks, deskripsi tata letak, gambar, video, skrip, dan lainnya.

Klien dan server berkomunikasi dengan bertukar pesan individual (bukan aliran data berkelanjutan). Pesan yang dikirim oleh klien (biasanya peramban web) disebut permintaan, dan pesan yang dikirim oleh server sebagai respons disebut respons. HTTP adalah protokol yang dapat diperluas yang telah berkembang seiring waktu dan dikirim melalui TCP atau melalui koneksi TCP terenkripsi TLS. Karena ekstensibilitasnya, ia digunakan tidak hanya untuk mengambil dokumen hiperteks tetapi juga untuk mengambil gambar dan video atau untuk memposting konten ke server, seperti dengan hasil formulir HTML. Selain itu, HTTP dapat digunakan untuk mengambil bagian dari dokumen untuk memperbarui halaman web sesuai permintaan.

Pengantar HTTP PUT

HTTP PUT adalah metode HTTP yang digunakan untuk membuat sumber daya baru atau menimpa representasi dari sumber daya target yang diketahui oleh klien. Ini mirip dengan metode HTTP POST, yang digunakan untuk menambahkan sumber daya di server.

Namun, tidak seperti POST, PUT bersifat idempoten, yang berarti bahwa memanggilnya sekali atau beberapa kali berturut-turut memiliki efek yang sama (yaitu tidak ada efek samping). Jika Request-URI mengacu pada sumber daya yang sudah ada, entitas terlampir harus dianggap sebagai versi modifikasi dari yang berada di server asal.

Memahami HTTP PATCH

HTTP PATCH adalah metode permintaan yang digunakan untuk membuat modifikasi parsial pada sumber daya yang ada. Ini mirip dengan metode HTTP PUT, yang digunakan untuk membuat sumber daya baru atau menimpa representasi dari sumber daya target yang diketahui oleh klien. Namun, tidak seperti PUT, PATCH digunakan untuk memodifikasi hanya sebagian dari sumber daya, sedangkan PUT menggantikan seluruh sumber daya.

Metode PATCH menyediakan entitas yang berisi daftar perubahan yang akan diterapkan pada sumber daya yang diminta menggunakan HTTP Uniform Resource Identifier (URI). Daftar perubahan disediakan dalam bentuk dokumen PATCH. Metode PATCH digunakan untuk memperbarui sumber daya dengan data JSON parsial.

Kapan menggunakan HTTP PUT

HTTP PUT digunakan untuk membuat sumber daya baru atau menimpa representasi dari sumber daya target yang diketahui oleh klien. Ini cocok untuk skenario di mana Anda memiliki kendali penuh atas penggantian sumber daya.

Perbedaan antara HTTP PUT dan HTTP POST adalah bahwa PUT bersifat idempoten, yang berarti bahwa memanggilnya sekali atau beberapa kali berturut-turut memiliki efek yang sama (yaitu tidak ada efek samping). Jika Request-URI mengacu pada sumber daya yang sudah ada, entitas terlampir harus dianggap sebagai versi modifikasi dari yang berada di server asal.

HTTP PUT paling baik digunakan ketika Anda ingin sepenuhnya mengganti sumber daya yang ada dengan data baru. Misalnya, jika Anda memiliki profil pengguna yang berisi beberapa bidang seperti nama, email, dan nomor telepon, dan Anda ingin memperbarui semua bidang ini sekaligus, Anda akan menggunakan permintaan PUT.

Berikut adalah contoh bagaimana Anda dapat menggunakan permintaan HTTP PUT untuk memperbarui konten file yang ada di server:

PUT /example.html HTTP/1.1
Host: sample.com
Content-Type: text/html
Content-Length: 20

<p>File yang Diperbarui</p>

Dalam contoh ini, permintaan PUT dikirim ke sumber daya yang terletak di /example.html. Header Content-Type menentukan bahwa isi permintaan dalam format HTML. Header Content-Length menunjukkan ukuran isi permintaan, yang dalam hal ini adalah 20 byte. Isi permintaan berisi konten baru untuk file, yang merupakan elemen paragraf HTML sederhana dengan teks "File yang Diperbarui". Jika file ada dan server memproses permintaan dengan sukses, ia akan mengganti konten example.html dengan konten baru yang disediakan dalam isi permintaan.‘’

Kapan menggunakan HTTP PATCH

HTTP PATCH digunakan untuk membuat modifikasi parsial pada sumber daya yang ada. Ini cocok untuk skenario di mana Anda hanya perlu memperbarui sebagian dari sumber daya, sedangkan PUT menggantikan seluruh sumber daya.

Misalnya, saat memperbarui satu bidang sumber daya, mengirim representasi sumber daya lengkap dapat menjadi rumit dan menggunakan banyak bandwidth yang tidak perlu. Permintaan PATCH dianggap sebagai serangkaian instruksi tentang cara memodifikasi sumber daya.

HTTP PATCH paling baik digunakan ketika Anda ingin memperbarui satu bidang atau beberapa bidang dalam sumber daya yang ada. Misalnya, jika Anda memiliki profil pengguna yang berisi beberapa bidang seperti nama, email, dan nomor telepon, dan Anda hanya ingin memperbarui bidang email, Anda akan menggunakan permintaan PATCH.

Berikut adalah contoh bagaimana Anda dapat menggunakan permintaan HTTP PATCH untuk memperbarui alamat email pengguna dalam sistem:

PATCH /api/users/123 HTTP/1.1
Host: www.example.com
Content-Type: application/json
If-Match: "e0023aa4e"

{
  "email": "newemail@example.com"
}

Dalam contoh ini, permintaan PATCH dikirim ke sumber daya yang terletak di /api/users/123. Header Content-Type menentukan bahwa isi permintaan dalam format JSON. Header If-Match digunakan untuk memastikan bahwa pembaruan hanya diterapkan jika eTag (pengidentifikasi versi untuk sumber daya) cocok dengan yang disediakan. Isi permintaan berisi perubahan yang akan diterapkan, yang dalam hal ini adalah pembaruan ke alamat email pengguna. Server kemudian akan memproses permintaan ini dan menerapkan pembaruan ke informasi pengguna. Jika berhasil, server dapat merespons dengan kode status 200 OK dan mungkin menyertakan sumber daya yang diperbarui dalam isi respons.

Perbedaan antara HTTP PUT dan PATCH

HTTP PUT dan HTTP PATCH keduanya adalah metode HTTP yang digunakan untuk memodifikasi sumber daya, tetapi mereka berbeda dalam cara mereka memperbarui sumber daya.

HTTP PUT digunakan untuk membuat sumber daya baru atau menimpa representasi dari sumber daya target yang diketahui oleh klien. Ini cocok untuk skenario di mana Anda memiliki kendali penuh atas penggantian sumber daya. Jika Request-URI mengacu pada sumber daya yang sudah ada, entitas terlampir harus dianggap sebagai versi modifikasi dari yang berada di server asal.

HTTP PATCH digunakan untuk membuat modifikasi parsial pada sumber daya yang ada. Ini cocok untuk skenario di mana Anda hanya perlu memperbarui sebagian dari sumber daya, sedangkan PUT menggantikan seluruh sumber daya. Metode PATCH menyediakan entitas yang berisi daftar perubahan yang akan diterapkan pada sumber daya yang diminta menggunakan HTTP Uniform Resource Identifier (URI). Daftar perubahan disediakan dalam bentuk dokumen PATCH.

Perbedaan utama antara HTTP PUT dan PATCH adalah jumlah data yang dikirim dalam permintaan. PUT mengirim seluruh sumber daya, sedangkan PATCH hanya mengirim bidang yang sedang diperbarui. Ini berarti bahwa permintaan PUT lebih mahal dalam hal bandwidth dan daya pemrosesan daripada permintaan PATCH.

Keuntungan dari HTTP PUT

HTTP PUT adalah metode permintaan yang digunakan untuk memperbarui atau mengganti sumber daya yang ada di server. Beberapa manfaat menggunakan HTTP PUT meliputi:

  • Idempotensi: HTTP PUT adalah metode idempoten, yang berarti bahwa permintaan yang sama dapat dibuat beberapa kali tanpa menyebabkan efek samping apa pun.
  • Atomisitas: HTTP PUT adalah operasi atomik, yang berarti bahwa ia berhasil sepenuhnya atau gagal sepenuhnya. Ini membuatnya berguna untuk memperbarui sumber daya yang memiliki banyak bidang.
  • Antarmuka seragam: HTTP PUT mengikuti batasan antarmuka seragam dari layanan web RESTful, yang membuatnya mudah digunakan dan dipahami.
  • Caching: Permintaan HTTP PUT dapat di-cache oleh perantara seperti proxy, yang dapat membantu mengurangi lalu lintas jaringan dan meningkatkan kinerja.

Keuntungan dari HTTP PATCH

Metode PATCH dalam HTTP digunakan untuk memperbarui sebagian sumber daya di server. Ini memungkinkan Anda untuk mengirim hanya data yang perlu diperbarui, daripada mengirim seluruh sumber daya. Ini dapat menguntungkan dalam situasi di mana Anda ingin membuat perubahan kecil dan spesifik pada sumber daya tanpa harus mengirim ulang seluruh sumber daya.

Keuntungan menggunakan metode HTTP PATCH meliputi:

  1. Efisiensi: PATCH memungkinkan penggunaan sumber daya jaringan yang lebih efisien dengan hanya mengirim perubahan yang perlu dilakukan, mengurangi jumlah data yang dikirimkan.
  2. Pembaruan Parsial: PATCH memungkinkan Anda untuk memperbarui bagian tertentu dari sumber daya tanpa memengaruhi bagian sumber daya lainnya, memberikan kontrol granular atas pembaruan.
  3. Idempoten: Ketika digunakan dengan benar, permintaan PATCH bersifat idempoten, yang berarti bahwa beberapa permintaan identik akan menghasilkan hasil yang sama dengan satu permintaan, mengurangi risiko efek samping yang tidak diinginkan.

Keuntungan ini membuat HTTP PATCH sangat berguna untuk kasus penggunaan tertentu di mana hanya sebagian kecil data sumber daya yang perlu diperbarui.

Cara menggunakan Apidog untuk mengirim permintaan dengan HTTP PUT dan HTTP PATCH

Apidog adalah platform kolaborasi terintegrasi yang dirancang untuk menyederhanakan proses bekerja dengan API. Ini menggabungkan fitur dari alat seperti Postman, Swagger, Mock, dan JMeter untuk memberikan solusi komprehensif untuk dokumentasi API, debugging, mocking, dan pengujian otomatis.

button

Apidog memungkinkan Anda mengirim permintaan HTTP untuk menguji dan men-debug API Anda tanpa perlu mendefinisikannya ulang jika sudah didokumentasikan. Menggunakan Apidog untuk mengirim permintaan PUT dan PATCH melibatkan beberapa langkah.

Kirim Permintaan HTTP PUT dengan Apidog

Untuk mengirim permintaan HTTP PUT dengan Apidog, Anda dapat mengikuti langkah-langkah berikut:

  1. Buka Apidog: Mulailah dengan membuka Apidog dan membuat permintaan baru.

2. Tentukan Metode HTTP: Pilih PUT sebagai metode HTTP untuk permintaan Anda.

3. Masukkan URL: Masukkan URL sumber daya yang ingin Anda perbarui, sertakan header yang diperlukan, seperti Content-Type atau Authorization dan tambahkan data yang ingin Anda kirim dalam isi permintaan. Anda dapat menggunakan parameter json untuk mengirim data JSON atau parameter data untuk mengirim data yang dikodekan formulir.

4. Kirim Permintaan: Setelah Anda menyiapkan permintaan Anda, kirimkan ke server.

Periksa respons server terhadap permintaan PUT Anda dan tangani sesuai dengan itu.

Dengan menggunakan Apidog, Anda dapat mempertahankan konsistensi data di berbagai sistem dan memastikan bahwa pengembangan API Anda sesuai ketat dengan dokumentasi API Anda, yang mengarah pada kolaborasi yang lebih efektif dan lebih sedikit inkonsistensi.

button

Kirim Permintaan HTTP PATCH dengan Apidog

  1. Buka Apidog: Luncurkan aplikasi Apidog dan Mulailah dengan membuat permintaan baru di dalam aplikasi.

2. Pilih Metode HTTP: Pilih PATCH dari daftar metode HTTP.

3. Masukkan URL: Masukkan URL endpoint tempat Anda ingin mengirim permintaan PATCH, tambahkan header jika perlu dan di isi permintaan, sertakan data yang ingin Anda perbarui sebagian.

Jalankan permintaan dan tunggu respons dari server.

Analisis respons server untuk memastikan permintaan PATCH berhasil.

button

Praktik Terbaik untuk Menggunakan Permintaan HTTP PUT dan HTTP PATCH

Saat bekerja dengan metode HTTP seperti PUT dan PATCH, penting untuk mengikuti praktik terbaik untuk memastikan bahwa API Anda andal, efisien, dan mudah digunakan. Berikut adalah beberapa praktik terbaik untuk menggunakan permintaan PUT dan PATCH:

Praktik Terbaik untuk Menggunakan Permintaan HTTP PUT

  • Gunakan PUT untuk Pembaruan Lengkap: PUT harus digunakan ketika Anda ingin memperbarui seluruh sumber daya. Ini menggantikan seluruh sumber daya dengan payload yang disediakan dalam isi permintaan.
  • Pastikan Idempotensi: Permintaan PUT harus idempoten, yang berarti bahwa membuat beberapa permintaan identik harus memiliki efek yang sama dengan membuat satu permintaan.
  • Sertakan Sumber Daya dalam URL: URL harus berisi pengidentifikasi sumber daya yang akan diperbarui.

Praktik Terbaik untuk Menggunakan Permintaan HTTP PATCH

  • Gunakan PATCH untuk Pembaruan Parsial: PATCH harus digunakan untuk pembaruan parsial, yaitu, ketika Anda hanya perlu memperbarui bidang tertentu dari sumber daya.
  • Tangani Non-idempotensi dengan Tepat: Permintaan PATCH tidak diharuskan untuk idempoten. Jika implementasi Anda idempoten, ia harus berperilaku sesuai dengan itu.
  • Gunakan Format Delta: Kirim hanya perubahan (delta) yang ingin Anda terapkan ke sumber daya, daripada seluruh sumber daya.

Praktik Terbaik Umum untuk menggunakan HTTP PUT dan HTTP PATCH

  • Validasi Input: Selalu validasi data input untuk permintaan PUT dan PATCH untuk mencegah pembaruan data yang tidak valid.
  • Gunakan ETags untuk Kontrol Konkurensi: Terapkan ETags untuk menangani pembaruan bersamaan dan menghindari masalah "pembaruan yang hilang".
  • Kembalikan Kode Status yang Tepat: Gunakan kode status HTTP dengan benar untuk menunjukkan hasil permintaan (misalnya, 200 OK, 204 Tidak Ada Konten, 400 Permintaan Buruk).
  • Dokumentasikan API Anda: Dokumentasikan dengan jelas perilaku yang diharapkan dari endpoint PUT dan PATCH Anda, termasuk bidang yang diperlukan dan aturan validasi.

Kesimpulan

Sebagai kesimpulan, HTTP PUT dan PATCH keduanya merupakan permintaan HTTP penting yang digunakan untuk memperbarui sumber daya di server. PUT paling baik digunakan ketika Anda ingin sepenuhnya mengganti sumber daya yang ada dengan data baru, sedangkan PATCH paling baik digunakan ketika Anda ingin memperbarui satu bidang atau beberapa bidang dalam sumber daya yang ada. Kedua permintaan memiliki kelebihan dan kekurangan masing-masing, dan pilihan di antara keduanya tergantung pada kasus penggunaan tertentu.

Dengan menggunakan Apidog, Anda memiliki kemampuan untuk dengan mudah mengirim permintaan HTTP Anda untuk menguji dan men-debug API Anda.

button
Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)Tutorial

Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)

Pelajari cara buat web apa pun dgn Lovable. Panduan lengkap, fitur inovatif, & integrasi Apidog (API gratis).

Ardianto Nugroho

April 15, 2025

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan KomprehensifTutorial

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan Komprehensif

Tutorial ini memandu Anda menyiapkan & mengelola API key khusus di Cursor: OpenAI, Anthropic, Google, & Azure.

Ardianto Nugroho

April 11, 2025

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat LanjutTutorial

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat Lanjut

Pelajari API NVIDIA Llama Nemotron utk buat agen AI canggih.

Ardianto Nugroho

April 11, 2025