Test environment for all PeerPin APIs โ REST & WebSocket
Create account with email & password (no auto-login)
Authenticate with your credentials & get JWT token
View & update display name, bio, phone, avatar
Explore groups, location sharing, chat & more
๐ก Enter your email to receive a password reset link
๐ก Change your password (must know current password)
๐ก For users who signed up via Google/Apple and have no password set
๐ก A verification email will be sent to the new address. The change takes effect after verification.
๐ก Paste the token from the verification email sent to your new address
๐ก Token expired? Enter your email to get a new verification link (valid for 30 minutes)
โ Opens in new tab - auto-closes after login!
โ ๏ธ Requires GOOGLE_CLIENT_ID/SECRET in env vars
By signing in, you agree to our Privacy Policy and Terms of Service
โ ๏ธ For mobile apps - paste ID token from Google/Apple SDK
Must be logged in first
View which OAuth providers are linked to your account
๐ก Invalidates your access and refresh tokens immediately
Auto-refresh is active when logged in. Use the button below to test manually.
Subscriptions are managed through the app store. Get instructions and a direct link below.
๐ก Leave fields empty to keep current values. Set display name after registration.
Warning: Account will be marked for deletion with a 30-day grace period. You can restore it within 30 days using the restore endpoint.
Restore a deleted account within the 30-day grace period
Use when you still have a valid session token
Use the User Profile tab to login and get your session token
Create a new group with a name, duration, and member limit
Join an existing group using its 6-character code
View group members and remove them (if you're the owner)
Click "Refresh My Groups" to load your groups
Click "Refresh Pending Requests" to check your pending join requests
Select a group to view its members
Automatic monitoring: This section automatically connects to WebSocket and displays all your groups with real-time updates as events occur (members join, leave, etc.)
Initializing WebSocket monitoring...
Use the User Profile tab to login and get your session token
Use the Group Management tab to create or join a group
Send your GPS coordinates to group members in real-time
See group members on the compass and check their distances
Connect to receive real-time location updates from group members
๐ก Your location will be shared automatically with all your active groups
๐ก Fetch tracking mode configurations from the backend
Choose a group to see real-time locations of members
Visual representation of group members' positions relative to you
Choose a group to chat in
Send real-time chat via WebSocket
See group chat history
Delete your own messages
๐ก React to a message with an emoji. Copy message ID from chat history above.
๐ก Copy message ID from chat history above
๐ก Export your chat history. Select a group or export all.
Search, browse, manage roles & account status
List, view & delete any group
Query system audit trail
Manage subscription tier settings
Refunds & subscription overrides
Dynamic RBAC โ manage roles & permissions
Manage blocked patterns & review moderation log
Toggle notification types & broadcast announcements
Paginated user listing with optional email search
โ ๏ธ Requires ADMIN or SUPER_ADMIN role
โ ๏ธ ADMIN can suspend up to MODERATOR. SUPER_ADMIN can suspend anyone except last SUPER_ADMIN.
Invalidate all sessions for a user
Send a password reset email to the user
Manually verify a user's email (e.g. when they can't receive emails)
โ ๏ธ Permanent action โ use with caution
โ ๏ธ Permanent โ removes the group and all memberships
โ ๏ธ Requires SUPER_ADMIN role
โ ๏ธ Requires ADMIN role. Only filled fields are updated.
โ ๏ธ Resets all settings for this tier back to system defaults
Search payment history. Leave empty to list all payments, or filter by user.
โ ๏ธ Requires SUPER_ADMIN role
โ ๏ธ Atomically transfers a subscription from one user to another (SUPER_ADMIN)
View a user's current subscription tier, limits, and expiry
โ ๏ธ Overrides the user's current subscription โ deactivates the existing tier and sets a new one for the specified duration
Create and manage discount promo codes (3โ12 characters)
Create and manage billing plans (any price, duration, tier)
Name must be UPPER_SNAKE_CASE (e.g., CONTENT_REVIEWER)
โ ๏ธ Only custom roles can be deleted. Users must be reassigned first.
Replace the entire permission set for a role
Fill in only the fields you want to update
View full conversation for moderation review. Click ๐ฌ in the log table to auto-fill.
Toggle notification types on/off system-wide. Disabled types will not be sent to any user.
Send an emergency alert to all group members
SOS alerts include your last known location
Mark alerts as resolved when the situation is handled
Browse past alerts with pagination
Status is automatically detected: Online, Idle, Offline
WebSocket heartbeats keep your status alive
Typing indicators show who is composing a message
View global online stats and group presence
WebSocket must be connected first (use status bar above)
Notifications arrive instantly via WebSocket
Notifications are stored and retrievable via REST API
Mark as read or delete multiple notifications at once
Filter by read/unread status and paginate
Configure per-type notification channels (in-app, email, push)
View and update your per-type notification channel preferences.
Register or unregister a device push token (Expo Push Token).
Check if the application is running and responsive
Verify database connectivity and health
Monitor API response latency
Enable automatic health monitoring
Endpoint: GET /actuator/health
Authentication: None required (public endpoint)
Response Format: JSON
View available subscription plans from the database
Start a payment session (stub auto-completes)
View all payment records and subscription status
Get store-specific instructions and a deep link for managing or cancelling your subscription.
โ ๏ธ Cancels at end of billing period. You keep access until then.
Restore a subscription using the Order ID and email from your store receipt.