dazoapp mempunyai 390 route API di routes/api.php dan 192 route web di routes/web.php. Halaman ini memetakan grup route utama.
Autentikasi
| Guard | Middleware | Untuk |
|---|---|---|
auth:api (JWT) | Route::middleware('auth:api') | Endpoint JWT-specific (/testjwt, /logout) |
auth:sanctum | Mayoritas endpoint | Token-based API |
auth (session) | Beberapa endpoint web | Halaman Inertia |
auth, completed, loginlog | Web group | Halaman yang butuh onboarding selesai |
| Tanpa auth | Webhook, public checkout | Diverifikasi via signature |
Grup route API
Auth & User
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/auth (:274) | login, logout, register, verify | Guard auth:api |
/profile (:368) | Update profile, update password | Middleware auth |
/logs (:281) | Login log, disconnect | — |
/verification (:360) | Email/WA verification | — |
E-commerce
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/products (:150) | CRUD produk, variant, stock | — |
/category_product (:188) | CRUD kategori | — |
/variant_product (:199) | CRUD variant | — |
/order (:208) | CRUD order, status, shipping, resi | Lihat Order |
/payment (:241) | Payment status, webhook | Lihat Wallet |
/digital-store (:250) | CRUD storefront | Lihat Toko Digital |
/checkout (:667, :706) | Checkout, store | Dua prefix identik — bentrok |
/coupon (:611) | CRUD kupon | — |
WhatsApp & Chat
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/device (:508) | CRUD device, QR, status | Lihat Perangkat |
/livechat (:98) | Chat list, inbox, move, handling | Lihat Live Chat |
/agent (:720) | CRUD AI agent, prompt, qna | Lihat AI Agent |
/testing (:764) | Testing inbox AI | — |
/broadcast (:627) | CRUD message + scheduler | Lihat 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
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/contact (:295) | CRUD contact, tag, segment, import | Lihat Kontak |
/tag (:491) | CRUD tag | — |
/crm (:604) | CRM workspace | Nonaktif — tidak dipakai |
/ticketing-feedback (:402) | Ticketing feedback | — |
Wallet & Payment
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/wallet (:772) | Balance, withdraw, PIN, bank account | Lihat Wallet |
/aspire (:421) | Aspire sandbox | Hardcode credentials |
/duitku (:435) | Duitku subscription | — |
/subscription (:386) | Package, invoice, buy | Lihat Subscription |
/addon (:467) | List addon | — |
/package (:593), /new-package (:599) | List package | — |
Shipping
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/rajaongkir (:410) | Province, city, ongkir, waybill | Lihat Shipping |
/shipping (:563) | Location, rates (Apikurir) | — |
/warehouse (:530) | List, destroy | — |
Marketing
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/biolink (:617) | CRUD biolink, submit domain | Tidak 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
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/team (:333) | CRUD team member | Lihat Pengaturan |
/team_chat (:570) | Store | — |
/teamchat (:655) | List, add, inbox, mark read | — |
Settings & Misc
| Prefix | Endpoint utama | Catatan |
|---|---|---|
/settings (:257) | Store settings | — |
/setting (:443) | Store settings (varian) | — |
/store (:500) | Store info | — |
/dashboard (:378) | Dashboard data | — |
/report (:341) | Sales, team, product, location | Lihat Laporan |
/notification (:538) | CRUD notification | — |
/upload (:90) | S3 upload | Guard auth:sanctum |
Webhook (tanpa auth, verifikasi signature)
| Path | Gateway | Fungsi |
|---|---|---|
/doku/notification | DOKU | Mark order paid → trigger OrderObserver |
/doku/checkout-notification | DOKU Checkout | Mark order paid + notify Engine Bot |
/payment/create-checkout | DOKU Checkout | Buat payment URL (public) |
/payment/engine-bot/create-checkout | Engine Bot | Buat checkout internal |
/payment/engine-bot/check-status/{orderNumber} | Engine Bot | Cek status |
/duitku/webhook | Duitku | Set invoice paid |
/aspire/callback | Aspire | Validate signature |
/doku/sandbox/simulate-webhook | DOKU Sandbox | Dev only |
Auth flow untuk API call
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: logoutDetail alur JWT lihat Auth & JWT.
Catatan
- Route bentrok —
POST /order/change_payment_statusterdaftar 2x (OrderController vs OrderpaymentController). Laravel pakai route terakhir. Verifikasi mana yang dipakai /checkoutprefix 2x (:667&:706) — kemungkinan duplikat/settingsvs/setting— dua prefix berbeda untuk fungsi serupa- Webhook diverifikasi signature, bukan auth — pastikan signature validation benar sebelum mengubah