Lompat ke konten utama
Dokumentasi AdForm
llms.txt Pusat Bantuan

Pengantar

Ringkasan API publik AdForm — apa yang bisa dan belum bisa dilakukan hari ini, base URL, format response, dan cara integrasi yang paling umum.

AdForm adalah platform landing page + form order untuk penjual online di Indonesia. Satu akun (tenant) punya katalog produk, form order yang bisa ditempel di mana saja, dashboard pesanan, otomasi CS WhatsApp, dan integrasi pembayaran.

Halaman ini untuk developer di luar AdForm — tim CRM, tool otomasi, agency, atau staf teknis tenant AdForm sendiri — yang mau menyambungkan produknya ke AdForm.

#Base URL

Teks
https://adform.id

Semua endpoint API ada di bawah /api/. Tidak ada prefix versi (/v1/) — API ini belum diversikan. Kalau nanti ada perubahan yang tidak backward-compatible, kami umumkan lewat halaman ini dulu.

Response selalu JSON (Content-Type: application/json). Status HTTP dipakai apa adanya: 200/201 sukses, 4xx kesalahan dari sisi pemanggil, 5xx kesalahan di sisi kami.

#Yang bisa dilakukan API hari ini

Permukaan API dengan API key ada tiga operasi, di dua berkas endpoint.

OperasiMethodEndpointScope
Ambil data + snippet embed produkGET/api/products.php?action=embed&id={id}products:read
Duplikat produkPOST/api/products.php?action=duplicate&id={id}products:write
Cari pelanggan lewat nomor teleponPOST/api/customer_lookup.phpcustomers:read

Detail lengkap ada di API Produk dan Pencarian Pelanggan. Cara memperoleh dan memakai key ada di Autentikasi.

Dua operasi produk menjawab pola integrasi yang paling sering diminta: tool eksternal menyalin produk template jadi produk baru, lalu langsung dapat URL form + snippet iframe yang siap dipasang.

Pencarian pelanggan menjawab pola yang berbeda: CRM atau aplikasi CS menerima chat WhatsApp masuk, menanyakan nomornya ke AdForm, lalu tahu siapa pengirimnya dan pesanan apa yang sedang berjalan. Di luar itu, AdForm juga bisa mengirim data pesanan ke server Anda — lihat Webhook Keluar.

#Yang BELUM bisa dilakukan API

Kami tulis eksplisit supaya Anda tidak membangun di atas asumsi yang salah:

  • Tidak ada CRUD produk lewat API key. Tidak bisa list produk, ambil detail lengkap, membuat produk dari nol, mengubah, atau menghapus. Verb POST/PATCH/DELETE biasa di /api/products.php dipakai dashboard dan butuh sesi login dashboard, bukan API key.
  • Tidak ada API pesanan. Tidak ada endpoint untuk membaca daftar pesanan, membuat, atau mengubah pesanan dengan API key. Data pesanan hanya mengalir keluar lewat Webhook Keluar, dan lewat Pencarian Pelanggan untuk satu nomor telepon per permintaan.
  • Tidak ada API pelanggan untuk menelusuri daftar. Yang ada hanya pencarian satu nomor persis. Tidak ada q=, limit, page, atau pencocokan sebagian — endpoint itu memang dirancang supaya tidak bisa dipakai menarik basis pelanggan.
  • Tidak ada API tim / CS. Belum tersedia untuk pihak ketiga.
  • Belum ada sandbox / environment test terpisah. Semua panggilan mengenai data produksi tenant. Saat mengembangkan, pakai produk uji coba, jangan produk yang sedang dipakai jualan.

Kalau butuh sesuatu di daftar ini, kabari kami (lihat bagian paling bawah) — permintaan nyata dari integrator yang menentukan urutan pengerjaan.

#Cara integrasi yang paling umum

Untuk sebagian besar kasus, Anda tidak butuh API sama sekali — cukup pasang form order AdForm sebagai iframe di halaman Anda:

HTML
<iframe src="https://adform.id/t/12/kaos-polos-hitam"
  style="width:100%;min-height:700px;border:none;"
  loading="eager" scrolling="no" frameborder="0"></iframe>
<script src="https://adform.id/embed.js"></script>

embed.js bertugas menyesuaikan tinggi iframe otomatis, meneruskan parameter iklan (fbclid, gclid, utm_*) dari halaman induk ke form, dan menyalakan Meta Pixel / GTM sesuai setelan produk. Snippet persis untuk tiap produk — termasuk tenant_id dan slug yang benar — bisa diambil lewat ?action=embed, jadi Anda tidak perlu merangkainya sendiri.

Form ini menerima order langsung dari browser pengunjung. Pengiriman order dari server ke server tanpa form AdForm belum punya kontrak publik yang kami dokumentasikan.

#Autentikasi singkat

API key dikirim di header X-API-Key. Key selalu diawali adk_.

Terminal
curl -H "X-API-Key: adk_0123456789abcdef0123456789abcdef0123456789abcdef" \
  "https://adform.id/api/products.php?action=embed&id=12"

Satu key terikat ke satu tenant. Semua data yang Anda akses dengan key itu adalah data tenant tersebut, tidak pernah tenant lain. Baca Autentikasi untuk format key, scope, error, dan rate limit.

#Batasan yang perlu Anda tahu sejak awal

  • Rate limit-nya berbeda per endpoint. /api/products.php dibatasi 60 request per menit per alamat IP, dihitung bersama trafik lain dari IP yang sama. /api/customer_lookup.php dibatasi per API key (30 per menit, 600 per jam, 4.000 per hari). Rancang integrasi Anda dengan asumsi ini.
  • Key adalah rahasia server. Jangan pernah menaruh API key di kode frontend, aplikasi mobile, atau repo publik. Tidak ada pembatasan origin/domain pada key.
  • Rupiah dalam bilangan bulat. Semua harga adalah integer rupiah tanpa desimal (150000 = Rp150.000).

#Yang sedang disiapkan

Tanpa janji tanggal:

  • Halaman self-service di dashboard untuk membuat dan mencabut API key sendiri.
  • Endpoint baca katalog produk untuk API key.

Kami sengaja tidak mendokumentasikan kontrak yang belum final. Kalau ada di dokumentasi ini, artinya sudah jalan di produksi hari ini.

#Butuh bantuan atau butuh endpoint baru?

Hubungi tim AdForm lewat Pusat Bantuan. Sertakan nama produk/perusahaan Anda, alur integrasi yang diinginkan, dan endpoint apa yang Anda butuhkan. Untuk kebutuhan integrasi partner, sebutkan juga volume request perkiraan per hari.

Ketik minimal dua huruf.

↑↓ pindah Enter buka Esc tutup