Rujukan API
Setiap endpoint, parameternya, dan contoh jawapan sebenar.
https://www.cuantuan.net/api/v1Versi v1 ada dalam laluan. Medan baharu boleh ditambah kepada jawapan pada bila-bila masa — tulis pembaca anda supaya mengabaikan medan yang tidak dikenali. Medan yang DIBUANG atau ditukar maknanya hanya berlaku pada versi baharu.
GET. Wang dalam sen (4900 = RM49.00). Masa dalam UTC, ISO 8601. Setiap jawapan bermula dengan ok — semaknya sebelum membaca data.Auth
/authkunci sah sudah memadaiSahkan kunci
Memulangkan kedai dan skop yang dibawa kunci ini. Panggil endpoint ini dahulu semasa menyambung — ia menjawab "adakah kunci saya berfungsi" dan "kenapa endpoint lain memulangkan 403" sekaligus.
curl -s "https://www.cuantuan.net/api/v1/auth" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"key": { "id": "ak_9f2c…", "scopes": ["product.read", "order.read"] },
"store": { "id": "singleton", "name": "Cuantuan", "currency": "MYR" }
}Product
Senarai produk
Semua produk kedai, terbaharu mengikut susunan katalog.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| active | boolean | tidak | Isi `true` untuk produk aktif sahaja. |
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/product/list?active=true&limit=50" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"data": [
{
"id": "prd_1a2b…",
"slug": "panduan-tiktok-affiliate",
"name": "Panduan Lengkap Tiktok Affiliate",
"short_description": "Dari riset produk sampai closing.",
"price_cents": 4900,
"compare_at_cents": 14900,
"active": true,
"featured": false,
"cover_url": "/api/file/asset/ast_7c…",
"created_at": "2026-08-22T09:14:02.117Z",
"updated_at": "2026-08-26T10:02:55.802Z"
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false, "total": 1 }
}Butiran produk
Satu produk, mengikut id atau slug. Salah satu wajib diberikan.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| id | string | tidak | Id produk. |
| slug | string | tidak | Slug produk. Diabaikan bila `id` diberikan. |
curl -s "https://www.cuantuan.net/api/v1/product/detail?id=prd_1a2b…&slug=panduan-tiktok-affiliate" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{ "ok": true, "data": { "id": "prd_1a2b…", "slug": "…", "name": "…" } }Order
Senarai pesanan
Pesanan terbaharu dahulu. Membawa nama, e-mel, dan telefon pembeli — pastikan destinasi penyimpanan anda sesuai untuk data peribadi.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| status | string | tidak | PENDING, PAID, FULFILLED, CANCELED, atau EXPIRED. |
| search | string | tidak | Padanan pada kod pesanan, nama pembeli, e-mel, atau nama produk. |
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/order/list?status=PAID&search=ali" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"data": [
{
"id": "ord_ee3b…",
"code": "CUAN-QYDJ45",
"status": "PAID",
"product": { "id": "prd_1a2b…", "name": "Panduan Lengkap Tiktok Affiliate", "price_cents": 4900 },
"quantity": 1,
"discount_cents": 0,
"total_cents": 4900,
"buyer": { "name": "Ali bin Abu", "email": "ali@contoh.com", "phone": "60123456789" },
"payment": { "method_label": "Pindahan Bank", "has_proof": true },
"landing_page_slug": "panduan-tiktok-affiliate",
"created_at": "2026-08-26T07:11:40.006Z",
"paid_at": "2026-08-26T07:24:18.441Z",
"fulfilled_at": null,
"canceled_at": null
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false }
}Butiran pesanan
Satu pesanan, mengikut id atau kod. Salah satu wajib diberikan.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| id | string | tidak | Id pesanan. |
| code | string | tidak | Kod pesanan yang dilihat pembeli. |
curl -s "https://www.cuantuan.net/api/v1/order/detail?id=ord_ee3b…&code=CUAN-QYDJ45" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{ "ok": true, "data": { "code": "CUAN-QYDJ45", "status": "PAID" } }Customer
Senarai pelanggan
Ringkasan setiap pembeli, dikumpulkan mengikut e-mel. Kiraan dipulangkan sebagai nombor, bukan rentetan.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/customer/list?limit=50&offset=25" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"data": [
{
"email": "ali@contoh.com",
"name": "Ali bin Abu",
"orders_count": 3,
"paid_count": 2,
"total_spent_cents": 9800,
"last_order_at": "2026-08-26T07:11:40.006Z"
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false, "total": 1 }
}Page
Senarai halaman jualan
Halaman jualan beserta slug dan status terbit. Isi blok tidak diterbitkan — bentuknya dalaman dan berubah setiap kali editor dinaik taraf.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| search | string | tidak | Padanan pada tajuk atau slug. |
| category | string | tidak | Tapis mengikut kategori. |
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/page/list?search=tiktok&category=Promo Raya" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"data": [
{
"id": "lp_dc5c…",
"slug": "panduan-tiktok-affiliate",
"title": "Panduan Lengkap TikTok Affiliate",
"category": "",
"published": true,
"updated_at": "2026-08-26T09:00:11.240Z"
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false, "total": 1 }
}Dataform
Senarai borang data
Borang dan kiraan penghantarannya. Tidak termasuk jawapan.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| search | string | tidak | Padanan pada nama borang. |
| status | string | tidak | DRAFT, ACTIVE, atau ARCHIVED. |
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/dataform/form/list?search=prospek&status=ACTIVE" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"data": [
{
"id": "form_9a1c…",
"name": "Borang Prospek Raya",
"description": "",
"status": "ACTIVE",
"field_count": 4,
"submission_count": 128,
"last_submission_at": "2026-08-27T22:40:03.118Z",
"created_at": "2026-08-01T04:00:00.000Z"
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false, "total": 1 }
}Jawapan borang
Penghantaran satu borang beserta jawapannya. `answers` berkunci pada kunci dalaman medan — kunci itu stabil walaupun label medan ditukar, jadi pemetaan anda tidak rosak apabila teks borang disunting.
| Parameter | Jenis | Wajib | Keterangan |
|---|---|---|---|
| form_id | string | ya | Id borang. |
| status | string | tidak | Kod status penghantaran. |
| search | string | tidak | Carian bebas pada nilai jawapan. |
| from | string | tidak | Tarikh mula (YYYY-MM-DD), inklusif. |
| to | string | tidak | Tarikh tamat (YYYY-MM-DD), inklusif. |
| limit | integer | tidak | Bilangan baris. Lalai 25, maksimum 100. |
| offset | integer | tidak | Bilangan baris yang dilangkau. Lalai 0. |
curl -s "https://www.cuantuan.net/api/v1/dataform/data/list?form_id=form_9a1c…&status=NEW" \
-H "Authorization: Bearer ct_live_KUNCI_ANDA"{
"ok": true,
"form": { "id": "form_9a1c…", "name": "Borang Prospek Raya" },
"data": [
{
"id": "sub_4d7e…",
"status": "NEW",
"landing_page_slug": "panduan-tiktok-affiliate",
"is_spam": false,
"created_at": "2026-08-27T22:40:03.118Z",
"answers": { "nama": "Ali bin Abu", "whatsapp": "60123456789" }
}
],
"paging": { "limit": 25, "offset": 0, "count": 1, "has_more": false, "total": 1 }
}Perlu sesuatu yang tiada di sini? Webhook menolak prospek kepada anda secara langsung, dan skrin kunci ialah tempat kebenaran ditambah.

