Health Check
Is the API running? Hit one of these.
SignalR (Video Hub)
Connect to the real-time Video hub. Youβll see events when videos are uploaded, location groups updated, or videos deleted. Login required.
Hub URL: /hubs/videos. Connect with your current token, then upload or delete a video in the Videos section to see events here.
β
Sentry Test
Trigger a test exception to verify Sentry is capturing errors.
This calls GET /api/SentryTest/throw which throws an exception. You should see a 500 response here and the error in your Sentry dashboard.
Apple IAP config diagnostics (Admin only). Calls GET /api/Credits/debug/apple-config.
Welcome
Sign in to access the tester dashboard.
Step 1 sends OTP to email. Enter it in Step 2, then set password in Step 3.
Docs
Module-wise documentation viewer (Markdown).
Profile
Get or update your profile: name, email (read-only), gender, dashcam type, profile picture. Login required.
Change password
Set a new password (requires current password). Login required.
Videos
Test video upload modes: Direct-to-Azure (recommended) and Legacy API modes. Login required.
Chunked upload: use Direct-to-Azure (recommended) or Legacy API-proxied chunks (older POC). Thumbnail is optional on complete for these chunked flows.
Load my videos = everyone's videos. My Feed = only your videos (with views, shares, average rating). Use Play (MP4) to play immediately; Play (HLS) appears after background encoding (refresh after 1β2 min). Validation uses 1/2/5 tiers, and in rating-batch mode you send 4 previous IDs while current URL video is the 5th.
Home map search
Calls GET /api/map/search?query=.... It searches video metadata fields and returns matching videos with map coordinates.
(Map search results will appear here.)
ML manual bearer token (optional)
If provided, this token is used for GET /api/videos/nearby and POST /api/webhooks/video-analysis. If empty, UI uses your login token.
Nearby analysis lookup
Calls GET /api/videos/nearby with latitude, longitude, timestamp, radius and time_range to verify ML analysis records.
(Nearby analysis results will appear here.)
AI/ML callback webhook tester
Calls POST /api/webhooks/video-analysis with required Authorization: Bearer and X-Job-ID header.
Rate Testing
Rate-focused testing for milestone progress, owner visibility, and full validation payloads.
Use this tab to test rating flow quickly without scrolling the full Videos section.
(Candidate list with owner details will appear here.)
Valid Videos Rate
Only valid videos (not expired, not deleted) that you can rate. Rate directly from tile and verify confidence score update.
This uses GET /api/videos/videos-left-to-rate and shows confidence score, average rating, and per-user rating entries for each tile.
Notifications (v1)
Register device token, list notifications, unread count, mark read, and send admin test push.
1) Register Device
Calls POST /api/v1/devices. Login required.
2) List Notifications
Calls GET /api/v1/notifications. Use filters as needed.
(Notifications list will appear here.)
3) Mark as Read
4) Test Push (Admin)
Calls POST /api/v1/notifications/test-push. Admin JWT required.
5) Admin Simulation Helpers
Admin-only helper actions to quickly test the 2 enabled admin auto-notification flows.
AI/ML Reprocess
Select videos and submit to AI/ML through backend so ML job id is persisted on video.
Loads your videos from backend and calls backend endpoint POST /api/videos/{id}/ml/submit for selected videos.
Credits & Buy Credits
View balance, packages, and create a Stripe payment intent to buy credits. Login required for overview and purchase.
Select a package and create a payment intent. Use the returned clientSecret with Stripe.js (or test with Stripe test card 4242 4242 4242 4242). After payment, webhook adds credits.
Verify IAP purchase (Apple / Google)
Login required. This calls POST /api/credits/verify-purchase.
Transaction history (last 30 days).
Admin β Credits
For Admin users only. Manage base price per credit and credit packages.
You must be logged in as an Admin (UserRole.Admin) for these calls to succeed.
Base price per credit
Packages
(Packages will appear here.)
Create or update a package below, then click the corresponding button.
Reported videos moderation
Admin-only moderation queue with 3 categories: Pending, Removed, Allowed.
Admin - Users
For Admin users only. List users sorted by active first and newest created.
Calls /api/admin/users with paging and includeRelated options.
(Users will appear here.)
Refresh Token
Get new tokens (uses saved refresh token).
Logout
Sign out (uses current token).
Or paste a Google ID token:
Paste Firebase ID token after Apple sign-in via Firebase Auth.
Paste a Firebase ID token from your app (e.g.
user.getIdToken()).