Logo
Daftar Isi

Bab 13 · Developer API

Mulai Cepat

Lima langkah dari nol sampai data penjualan pertama masuk ke sistem Anda, lengkap dengan perintah yang bisa disalin.

Ikuti lima langkah ini berurutan. Total sekitar lima menit, dengan asumsi Anda sudah punya akses admin ke Lensiro.

Langkah 1 — Buat API key

Di aplikasi Lensiro, buka Pengaturan → API Key, lalu klik Buat API Key.

  • Isi Nama dengan tujuan integrasinya, misalnya Integrasi Google Sheets. Nama ini yang muncul kembali di respons /ping.
  • Kedaluwarsa boleh dikosongkan kalau key tidak perlu masa berlaku.
  • Setelah disimpan, key ditampilkan satu kali saja dalam bentuk lsk_live_.... Salin sekarang dan simpan di tempat aman. Kalau hilang, key lama harus dicabut dan diganti key baru.

Langkah 2 — Siapkan dua variabel

Semua contoh di dokumentasi ini memakai dua nilai berikut:

export BASE="https://app-anda.lensiro.com/api/v1"
export KEY="lsk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

Ganti app-anda.lensiro.com dengan alamat yang Anda pakai untuk login ke Lensiro.

Langkah 3 — Cek koneksi

curl -H "Authorization: Bearer $KEY" "$BASE/ping"
{ "ok": true, "key_name": "Integrasi Google Sheets" }

Kalau yang keluar justru {"error":{"code":"missing_api_key"}} atau invalid_api_key, lihat halaman Kode Error & Pemecahan Masalah.

Langkah 4 — Kenali cabang Anda

curl -H "Authorization: Bearer $KEY" "$BASE/branches"
{
  "data": [
    { "id": 1, "code": "PST", "name": "Cabang Pusat" },
    { "id": 2, "code": "BDG", "name": "Cabang Bandung" }
  ]
}

Simpan pemetaan ini. Semua data lain menyebut cabang lewat branch_id, dan Anda tidak perlu menuliskannya secara hardcode.

Langkah 5 — Tarik penjualan pertama

Ambil lima transaksi saja supaya keluarannya kecil dan mudah dibaca:

curl -H "Authorization: Bearer $KEY" "$BASE/sales?limit=5"

Balasannya berbentuk:

{
  "data": [ { "id": 18234, "sales_order_number": "SO-PST-1042", "...": "..." } ],
  "pagination": {
    "next_cursor": "eyJ1IjoiMjAyNi0wOC0xM1QwNTozMDoxMi4wMDBaIiwiaSI6MTgyMzR9",
    "has_more": true
  }
}

Selesai — Anda sudah menarik data pertama.

Langkah berikutnya

  • Data keluar urut dari yang paling lama berubah. Untuk menarik semuanya, ikuti next_cursor sampai has_more bernilai false. Caranya di Konvensi Respons & Paginasi.
  • Untuk integrasi berkala (misalnya tiap jam ke Google Sheets), jangan tarik ulang semuanya. Pakai pola updated_since di halaman Panduan Integrasi & Contoh Kode.

Checklist sebelum dianggap siap produksi

  • Key disimpan sebagai environment variable atau di secret manager — bukan di dalam kode atau di sel spreadsheet.
  • Loop paginasi berhenti berdasarkan has_more, bukan berdasarkan tebakan jumlah halaman.
  • Penyimpanan Anda melakukan upsert berdasarkan id, bukan insert saja.
  • Polling memakai include_deleted=true supaya penghapusan ikut terbawa.
  • Respons 429 ditangani dengan menunggu sesuai header Retry-After.
  • Tanggal dari API dianggap UTC dan dikonversi ke WIB (+7) sebelum dipakai untuk rekap harian.

Solusi lengkap untuk toko optik modern dengan teknologi terdepan dan dukungan terbaik.

Fitur

  • Penjualan Optik
  • Faset & QC
  • Inventory & Gudang
  • Membership & After-Service
  • Multi-Cabang & Roles
  • Financial Statement

Solusi

Perusahaan

©Lensiro. All Rights Reserved.

Kebijakan Privasi