D
API Reference

API Reference

Daftar route API dazoapp — 390 endpoint di routes/api.php, dikelompokkan per 30+ grup. Autentikasi, order, wallet, contact, device, agent, broadcast, dll.

dazoapp mempunyai 390 route API di routes/api.php dan 192 route web di routes/web.php. Halaman ini memetakan grup route utama.

Autentikasi

GuardMiddlewareUntuk
auth:api (JWT)Route::middleware('auth:api')Endpoint JWT-specific (/testjwt, /logout)
auth:sanctumMayoritas endpointToken-based API
auth (session)Beberapa endpoint webHalaman Inertia
auth, completed, loginlogWeb groupHalaman yang butuh onboarding selesai
Tanpa authWebhook, public checkoutDiverifikasi via signature

Grup route API

Auth & User

PrefixEndpoint utamaCatatan
/auth (:274)login, logout, register, verifyGuard auth:api
/profile (:368)Update profile, update passwordMiddleware auth
/logs (:281)Login log, disconnect—
/verification (:360)Email/WA verification—

E-commerce

PrefixEndpoint utamaCatatan
/products (:150)CRUD produk, variant, stock—
/category_product (:188)CRUD kategori—
/variant_product (:199)CRUD variant—
/order (:208)CRUD order, status, shipping, resiLihat Order
/payment (:241)Payment status, webhookLihat Wallet
/digital-store (:250)CRUD storefrontLihat Toko Digital
/checkout (:667, :706)Checkout, storeDua prefix identik — bentrok
/coupon (:611)CRUD kupon—

WhatsApp & Chat

PrefixEndpoint utamaCatatan
/device (:508)CRUD device, QR, statusLihat Perangkat
/livechat (:98)Chat list, inbox, move, handlingLihat Live Chat
/agent (:720)CRUD AI agent, prompt, qnaLihat AI Agent
/testing (:764)Testing inbox AI—
/broadcast (:627)CRUD message + schedulerLihat Broadcast
/template-message (:118)CRUD template WA—
/response-template (:126)CRUD quick reply—
/chatbot (:553)CRUD chatbot—
/botwelcome (:473)CRUD welcome bot—
/wa (:289)WA controller—

Kontak

PrefixEndpoint utamaCatatan
/contact (:295)CRUD contact, tag, segment, importLihat Kontak
/tag (:491)CRUD tag—
/crm (:604)CRM workspaceNonaktif — tidak dipakai
/ticketing-feedback (:402)Ticketing feedback—

Wallet & Payment

PrefixEndpoint utamaCatatan
/wallet (:772)Balance, withdraw, PIN, bank accountLihat Wallet
/aspire (:421)Aspire sandboxHardcode credentials
/duitku (:435)Duitku subscription—
/subscription (:386)Package, invoice, buyLihat Subscription
/addon (:467)List addon—
/package (:593), /new-package (:599)List package—

Shipping

PrefixEndpoint utamaCatatan
/rajaongkir (:410)Province, city, ongkir, waybillLihat Shipping
/shipping (:563)Location, rates (Apikurir)—
/warehouse (:530)List, destroy—

Marketing

PrefixEndpoint utamaCatatan
/biolink (:617)CRUD biolink, submit domainTidak dimodulkan
/custom_domain (:711)CRUD custom domain—
/pixel (:575)CRUD pixel (lama)Tidak dimodulkan
/tracking (:583)CRUD pixel (baru)—
/domain (:482)List domain—
/tracker (:547)Tracker—

Team

PrefixEndpoint utamaCatatan
/team (:333)CRUD team memberLihat Pengaturan
/team_chat (:570)Store—
/teamchat (:655)List, add, inbox, mark read—

Settings & Misc

PrefixEndpoint utamaCatatan
/settings (:257)Store settings—
/setting (:443)Store settings (varian)—
/store (:500)Store info—
/dashboard (:378)Dashboard data—
/report (:341)Sales, team, product, locationLihat Laporan
/notification (:538)CRUD notification—
/upload (:90)S3 uploadGuard auth:sanctum

Webhook (tanpa auth, verifikasi signature)

PathGatewayFungsi
/doku/notificationDOKUMark order paid → trigger OrderObserver
/doku/checkout-notificationDOKU CheckoutMark order paid + notify Engine Bot
/payment/create-checkoutDOKU CheckoutBuat payment URL (public)
/payment/engine-bot/create-checkoutEngine BotBuat checkout internal
/payment/engine-bot/check-status/{orderNumber}Engine BotCek status
/duitku/webhookDuitkuSet invoice paid
/aspire/callbackAspireValidate signature
/doku/sandbox/simulate-webhookDOKU SandboxDev only

Auth flow untuk API call

text
1. POST /api/auth/login → dapat { access_token, token_type, expires_in }
2. Simpan access_token di localStorage
3. Setiap request: header Authorization: Bearer <token>
4. Saat 401: POST /api/refresh (dengan token lama) → token baru
5. Jika refresh gagal: logout

Detail alur JWT lihat Auth & JWT.

Catatan

  • Route bentrok — POST /order/change_payment_status terdaftar 2x (OrderController vs OrderpaymentController). Laravel pakai route terakhir. Verifikasi mana yang dipakai
  • /checkout prefix 2x (:667 & :706) — kemungkinan duplikat
  • /settings vs /setting — dua prefix berbeda untuk fungsi serupa
  • Webhook diverifikasi signature, bukan auth — pastikan signature validation benar sebelum mengubah