Lewati ke konten

API Routes

Total: 124 stable operations (218 runtime guards). Paritas OpenAPI diverifikasi via scripts/check-openapi-runtime-parity.mjs.

Method Route Fungsi
POST /api/v1/auth/login Email + password
POST /api/v1/auth/otp/request Phone → challenge
POST /api/v1/auth/otp/verify Challenge + code → session
POST /api/v1/auth/refresh Refresh token
POST /api/v1/auth/recovery/request Password reset (email via Kurir)
GET /api/v1/auth/session Session info (role, modules, branches)
Method Route Fungsi
GET/POST /api/v1/admin/products Product CRUD
GET/POST /api/v1/admin/orders Order list/create
POST /api/v1/admin/orders/:id/void Void order
GET/POST /api/v1/admin/payments Payment initiate
POST /api/v1/admin/payments/:id Payment transition
GET/POST /api/v1/admin/suppliers Supplier CRUD
GET/POST /api/v1/admin/purchase-orders PO list/create
POST /api/v1/admin/inventory/transfers Stock transfer
GET/PATCH /api/v1/admin/loyalty/config Loyalty config
GET /api/v1/admin/accounting/accounts Chart of accounts
GET/POST /api/v1/admin/accounting/journal Journal entries
GET/POST /api/v1/admin/accounting/cash-shifts Cash shift lifecycle
GET/POST /api/v1/admin/vouchers Voucher CRUD (owner-only)
GET /api/v1/admin/laundry/by-label/:label Laundry lookup
POST /api/v1/admin/laundry/receive-by-label Laundry receive
Method Route Fungsi
GET /api/v1/public/business/:slug Business profile
GET /api/v1/public/business/:slug/products Public catalog

Semua respons memakai canonical envelope:

{ "success": true, "data": {}, "meta": { "requestId": "..." } }
{ "success": false, "error": { "code": "...", "message": "...", "retryable": false } }