API Reference
Referensi lengkap semua endpoint yang tersedia di Fumai Mobile API.
Base URL
https://fumai.app/api/mobile/v1Endpoint Overview
Auth
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
POST | /auth/check-email | — | Cek status email (langkah pertama) |
POST | /auth/login | — | Login dengan email + password |
POST | /auth/register | — | Register (auto-register) |
POST | /auth/verify-email | — | Verifikasi email dengan OTP |
POST | /auth/resend-verification | — | Kirim ulang kode OTP |
POST | /auth/google | — | Login/register via Google OAuth |
POST | /auth/apple | — | Login/register via Apple Sign In |
POST | /auth/refresh | — | Refresh access token |
GET | /auth/me | JWT | Get current user |
POST | /auth/logout | JWT | Logout |
GET | /auth/sessions | JWT | List active sessions |
POST | /auth/sessions | JWT | Revoke session |
POST | /auth/set-initial-password | JWT | Set password (untuk user OAuth/email-only) |
Password Reset
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
POST | /auth/forgot-password | — | Kirim email reset password |
GET | /auth/reset-password | — | Verifikasi reset token |
POST | /auth/reset-password | — | Reset password |
POST | /auth/report-issue | — | Laporkan masalah |
Onboarding
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /onboarding/status | JWT | Cek status onboarding |
POST | /onboarding/save-profile | JWT | Simpan profil (incremental) |
POST | /onboarding/upload-photo | JWT | Upload foto profil |
GET | /onboarding/options | — | Opsi onboarding (dynamic) |
POST | /onboarding/save-preferences | JWT | Simpan preferensi |
POST | /onboarding/save-permissions | JWT | Simpan permissions + selesaikan onboarding |
Locations
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /locations?type=countries | — | List negara |
GET | /locations?type=regions | — | List provinsi |
GET | /locations?type=cities | — | List kota |
Push Notification (FCM)
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
POST | /notifications/fcm | JWT | Register FCM token |
GET | /notifications/fcm | JWT | List registered devices |
DELETE | /notifications/fcm | JWT | Unregister FCM token |
Dashboard / Home
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /dashboard/home | JWT | Aggregator data home (one round-trip) |
GET | /dashboard/stats | JWT | Stats agregat |
GET | /dashboard/health-score | JWT | Health score mingguan + tips |
GET | /dashboard/weekly-overview | JWT | Strip 7 hari aktivitas |
Feed
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /feed | JWT | List feed (cursor pagination) |
POST | /feed | JWT | Buat post baru |
GET | /feed/:id | JWT | Get single post |
DELETE | /feed/:id | JWT | Soft-delete post (author only) |
POST | /feed/:id/like | JWT | Like post |
DELETE | /feed/:id/like | JWT | Unlike post |
GET | /feed/:id/comment | JWT | List comments |
POST | /feed/:id/comment | JWT | Buat comment/reply |
Stories
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /stories | JWT | Get story rings |
GET | /stories?userId=:id | JWT | Get stories user tertentu |
POST | /stories | JWT | Buat story baru |
GET | /stories/:id | JWT | Get single story (auto-mark viewed) |
DELETE | /stories/:id | JWT | Delete story (author only) |
POST | /stories/:id/react | JWT | React story dengan emoji |
FitMatch
| Method | Endpoint | Auth | Keterangan |
|---|---|---|---|
GET | /fitmatch/profile | JWT | Get own profile |
POST | /fitmatch/profile | JWT | Create profile |
PUT | /fitmatch/profile | JWT | Update profile |
DELETE | /fitmatch/profile | JWT | Delete profile |
GET | /fitmatch/profile/:id | JWT | View other profile |
GET | /fitmatch/photos | JWT | Get photos |
POST | /fitmatch/photos | JWT | Upload photo |
PUT | /fitmatch/photos | JWT | Reorder photos |
DELETE | /fitmatch/photos | JWT | Delete photo |
GET | /fitmatch/discover | JWT | Get discover profiles |
POST | /fitmatch/swipe | JWT | Swipe (like/pass) |
GET | /fitmatch/matches | JWT | Get matches |
GET | /fitmatch/chat/:matchId | JWT | Get chat room |
POST | /fitmatch/chat/:matchId/messages | JWT | Send message |
POST | /fitmatch/chat/:matchId/read | JWT | Mark as read |
DELETE | /fitmatch/chat/:matchId | JWT | Unmatch |
POST | /fitmatch/chat/:matchId/typing | JWT | Typing indicator |
GET | /fitmatch/profile/venues | JWT | Get venues |
POST | /fitmatch/profile/venues | JWT | Add venue |
PUT | /fitmatch/profile/venues | JWT | Reorder/update venue |
DELETE | /fitmatch/profile/venues | JWT | Delete venue |
POST | /fitmatch/block | JWT | Block user |
GET | /fitmatch/block | JWT | Get blocked users |
DELETE | /fitmatch/block | JWT | Unblock user |
POST | /fitmatch/report | JWT | Report user |
GET | /fitmatch/report | JWT | Get my reports |
GET | /fitmatch/settings | JWT | Get settings |
PUT | /fitmatch/settings | JWT | Update settings |
DELETE | /fitmatch/settings | JWT | Delete FitMatch profile |
GET | /fitmatch/verification | JWT | Get verification status |
POST | /fitmatch/verification | JWT | Submit verification photo |
DELETE | /fitmatch/verification | JWT | Cancel verification |
GET | /fitmatch/badges | JWT | Get badges |
POST | /fitmatch/badges | JWT | Refresh badges |
GET | /fitmatch/setup-draft | JWT | Get setup draft |
POST | /fitmatch/setup-draft | JWT | Save setup draft |
DELETE | /fitmatch/setup-draft | JWT | Clear setup draft |
GET | /fitmatch/tutorial-seen | JWT | Check tutorial status |
POST | /fitmatch/tutorial-seen | JWT | Mark tutorial as seen |
Last updated on