GraphQL vs REST API Apa Bedanya?

GraphQL vs REST API Apa Bedanya?

 API atau Application Programming Interface adalah sebuah protokol atau teknologi yang digunakan menangani sebuah perangkat lunak berinteraksi satu sama lain. Salah satu contohnya adalah untuk mendapatkan data dari database.

     GraphQL API menyediakan kemudahan dalam pengambilan data dan proses pengembangan yang lebih cepat. Meskipun begitu, GraphQL bukan merupakan pengganti dari REST API. Masing-masing pendekatan ini memiliki kelebihan dan kekurangannya masing-masing sesuai dengan kasus atau kebutuhan kita pada saat mengembangkan sistem. 


Mendapatkan Data dengan REST API

Berdasarkan skenario kita coba dapatkan data tersebut dengan pendekatan REST API. Untuk mendapatkan data detail liga beserta data tim dan pemainnya, setidaknya kita harus mengakses lebih dari satu endpoint. Tentunya kita akan mendapatkan JSON response saat kita meminta data dengan mengakses endpoint

Proses pengambilan data pada REST API ketika membutuhkan lebih dari satu request

          “idLeague”:”4328″,         “strSport”:”Soccer”,         “strLeague”:”English Premier League”,         “intFormedYear”:”1992″,         “strGender”:”Male”,         “strCountry”:”England”,         “strWebsite”:”www.premierleague.com”,         “strDescriptionEN”:”The Premier League (often referred to as the English Premier League (EPL) outside England),is the top level of the English football league system.”,         “strBadge”:”/i6o0kh1549879062.png”,         “strTrophy”:”/yrywtr1422246014.png”      }

Kita juga perlu mengakses endpoint berikut untuk mendapatkan daftar tim yang ada pada liga tersebut. 

          “idTeam”:”133604″,         “strTeam”:”Arsenal”,         “intFormedYear”:”1892″,         “idLeague”:”4328″,         “strStadium”:”Emirates Stadium”,         “strBadge”:”/i6o0kh1549879062.png”,         “strDescription”: “Arsenal Football Club is a professional football club based in Holloway, London.”},         “idTeam”:”133601″,         “strTeam”:”Aston Villa”,         “intFormedYear”:”1874″,         “idLeague”:”4328″,         “strStadium”:”Villa Park”,         “strBadge”:”/i6o0kh1549879062.png”,         “strDescription”: “Aston Villa Football Club, also known as Villa, The Villa, The Villans,The Lions) are a professional football club based in Witton, Birmingham.”}
  

Untuk mendapatkan data daftar pemain dari tim-tim tersebut kita juga perlu mengakses satu endpoint lagi seperti berikut:

          “idPlayer”:”12345″,         “strPlayer”:”Ronaldo”,         “strPhoto”:”/i6o0kh1549879062.png”},         “idPlayer”:”54321″,         “strPlayer”:”Messi”,         “strPhoto”:”/i6o0kh1549879062.png”}
pendekatan GraphQL untuk mendapatkan data tersebut? 

Kita hanya membutuhkan 1 (satu) query yang telah kita tentukan kebutuhannya. Server akan membalas dengan menyediakan JSON object di mana  kebutuhan kita tadi telah disesuaikan. 

  • Proses pengambilan data pada GraphQL API ketika membutuhkan lebih dari satu request
 query {    league(id: 4328) {        strLeague        strBadge        teams {            strTeam            strBadge            players {                strPlayer                strPhoto            }        }    }}

Untuk JSON Respone-nya akan seperti ini:

  “data”: {    “league”: {    “strLeague”: “English Premier League”,    “strBadge”: “/i6o0kh1549879062.png”,    “teams”: [        {         “strTeam”: “Arsenal”,        “strBadge”: “/i6o0kh1549879062.png”,        “players”: [            {             “strPlayer”: “Ronaldo”,            “strPhoto”: “/i6o0kh1549879062.png”        },        {             “strPlayer”: “Messi”,            “strPhoto”: “/i6o0kh1549879062.png”        }        ]    },    {         “strTeam”: “Aston Villa”,        “strBadge”: “/i6o0kh1549879062.png”,        “players”: [            {             “strPlayer”: “Ronaldo”,            “strPhoto”: “/i6o0kh1549879062.png”      },      {             “strPlayer”: “Messi”,            “strPhoto”: “/i6o0kh1549879062.png”      }      ]      }      ]    }}

     Dengan pendekatan GraphQL kita dapat mengatur ketentuan apa saja atau data yang kita butuhkan pada sebuah query. Kita jadi dapat semua data sesuai dengan kebutuhan tanpa tambahan informasi yang tak kita butuhkan. Bagaimana? Lebih efisien dan fleksibel kan jika kita mendapatkan data dengan pendekatan GraphQL. Dan jangan lupa jika informasi ini bermanfaat, terus ikuti kami untuk update informasi seputar teknologi menarik lainnya.

Berita Rekomendasi

Transformasi HR di Era AI: Dari Reaktif Menjadi Prediktif 

06/05/2026

Transformasi HR di Era AI: Dari Reaktif Menjadi Prediktif 

Di tengah percepatan digitalisasi, fungsi Human Resources (HR) tidak lagi sekadar administratif. Perusahaan kini dituntut untuk mengambil keputusan yang cepat, akurat, dan berbasis data. Di sinilah peran AI predictive analytics…

Lihat
Perisalah AI: Meeting Jelas, Eksekusi Tepat

30/12/2025

Perisalah AI: Meeting Jelas, Eksekusi Tepat

Pernahkah Anda merasa deg-degan setelah meeting karena khawatir lupa poin penting? Atau justru pernah salah eksekusi karena tidak mengingat dengan jelas action item yang disepakati? Anda tidak sendirian.  Meeting adalah…

Lihat
Kolaborasi dan Strategi Tepat untuk Kepuasan Pelanggan

30/09/2024

Kolaborasi dan Strategi Tepat untuk Kepuasan Pelanggan

Tim kami berkumpul untuk mematangkan strategi go-to-market dan memastikan semua persiapan berjalan lancar sebelum peluncuran aplikasi mobile terbaru. Setiap tim saling mendukung dan memastikan setiap aspek terlaksana dengan baik. Dengan…

Lihat