API Documentation
Base URL
Authentication
Authorization: Bearer <JWT_TOKEN>
Key Endpoints
Public: GET /app-downloads, GET /csrf-token, GET /delete-data (GDPR page), POST /register, POST /register/send-otp, POST /register/verify-otp, POST /login, POST /login/request-otp, POST /login/verify-otp, POST /payment/webhook
- Sign-up: Email OTP only —
POST /register/send-otp(body:{ "email" }),POST /register/verify-otp(body:{ "email", "code" }→ returnssignup_token). ThenPOST /registerwithsignup_token. See Sign-up Email OTP. - Login: Password (
POST /login) or email OTP —POST /login/request-otp(body:{ "login": "email@example.com" }),POST /login/verify-otp(body:{ "login", "code" }→ returns JWT). OTP login is email only (no SMS).
Auth required: POST /upload, POST /create-payment-order, GET /payment-order/:orderId/status, GET /wallet/balance, POST /wallet/topup, GET /my-files, GET /my-orders, GET /shops, POST /shop/status, POST /shop/heartbeat, POST /withdraw/:fileId, DELETE /profile; shopkeeper: GET /queue, GET /queue/:orderGroupId/files, GET /queue/download/:fileId, POST /queue/:fileId/confirm, POST /queue/:fileId/cancel (body: { "reason": "..." }), POST /queue/:fileId/print-started, POST /queue/:fileId/print-failed, POST /file/:code/confirm, POST /file/:code/print-started, POST /file/:code/print-failed
Admin: GET /admin/dashboard/stats, GET /admin/users, GET /admin/orders, GET /admin/payouts, PUT /admin/payouts/update, PUT /admin/payouts/bulk-update, GET /admin/payouts/export, PUT /admin/app-downloads
See API Documentation for full details.