Most endpoints require authentication via session tokens:
{
"Authorization": "Bearer <session_token>"
}Admin endpoints require users with admin privileges:
/api/admin/dashboard - Payment analytics/api/admin/monitoring - System health/api/admin/rate-limits - Rate limit managementAll endpoints are protected by rate limiting to ensure fair usage:
{
"/api/login": {
"requests": 5,
"window": "5 minutes"
},
"/api/signup": {
"requests": 3,
"window": "5 minutes"
},
"/api/payments/initiate": {
"requests": 10,
"window": "5 minutes"
},
"/api/": {
"requests": 100,
"window": "1 minute"
},
"/api/admin/": {
"requests": 300,
"window": "1 minute"
}
}{
"200": "Success - Request completed successfully",
"400": "Bad Request - Invalid input data or validation error",
"401": "Unauthorized - Authentication required or invalid token",
"403": "Forbidden - Insufficient permissions (admin required)",
"404": "Not Found - Resource or endpoint not found",
"429": "Too Many Requests - Rate limit exceeded",
"500": "Internal Server Error - Server-side error"
}{
"error": "Error message description",
"code": "ERROR_CODE",
"details": "Additional error details if available"
}Import the Postman collection for easy API testing:
/Flocci-Backend-API.postman_collection.jsonContains all endpoints with pre-configured requests and examples.
Run the automated test script:
./test-api.shAutomated bash script to test all endpoints with sample data.
Start by registering or logging in to get a session token
Include the session token in the Authorization header for protected endpoints
Use the payments/initiate endpoint to test PayU integration
Ensure your user has admin privileges for admin endpoints