Auth
Kirim API key bisnis atau OAuth access token di headerAuthorization:
| Aksi | Scope |
|---|---|
| List page dan display | page:list |
| Baca satu page atau display | page:read |
| Buat page | page:create |
| Update metadata, status publish, tag, dan display | page:update |
| Hapus page | page:delete |
| List store | store:list |
| List payment method, sales person, dan product knowledge | store:read |
| List produk store dan variant | product:list, product:read |
| List bundle store dan bundle price option | bundle:list, bundle:read |
| List payment account | payment_account:list |
| Kelola pixel analytics dan container GTM | fb_pixel:*, tiktok_pixel:*, kwai_pixel:*, gtm:* |
Endpoint
has_next bernilai true, kirim next_cursor pada request berikutnya. Jika has_previous bernilai true, kirim previous_cursor untuk mundur ke halaman sebelumnya.
Alur setup lengkap
- List store dengan
GET /v3/stores/simplified. Gunakanidstore numerik sebagai{store_id}untuk endpoint setup business-scoped yang terautentikasi. - List item yang dijual di store dengan
GET /v3/stores/{store_id}/productsdanGET /v3/stores/{store_id}/bundles. Gunakanvariants[].idproduk untukform_display.variant_ids, ataubundle_price_options[].idbundle untukform_display.bundle_price_option_ids. - Ambil detail satu item jika perlu dengan
GET /v3/stores/{store_id}/variants/{variant_id}atauGET /v3/stores/{store_id}/bundle-price-options/{id}. - List record analytics yang sudah ada dengan
GET /v3/fb-pixels,GET /v3/tiktok-pixels,GET /v3/kwai-pixels, danGET /v3/gtm. Buat record yang belum ada dengan endpointPOSTyang sesuai. - List nama event yang valid dengan
GET /v3/fb-standard-events,GET /v3/tiktok-standard-events, danGET /v3/kwai-standard-events?type=client|server. - Jika
after_submit_eventadalahdirect_to_whatsappdengan assignment fixed, list handler denganGET /v3/stores/{store_id}/sales-peoplelalu kirimidyang dipilih sebagaistore_sales_person_id. - Buat atau update page display. Kirim ID record Scalev di
*_pixel_ids,gtm_id,variant_ids,bundle_price_option_ids, danstore_sales_person_id. - Publish saat membuat page dengan
is_published: true, atau patchcurrent_page_display_idlewatPATCH /v3/pages/{page_id}.
Payload display HTML Mode
HTML Mode memakairender_mode: "html_mode" dan field kode berikut:
html_code: HTML body-onlycss_code: CSSjs_code: JavaScript browseradditional_head_code: kode tambahan untuk dokumen<head>csp_policy: tambahan Content Security Policy opsional
js_code dikirim sebagai string kosong, response API dapat mengembalikannya sebagai null.
Perlakukan null dan "" sebagai “tanpa JavaScript” ketika membaca page display.
css_code dan additional_head_code tetap dapat kembali sebagai string kosong.
Gunakan additional_head_code saat kamu perlu menambahkan tag head yang
didukung secara langsung: title, meta, link, style, script, dan
noscript. Scalev juga membuat tag head terkelola dari convenience setting
seperti meta.title, meta.description, meta.thumbnail, meta.favicon, dan
meta.isDisabledSearchEngineCrawler. Jika additional_head_code berisi
title, meta, atau favicon link yang konflik, entry dari additional head
akan menang. meta.lang tetap menjadi sumber untuk <html lang="...">; value
ini tidak diambil dari additional_head_code.
Jangan kirim field display khusus Builder seperti schema_version, banner, header, general, sidebar, atau main untuk HTML Mode. Scalev mengisi default yang sesuai secara internal. Response tetap bisa berisi field tersebut.
Sertakan field event analytics walaupun nilainya kosong:
html_code tidak boleh berisi <!doctype>, <html>, <head>, <body>,
metadata, tag favicon, atau pengaturan domain. Taruh tag head yang didukung di
additional_head_code, dan simpan convenience setting level dokumen di meta.
Gunakan runtime HTML Mode untuk checkout, analytics,
prefill, dan konteks halaman.
Pixel analytics dan event
Pasang pixel analytics yang sudah ada ke page display dengan mengirim ID record pixel Scalev di payload display. Ini adalah ID record numerik dariGET /v3/fb-pixels, GET /v3/tiktok-pixels, dan GET /v3/kwai-pixels, bukan kode pixel dari provider seperti Meta Pixel ID.
| Field | Makna |
|---|---|
fb_pixel_ids | ID record pixel Meta/Facebook dari pengaturan analytics Scalev |
tiktok_pixel_ids | ID record pixel TikTok dari pengaturan analytics Scalev |
kwai_client_pixel_ids | ID record pixel browser SnackVideo |
kwai_server_pixel_ids | ID record pixel SnackVideo Events API |
POST /v3/fb-pixels, POST /v3/tiktok-pixels, POST /v3/kwai-pixels, dan POST /v3/gtm jika bisnis belum punya record tersebut. Gunakan GET /v3/gtm untuk mencari gtm_id yang dikirim di payload display.
Hanya pixel milik bisnis yang sama yang akan dipasang. ID dari bisnis lain atau record pixel yang tidak ditemukan tidak akan dipasang dan tidak akan muncul di response. Kirim array kosong jika display baru tidak perlu memakai pixel untuk provider tersebut.
Konfigurasi event otomatis saat halaman dibuka ada di page display yang sama:
page_display.form_display, bukan di level page display utama:
fb_pixels, tiktok_pixels, kwai_client_pixels, dan kwai_server_pixels, bukan array ID. Jika membuat display lain dari response read, gunakan nilai id dari tiap object pixel ke field request *_pixel_ids yang sesuai.
Membuat HTML Sales page
Jangan kirimform_display untuk landing page HTML biasa tanpa checkout.
data.
Membuat HTML Checkout page
Tambahkanpage_display.form_display jika halaman akan membuat order. Checkout page membutuhkan:
store_id- minimal satu item di
variant_idsatau satu item dibundle_price_option_ids
store_id tersimpan, setiap display baru untuk page tersebut harus memakai checkout store yang sama. Display dengan form_display.store_id berbeda, atau display tanpa konteks store, akan ditolak.
after_submit_event berikut:
| Value | Field wajib |
|---|---|
success_page | Tidak ada |
direct_to_whatsapp | handler_assignment; jika handler_assignment bernilai fixed, kirim juga store_sales_person_id |
direct_to_custom_whatsapp | custom_phone |
other_page | other_page_id |
custom_url | custom_url |
is_sending_email_invoice | Tidak ada |
order_page | Tidak ada |
Update page
PATCH /v3/pages/{page_id} memperbarui metadata page dan status publish.
Membuat dan menerbitkan display baru
Untuk mengubah HTML, CSS, JavaScript, pixel, atau konteks checkout, buat page display baru: Jika page sudah memiliki store tersimpan, display baru harus menyertakanform_display.store_id yang sama; menghilangkan konteks store akan ditolak.
id display baru. Terbitkan dengan:
Tag dan delete
Ganti semua tag dengan:204 No Content.
