Anda di halaman 1dari 7

DOKUMENTASI API

XL AGNOSTHINGS

Versi 1.0
DICODING [Company address]
1. PENDAHULUAN

Dokumen ini berfungsi sebagai panduan dalam mengimplementasikan XL-AgnosThings pada


perangkat-perangkat IOT.

1.1. VERSI DOKUMEN

Versi Penulis Editor Deskripsi Perubahan

1.0 Dicoding XL Dokumen Pertama

1.2. TENTANG AGNOSTHINGS

Is a platform, a multi-purpose platform to build complete end-to-end IoT solutions, connected


applications, and smart products. The platform jumpstarts the development of IoT product and reduces
associated costs, risks, and time-to market. Agnosthing facilitates the data exchange among
connected devices, the IoT cloud, data analytics and visualization systems, and other IoT ecosystem
components 2
1.3. ARSITEKTUR AGNOSTHINGS

Arsitektur AgnosThings dapat dilihat pada ilustrasi di bawah ini :

Secara umum, cara kerja AgnosThings adalah sebagai berikut :

1. User mendaftarkan “Channel” pada website http://agnosthings.com


2. IoT device akan mengirimkan datanya ke server MicroThings dalam bentuk JSON. Data ini bisa
berupa nilai dari suatu sensor suhu, tegangan atau lain sebagainya. Server MicroThings akan
menyimpan data ini kedalam database.
3. User dapat melihat data tersebut melalui RESTful API atau dengan mengakses dashboard
2. SPESIFIKASI

Berikut adalah spesifikasi API yang digunakan untuk menyimpan maupun mengambil data dari server
XL AgnosThings. Ada empat request yang dapat digunakan untuk mengakses API XL AgnosThings :

1. Add Data to Channel


2. GET Channel Data
3. GET Last Data Timestamp
4. GET Data from Selected Field
5. Find Field Value

Semua API membutuhkan GUID channel yang bisa dibuat pada website http://agnosthings.com.

1.4. ADD DATA TO CHANNEL

Request ini digunakan untuk menambahkan data ke channel tertentu. Request ini memiliki format
sebagai berikut :

http://agnosthings.com/{GUID}/feed?push={Data}

N0 Nama Type Status Deskripsi

1 {GUID} string wajib Diisi dengan GUID Channel yang didapatkan ketika mendaftarkan
channel

2 {Data} string wajib Berisi data dengan format sebagai berikut :

NAMAFIELD1=VALUE1,NAMAFIELD2=VALUE2,dst

Contoh:

Vab=220,Vbc=221,Vca=222,Aa=10,Ab=20,Ac=30,kWa=100,kWb=
200,kWc=300,kWt=600,kVARa=110,kVARb=120,kVARc=130,kVA
Rt=310,kVAa=320,kVAb=330,kVAc=410,kVAt=800,pfa=10,pfb=20,
pfc=30,pft=70,whp=11,whm=22,VARhp=33,VARhm=77,VAhp=88,
VAhm=201,f=202

Catatan :
1. Vab,Vbc ,dll adalah field yang diisikan ketika membuat
channel
2. Semua channel field harus diisi. Jika ada field yang kosong
maka field tersebut ditulis NAMAFIELD=

1.5. GET CHANNEL DATA

Request ini digunakan untuk mendapatkan data dari suatu channel. Request ini memiliki format
sebagai berikut :

http://agnosthings.com/{GUID}/channel/last/feed/{ChannelID}/{Limit}

N0 Nama Type Status Deskripsi

1 {GUID} string wajib Diisi dengan GUID Channel yang didapatkan ketika
mendaftarkan channel

2 {ChannelID} double wajib ChannelID didapatkan pada dashboard website

3 {Limit} int opsional Limit jumlah data yang diinginkan. Jumlah maksimal
data yang dapat dikirimkan adalah 100

1.6. GET LAST DATA TIMESTAMP

Request ini digunakan untuk mendapatkan informasi waktu terakhir data terupdate. Request ini
memiliki format sebagai berikut :

http://agnosthings.com/{GUID}/channel/last/feed//timestamp/{ChannelID}/

N0 Nama Type Status Deskripsi

1 {GUID} string wajib Diisi dengan GUID Channel yang didapatkan ketika
mendaftarkan channel
2 {ChannelID} double wajib ChannelID didapatkan pada dashboard website

1.7. GET DATA FROM SELECTED FIELD

Request ini digunakan untuk mendapatkan data dari field tertentu. Request ini memiliki format sebagai
berikut :

http://agnosthings.com/{GUID}/field/last/feed/{ChannelID}/{FieldID}

N0 Nama Type Status Deskripsi

1 {GUID} string wajib Diisi dengan GUID Channel yang didapatkan ketika
mendaftarkan channel

2 {ChannelID} double wajib ChannelID didapatkan pada dashboard website

3 {FieldID} string wajib ID Field yang datanya akan dikembalikan. Semisal “kVar”

(Bergantung field yang didaftarkan ketika membuat


channel)

1.8. FIND FIELD VALUE

Request ini digunakan untuk mendapatkan data dari dengan field, nilai tertentu. Request ini memiliki
format sebagai berikut :

http://agnosthings.com/{GUID}/field/value/find/{ChannelID}/{FieldID}/{ValueToFind}

N0 Nama Type Status Deskripsi

1 {GUID} string wajib Diisi dengan GUID Channel yang didapatkan ketika
mendaftarkan channel

2 {ChannelID} double wajib ChannelID didapatkan pada dashboard website


3 {FieldID} string wajib ID Field yang datanya akan dikembalikan. Semisal “kVar
(Bergantung field yang didaftarkan ketika membuat
channel)

4 ValueToFind double wajib Nilai dari field yang dicari

Anda mungkin juga menyukai