Build and Monitoring Your API — Resume of Meetup NBC001

Naufaldi Rafif Satriya
NgalamBackend
Published in
3 min readMar 6, 2019
Suasana Meetup February 2019 — NBC001

Februari 2019, sukses diadakan meetup kolaborasi antara Ngalam Backend Community (NBC) dan Malang Qualiy Assurance (MQA) dengan mendatangkan ketiga pemateri yaitu Mahrus Khomani dari Onehub Solution, Pte. Ltd. , Abila Aprilia dan Halim Tuhu P. dari DOT Indonesia. Pembahasan materi pada bulan ini adalah mengenai Build and Monitoring Your API.

Building and Monitoring API

Pengenalan API development

API adalah Application Programming Interface yang bisa disebut sebagai kumpulan intruksi program / protokol untuk membangun sebuah perangkat lunak. API memiliki peran untuk mengintruksikan / mengkomunikasikan pesan yang menerima permintaan dari pengguna dan memberitahu sistem apa yang perlu dilakukan.

Bila dicontohkan secara kasus nyata sebagai resepsionis di hotel yaitu kita (application) sebagai orang yang ingin memesan sebuah kamar(data) di hotel (application). Resepsionis (API) sebagai perantara untuk mendapatkan informasi kamar (data) yang tersedia di hotel (application) itu.

RESTful API

REST API merupakan implementasi dari API yang mana REST (Representional State Transfer) adalah suatu arsitektur metode komunikasi yang menggunakan protokol HTTP untuk pertukaran data dan metode ini sering diterapkan dalam pengembangan aplikasi. Dimana tujuannya adalah untuk menjadikan sistem yang memiliki performa yang baik, cepat dan mudah untuk di kembangkan (scale) terutama dalam pertukaran dan komunikasi data.

Komponen RESTful API

Contoh RESful API

Kalau kita contohkan, sebuah client mengirimkan sebuah data melalui HTTP Request dan kemudian server merespon melalui HTTP Response, maka akan terdapat komponen dari HTTP Request yaitu:

  • Verb, HTTP method yang pada umumnya digunakan seperti GET, POST, DELETE, PUT, dan lain lain.
  • URL (Uniform Resource Identifier ) untuk mengetahui lokasi resource pada server yang dituju
  • HTTP Version menunjukkan versi dari HTTP yang saat ini sedang digunakan. Misalkan versi v1
  • Request Header berisikan emtadata untuk HTTP Request. Misalkan type client/browser, format yang didukung oleh client, format dari body pesan dan lain lain.

Sedangkan komponen http response :

  • Status / Response code, berisikan status server terhadap request yang diterima. Misalkan code 404, 200
  • HTTP Version menunjukkan versi HTTP yang digunakan
  • Response Header berisikan metadata untuk HTTP Response
  • Response Body berisikan konten data yang diberikan

Memulai Membangun sebuah API

  • Merancang end point atau URL
  • Merancang request yang dibutuhkan
  • Merancang response dengan template yang konsisten
  • Handling error
  • Security

Ketika kita selesai membangun sebuah API , maka yang perlu kitaa lakukan adalah dengan me-monitoring API tersebut. Caranya dengan memeriksa response pada semua state dan memeriksa validitas request tersebut.

Build API With Django REST Framework

Salah satu tools untuk membuat REST API adalah dengan menggunakan Django REST Framework. Sebuah framework yang powerfull dan fleksibel untuk membangun API Web. Anda dapat membacanya di tautan berikut :

Berikut adalah sedikit dari kebutuhan dalam penggunaan Django REST Framework. Install dengan menggunakan pip:

pip install djangorestframework
pip install markdown
pip install django-filter

Selanjutnya menambahkan rest_framework pada INSTALLED_APPS

INSTALLED_APPS = (
...
'rest_framework',
)

Serializers

Merupupakan bagaimana data bisa direpresentasikan. Ada beberapa jenis serializers yaitu BaseSerializer, HyperlinkedModelSerializer, ListSerializer, ModelSerializer, dan Serializer

Class Based Views

Sebuah pattern yang mengizinkan kita bisa menggunakan common functionality. Beberapa jenisnya yaitu Mixins, Generics, dan Viewsets.

Berikut adalah cuplikan video meetup februari :

Slide

Anda dapat mendownload dan melihat materinya di tautan berikut :

Materi oleh Halim Tuhu P. :

Materi oleh Mahrus K. :

Materi oleh Abila Aprilia :

Ikuti update terbaru dari komunitas Ngalam Backend Community di twitter dan instagram.

Sekian rangkuman Meetup February 2019 mengenai Build and Monitoring Your API, sampai jumpa pada Meetup March 2019 ya!

--

--