{
    "info": {
        "name": "NumoniX Complete API (Production)",
        "description": "Comprehensive, production-ready Postman collection for the NumoniX API, covering all 81 endpoints across Guest, Auth, Social Login, Subscription & Paddle, Founder Programme, Notifications, Learnings, Ear Training, Quizzes, CMS, Support, and User Settings.",
        "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
    },
    "auth": {
        "type": "bearer",
        "bearer": [
            {
                "key": "token",
                "value": "{{token}}",
                "type": "string"
            }
        ]
    },
    "event": [
        {
            "listen": "prerequest",
            "script": {
                "type": "text/javascript",
                "exec": [
                    "// Global Pre-Request Hook: Automatically inject Guest Headers if present",
                    "let device = pm.collectionVariables.get('guest_device_id');",
                    "let token = pm.collectionVariables.get('guest_token');",
                    "let fp = pm.collectionVariables.get('guest_fingerprint');",
                    "if(device && !pm.request.headers.has('X-Guest-Device-Id')) { pm.request.headers.add({key: 'X-Guest-Device-Id', value: device}); }",
                    "if(token && !pm.request.headers.has('X-Guest-Token')) { pm.request.headers.add({key: 'X-Guest-Token', value: token}); }",
                    "if(fp && !pm.request.headers.has('X-Guest-Fingerprint')) { pm.request.headers.add({key: 'X-Guest-Fingerprint', value: fp}); }"
                ]
            }
        }
    ],
    "variable": [
        {
            "key": "base_url",
            "value": "https://api.numonix.app/api",
            "type": "string"
        },
        {
            "key": "token",
            "value": "",
            "type": "string"
        },
        {
            "key": "guest_device_id",
            "value": "dev_test_device_001",
            "type": "string"
        },
        {
            "key": "guest_token",
            "value": "",
            "type": "string"
        },
        {
            "key": "guest_fingerprint",
            "value": "fp_test_hash_001",
            "type": "string"
        },
        {
            "key": "test_email",
            "value": "user@numonix.app",
            "type": "string"
        },
        {
            "key": "app_url",
            "value": "https://api.numonix.app",
            "type": "string"
        },
        {
            "key": "test_password",
            "value": "Password123!",
            "type": "string"
        },
        {
            "key": "admin_email",
            "value": "admin@numonix.app",
            "type": "string"
        },
        {
            "key": "admin_password",
            "value": "AdminPassword123!",
            "type": "string"
        }
    ],
    "item": [
        {
            "name": "1. Guest Flow",
            "item": [
                {
                    "name": "Guest Identify",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/guest/identify",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "guest",
                                "identify"
                            ]
                        },
                        "description": "Identifies or registers a guest device and returns guest credentials and activity stats.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"device_id\": \"{{guest_device_id}}\",\n    \"fingerprint\": \"{{guest_fingerprint}}\",\n    \"platform\": \"android\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Guest Device Info",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/guest/device",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "guest",
                                "device"
                            ]
                        },
                        "description": "Fetches current guest device session and stats."
                    }
                }
            ]
        },
        {
            "name": "2. Authentication",
            "item": [
                {
                    "name": "Register User",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/register",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "register"
                            ]
                        },
                        "description": "Registers a new user and syncs any guest device progress.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"name\": \"NumoniX User\",\n    \"email\": \"{{test_email}}\",\n    \"password\": \"{{test_password}}\",\n    \"password_confirmation\": \"{{test_password}}\",\n    \"device_id\": \"{{guest_device_id}}\",\n    \"fingerprint\": \"{{guest_fingerprint}}\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Login User",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/login",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "login"
                            ]
                        },
                        "description": "Authenticates a user and returns Sanctum Bearer token.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\",\n    \"password\": \"{{test_password}}\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Verify Email OTP",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/email/verify",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "email",
                                "verify"
                            ]
                        },
                        "description": "Verifies the email address using the received 4-digit OTP.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\",\n    \"otp\": \"1234\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Resend Email Verify OTP",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/email/verify/resend",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "email",
                                "verify",
                                "resend"
                            ]
                        },
                        "description": "Resends verification OTP to user email.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Forgot Password",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/password/forgot",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "password",
                                "forgot"
                            ]
                        },
                        "description": "Initiates password reset process and sends OTP to email.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Verify Forgot Password OTP",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/password/forgot/verify",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "password",
                                "forgot",
                                "verify"
                            ]
                        },
                        "description": "Verifies password reset OTP.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\",\n    \"otp\": \"1234\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Reset Password",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/password/reset",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "password",
                                "reset"
                            ]
                        },
                        "description": "Resets password after OTP verification.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"{{test_email}}\",\n    \"password\": \"NewPassword123!\",\n    \"password_confirmation\": \"NewPassword123!\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Change Password (Auth Route)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/auth/change-password",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "auth",
                                "change-password"
                            ]
                        },
                        "description": "Changes user password via auth route.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"current_password\": \"Password123!\",\n    \"password\": \"NewPassword123!\",\n    \"password_confirmation\": \"NewPassword123!\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Logout Current Device",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/logout",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "logout"
                            ]
                        },
                        "description": "Revokes current access token."
                    }
                },
                {
                    "name": "Logout All Devices",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/logout/all",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "logout",
                                "all"
                            ]
                        },
                        "description": "Revokes all active tokens across devices."
                    }
                }
            ]
        },
        {
            "name": "3. Social Login",
            "item": [
                {
                    "name": "Social Login (Google / Apple Firebase ID Token)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/social/login",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "social",
                                "login"
                            ]
                        },
                        "description": "Social Login via Firebase ID token (Google or Apple). Verified server-side via Kreait/Google tokeninfo API/Socialite. Returns Sanctum bearer token and user profile.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"provider\": \"google\",\n    \"token\": \"FIREBASE_OR_GOOGLE_ID_TOKEN_HERE\",\n    \"email\": \"{{test_email}}\",\n    \"name\": \"NumoniX Tester\",\n    \"avatar\": \"https://api.numonix.app/images/avatar.png\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Apple OAuth Callback",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/social/apple/callback",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "social",
                                "apple",
                                "callback"
                            ]
                        },
                        "description": "Handles web-based Apple Sign-In OAuth callback redirect.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"code\": \"c891...apple_auth_code\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "4. Profile & Account Management",
            "item": [
                {
                    "name": "Get Profile",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile"
                            ]
                        },
                        "description": "Fetches authenticated user profile, tier, and founder status."
                    }
                },
                {
                    "name": "Update Profile Details",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile/details",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile",
                                "details"
                            ]
                        },
                        "description": "Updates user display name and profile fields.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"name\": \"John Updated\",\n    \"phone\": \"+447123456789\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Change Password (Profile Route)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile/change-password",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile",
                                "change-password"
                            ]
                        },
                        "description": "Changes password from profile screen.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"current_password\": \"Password123!\",\n    \"password\": \"NewPassword123!\",\n    \"password_confirmation\": \"NewPassword123!\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Delete Account",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile/delete-account",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile",
                                "delete-account"
                            ]
                        },
                        "description": "Permanently deletes user account and personal data (GDPR compliant).",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"password\": \"Password123!\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Download My Data (GDPR)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile/download-my-data",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile",
                                "download-my-data"
                            ]
                        },
                        "description": "Generates and returns an export of user data."
                    }
                },
                {
                    "name": "Manage Account Info",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/profile/manage-account",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "profile",
                                "manage-account"
                            ]
                        },
                        "description": "Returns account management details."
                    }
                }
            ]
        },
        {
            "name": "5. Subscription & Paddle Payments",
            "item": [
                {
                    "name": "Get Subscription Status",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/subscription/status",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "subscription",
                                "status"
                            ]
                        },
                        "description": "Authoritative subscription status, active tier, founder status, trial countdown, and renewal date."
                    }
                },
                {
                    "name": "Create Paddle Checkout Link",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/subscription/checkout",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "subscription",
                                "checkout"
                            ]
                        },
                        "description": "Generates a secure Paddle checkout URL (applies founder £24.99 offer if user is eligible founder)."
                    }
                },
                {
                    "name": "Paddle Webhook (Ed25519 Verified)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Paddle-Signature",
                                "value": "ts=1728000000;h=ed25519_signature_hash_here",
                                "type": "text",
                                "description": "Ed25519 webhook signature generated by Paddle"
                            }
                        ],
                        "url": {
                            "raw": "{{app_url}}/paddle/webhook",
                            "host": [
                                "{{app_url}}"
                            ],
                            "path": [
                                "paddle",
                                "webhook"
                            ]
                        },
                        "description": "Paddle webhook endpoint verified via Ed25519 signature in Paddle-Signature header.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"event_id\": \"evt_01test...\",\n    \"event_type\": \"subscription.created\",\n    \"data\": {\n        \"id\": \"sub_01test...\",\n        \"status\": \"active\",\n        \"customer_id\": \"ctm_01test...\"\n    }\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "6. Founder Programme",
            "item": [
                {
                    "name": "Get Founder Status",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/founder/status",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "founder",
                                "status"
                            ]
                        },
                        "description": "Returns founder programme status, trial days remaining, review completion, and £24.99 offer status."
                    }
                },
                {
                    "name": "Submit Optional Founder Review",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/founder/review",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "founder",
                                "review"
                            ]
                        },
                        "description": "Submits the optional founder review (does NOT gate conversion or trial).",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"rating\": 5,\n    \"feedback\": \"Great ear training tool! Very intuitive.\",\n    \"favorite_feature\": \"Functional Ear Training\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "7. Push Notifications & Settings",
            "item": [
                {
                    "name": "Get Notifications List",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notifications",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notifications"
                            ]
                        },
                        "description": "Returns paginated user notifications with unread count."
                    }
                },
                {
                    "name": "Mark Notification As Read",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notifications/1/mark-as-read",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notifications",
                                "1",
                                "mark-as-read"
                            ]
                        },
                        "description": "Marks a specific notification as read."
                    }
                },
                {
                    "name": "Mark All Notifications As Read",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notifications/mark-all-as-read",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notifications",
                                "mark-all-as-read"
                            ]
                        },
                        "description": "Marks all user notifications as read."
                    }
                },
                {
                    "name": "Send Custom Notification (Admin Only)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notifications/send",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notifications",
                                "send"
                            ]
                        },
                        "description": "Admin-only custom notification sender. Supports recipient_type='all' or recipient_type='selected' with user_ids array [1, 2, 3]. Uses Kreait FCM on backend.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"title\": \"Important Announcement\",\n    \"message\": \"New ear training modules and features are now live in NumoniX!\",\n    \"recipient_type\": \"all\",\n    \"data\": {\n        \"screen\": \"ear_training\",\n        \"click_action\": \"FLUTTER_NOTIFICATION_CLICK\"\n    }\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Notification Settings",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notification-settings-show",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notification-settings-show"
                            ]
                        },
                        "description": "Fetches push/email notification toggles for the user."
                    }
                },
                {
                    "name": "Update Notification Settings",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/notification-settings-update",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "notification-settings-update"
                            ]
                        },
                        "description": "Updates notification preference toggles.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"push_enabled\": true,\n    \"email_enabled\": true\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Register FCM Device Token",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/firebase-token/add",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "firebase-token",
                                "add"
                            ]
                        },
                        "description": "Registers/updates device FCM token for push notifications.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"token\": \"fcm_token_device_string_here\",\n    \"platform\": \"android\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Delete FCM Device Token",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/firebase-token/delete",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "firebase-token",
                                "delete"
                            ]
                        },
                        "description": "Removes FCM token on user logout.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"token\": \"fcm_token_device_string_here\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "8. Dashboard & Progress",
            "item": [
                {
                    "name": "Get Dashboard Overview",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/dashboard",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "dashboard"
                            ]
                        },
                        "description": "Returns comprehensive overview metrics, recent activity, and continue learning cards."
                    }
                },
                {
                    "name": "Get User Progress",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/user/progress",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "user",
                                "progress"
                            ]
                        },
                        "description": "Returns detailed learning and quiz progress percentages."
                    }
                }
            ]
        },
        {
            "name": "9. Learning Module",
            "item": [
                {
                    "name": "Get All Learnings",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings"
                            ]
                        },
                        "description": "Lists all learning items categorized by type."
                    }
                },
                {
                    "name": "Get Lessons",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/lessons",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "lessons"
                            ]
                        },
                        "description": "Lists structured learning lessons."
                    }
                },
                {
                    "name": "Get Core Theory",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/core-theory",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "core-theory"
                            ]
                        },
                        "description": "Fetches Core Theory module contents."
                    }
                },
                {
                    "name": "Get Advanced Insights",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/advanced-insights",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "advanced-insights"
                            ]
                        },
                        "description": "Fetches Advanced Insights module contents."
                    }
                },
                {
                    "name": "Get FNH Architecture",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/fnh-architecture",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "fnh-architecture"
                            ]
                        },
                        "description": "Fetches FNH Architecture module contents."
                    }
                },
                {
                    "name": "Get Case Studies",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/case-studies",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "case-studies"
                            ]
                        },
                        "description": "Fetches Case Studies module contents."
                    }
                },
                {
                    "name": "Show Learning Detail",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/show/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "show",
                                "1"
                            ]
                        },
                        "description": "Returns full details, pages, and interactive elements for a learning item."
                    }
                },
                {
                    "name": "Get Learning Summary",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/summary/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "summary",
                                "1"
                            ]
                        },
                        "description": "Returns a quick summary for a learning item."
                    }
                },
                {
                    "name": "Mark Learning Completed",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/completed",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "completed"
                            ]
                        },
                        "description": "Marks a learning item as completed by user.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"learning_id\": 1\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Next Learning Item",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/next",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "next"
                            ]
                        },
                        "description": "Fetches the subsequent sequential learning item.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"current_id\": 1\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Previous Learning Item",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/previous",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "previous"
                            ]
                        },
                        "description": "Fetches the preceding learning item.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"current_id\": 2\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Update Learning Checklist",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/learnings/checklist/update",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "learnings",
                                "checklist",
                                "update"
                            ]
                        },
                        "description": "Toggles progress on an interactive checklist item.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"learning_id\": 1,\n    \"checklist_item_id\": 1,\n    \"completed\": true\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "10. Ear Training Module",
            "item": [
                {
                    "name": "Get Ear Training Stages",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ear-training/stages",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ear-training",
                                "stages"
                            ]
                        },
                        "description": "Lists all stages in Functional Ear Training."
                    }
                },
                {
                    "name": "Get Stage Levels",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ear-training/stages/1/levels",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ear-training",
                                "stages",
                                "1",
                                "levels"
                            ]
                        },
                        "description": "Fetches all levels and completion statuses for a stage."
                    }
                },
                {
                    "name": "Submit Level Attempt",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ear-training/submit/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ear-training",
                                "submit",
                                "1"
                            ]
                        },
                        "description": "Submits answers and accuracy for an ear training level.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"accuracy\": 90,\n    \"answers\": [\n        {\n            \"question_id\": 1,\n            \"selected\": \"1\",\n            \"correct\": true\n        }\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Explanation Templates",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ear-training/explanation-templates",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ear-training",
                                "explanation-templates"
                            ]
                        },
                        "description": "Returns audio/visual explanation templates for ear training."
                    }
                }
            ]
        },
        {
            "name": "11. Quiz Module",
            "item": [
                {
                    "name": "Get All Quiz Questions",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/questions",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "questions"
                            ]
                        },
                        "description": "Lists quiz questions with access control."
                    }
                },
                {
                    "name": "Get Quiz by Learning ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/by-learning/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "by-learning",
                                "1"
                            ]
                        },
                        "description": "Fetches quiz associated with a learning item."
                    }
                },
                {
                    "name": "Get Quiz by Lesson ID",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/by-lesson/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "by-lesson",
                                "1"
                            ]
                        },
                        "description": "Alias to fetch quiz by lesson."
                    }
                },
                {
                    "name": "Submit Quiz",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/submit/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "submit",
                                "1"
                            ]
                        },
                        "description": "Submits quiz answers, computes score and updates user attempt history.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"answers\": [\n        {\n            \"question_id\": 1,\n            \"selected_option\": \"A\"\n        }\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Check Single Answer",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/check-answer",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "check-answer"
                            ]
                        },
                        "description": "Validates a single quiz answer in real-time.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"question_id\": 1,\n    \"selected_option\": \"A\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Review Quiz Attempt",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/review/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "review",
                                "1"
                            ]
                        },
                        "description": "Returns review of a specific attempt with correct/incorrect answers."
                    }
                },
                {
                    "name": "Review Latest Attempt by Learning",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/review-by-learning/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "review-by-learning",
                                "1"
                            ]
                        },
                        "description": "Fetches review for the latest attempt on a learning module."
                    }
                },
                {
                    "name": "Retry Quiz",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/retry/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "retry",
                                "1"
                            ]
                        },
                        "description": "Resets attempt state for retrying a quiz."
                    }
                },
                {
                    "name": "Get Attempt Details",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/quiz/attempt-details/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "quiz",
                                "attempt-details",
                                "1"
                            ]
                        },
                        "description": "Returns metadata for a specific quiz attempt."
                    }
                }
            ]
        },
        {
            "name": "12. Public & CMS",
            "item": [
                {
                    "name": "Get Home Screen Modules",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/home",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "home"
                            ]
                        },
                        "description": "Returns public homepage module configuration, banners, and curated content."
                    }
                },
                {
                    "name": "About NumoniX",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/about-numonix",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "about-numonix"
                            ]
                        },
                        "description": "Returns About Us page content."
                    }
                },
                {
                    "name": "Glossary",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/glossary",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "glossary"
                            ]
                        },
                        "description": "Returns music theory glossary items."
                    }
                },
                {
                    "name": "Complete Glossary",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/complete-glossary",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "complete-glossary"
                            ]
                        },
                        "description": "Returns full comprehensive glossary."
                    }
                },
                {
                    "name": "Privacy Policy",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/privacy-policy",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "privacy-policy"
                            ]
                        },
                        "description": "Returns Privacy Policy content."
                    }
                },
                {
                    "name": "Terms & Conditions",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/terms-conditions",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "terms-conditions"
                            ]
                        },
                        "description": "Returns Terms and Conditions content."
                    }
                },
                {
                    "name": "User Guide",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cms/user-guide",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cms",
                                "user-guide"
                            ]
                        },
                        "description": "Returns User Guide content."
                    }
                },
                {
                    "name": "Frequently Asked Questions (FAQ)",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/faq",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "faq"
                            ]
                        },
                        "description": "Returns categorised FAQs."
                    }
                },
                {
                    "name": "Get App Reviews",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/reviews",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "reviews"
                            ]
                        },
                        "description": "Returns published app reviews."
                    }
                },
                {
                    "name": "Submit App Review",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/reviews-store",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "reviews-store"
                            ]
                        },
                        "description": "Submits a new review.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"rating\": 5,\n    \"comment\": \"Fantastic educational app!\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Update App Review",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/reviews-update/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "reviews-update",
                                "1"
                            ]
                        },
                        "description": "Updates an existing review.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"rating\": 4,\n    \"comment\": \"Updated review text.\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Delete App Review",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/reviews-delete/1",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "reviews-delete",
                                "1"
                            ]
                        },
                        "description": "Deletes a review."
                    }
                },
                {
                    "name": "Get System Settings",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/system-setting",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "system-setting"
                            ]
                        },
                        "description": "Returns public system settings, branding, and app version policies."
                    }
                },
                {
                    "name": "Check Force App Update",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/app-update/force",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "app-update",
                                "force"
                            ]
                        },
                        "description": "Checks if client app version requires a mandatory update."
                    }
                },
                {
                    "name": "Check Soft App Update",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/app-update/soft",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "app-update",
                                "soft"
                            ]
                        },
                        "description": "Checks if client app has an optional update available."
                    }
                }
            ]
        },
        {
            "name": "13. Support & Feedback",
            "item": [
                {
                    "name": "Contact Support",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/support/contact",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "support",
                                "contact"
                            ]
                        },
                        "description": "Sends a support request message.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"name\": \"John Doe\",\n    \"email\": \"{{test_email}}\",\n    \"subject\": \"Need help with Stage 2\",\n    \"message\": \"I have a question about minor thirds.\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Report a Bug",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/support/bug-report",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "support",
                                "bug-report"
                            ]
                        },
                        "description": "Submits a bug report with device diagnostics.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"title\": \"Audio playback issue\",\n    \"description\": \"Sound glitched during ear training quiz.\",\n    \"device_info\": \"Pixel 7, Android 14\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Suggest a Feature",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/support/feature-suggestion",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "support",
                                "feature-suggestion"
                            ]
                        },
                        "description": "Submits user feature suggestions.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"title\": \"MIDI Controller Support\",\n    \"description\": \"Please add support for USB MIDI keyboards.\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "14. Preferences & Cookies",
            "item": [
                {
                    "name": "Get User Preferences",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/preferences",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "preferences"
                            ]
                        },
                        "description": "Returns audio, notation, and app theme preferences."
                    }
                },
                {
                    "name": "Save User Preferences",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/preferences",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "preferences"
                            ]
                        },
                        "description": "Saves customized app preferences.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"theme\": \"dark\",\n    \"notation_type\": \"numbers\",\n    \"audio_volume\": 80\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get Cookie Settings",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cookie-settings-show",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cookie-settings-show"
                            ]
                        },
                        "description": "Fetches cookie and analytics consents."
                    }
                },
                {
                    "name": "Update Cookie Settings",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json",
                                "type": "text"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json",
                                "type": "text"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cookie-settings-update",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cookie-settings-update"
                            ]
                        },
                        "description": "Updates cookie consent flags.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"analytics\": true,\n    \"marketing\": false\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        }
    ]
}