Currently deployed on free version of Vercel...
~60s
This project is built as a backend-focused assessment for Zorvyn. It demonstrates a role-based finance management system with multiple APIs. Users can manage transactions, view summaries, and control access for viewers and managers. The platform showcases secure, scalable backend architecture with real-world features.

Use this endpoint to create a new user account. Provide name, email, and password. Email should be completely new
https://backend-assessment-u4zg.onrender.com/api/auth/registerIf exsting email is used, it will return message 'Email already exists'
https://backend-assessment-u4zg.onrender.com/api/auth/registerUse this endpoint to login a user with email and password. Returns an authentication token on success.
https://backend-assessment-u4zg.onrender.com/api/auth/loginIf login password is wrong, it returns 'Invalid Password'
https://backend-assessment-u4zg.onrender.com/api/auth/loginIf login email doesn't exist, it returns 'user not found'
https://backend-assessment-u4zg.onrender.com/api/auth/loginUse this endpoint to change a user's password. Provide oldPassword and newPassword.
https://backend-assessment-u4zg.onrender.com/api/auth/change-passwordIf old password is incorrect, it returns 'Old password is incorrect'
https://backend-assessment-u4zg.onrender.com/api/auth/change-passwordIf new password is the same as the old password, it returns 'New password cannot be the same as old password'
https://backend-assessment-u4zg.onrender.com/api/auth/change-passwordUse this endpoint to get the role of the currently authenticated user.
https://backend-assessment-u4zg.onrender.com/api/auth/getroleUse this endpoint to get all information about the currently authenticated user.
https://backend-assessment-u4zg.onrender.com/api/auth/getmyinfoUser sees its all transactions
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to create a new transaction for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to add a new viewer by email for the user by user.
https://backend-assessment-u4zg.onrender.com/api/users/add-viewerIf Viewer is already added for that user, it cannot be added again.
https://backend-assessment-u4zg.onrender.com/api/users/add-viewerManager, USER & Admin cannot be added as Viewer for any user.
https://backend-assessment-u4zg.onrender.com/api/users/add-viewerUse this endpoint to fetch all viewers of the user.
https://backend-assessment-u4zg.onrender.com/api/users/viewersUse this endpoint to fetch the summary of transactions (income, expense, net balance) for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/summary/getsummaryUse this endpoint to fetch the summary of transactions grouped by category for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summaryUpdate your own transaction. Only the owner can update it. You can change amount, type, category, note, or date.
https://backend-assessment-u4zg.onrender.com/api/transactions/69d4ad026619648116a37f49ADMIN, MANAGER, VIEWER can not update any transaction. USER can only update their own transaction.
https://backend-assessment-u4zg.onrender.com/api/transactions/69d4ad026619648116a37f49Soft delete your own transaction. Only the owner can delete a transaction. Provide the transaction ID in the endpoint.
https://backend-assessment-u4zg.onrender.com/api/transactions/69d4ccecd0a649bf5cb59c44ADMIN, MANAGER, VIEWER can not delete any transaction. USER can only delete their own transaction.
https://backend-assessment-u4zg.onrender.com/api/transactions/69d4ccecd0a649bf5cb59c44Fetch transactions with pagination. Provide page number and limit as query parameters. Example: /transactions/paginated?page=1&limit=10
https://backend-assessment-u4zg.onrender.com/api/transactions/paginated?page=1&limit=10Viewer sees all transactions of the user it is added to
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to create a new transaction for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to fetch the summary of transactions grouped by category for all users assigned to the Viewer.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summaryUse this endpoint to fetch the summary of transactions grouped by category for a specific viewer user. This endpoint is accessible to manager users and provides insights into the spending habits of individual viewers.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summary-by-userUse this endpoint to fetch all users who have granted access to the logged-in viewer.
https://backend-assessment-u4zg.onrender.com/api/users/assigned-usersManager sees all transactions of all users assigned
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to create a new transaction for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/transactionsManager can fetch deleted transactions of assigned users only.
https://backend-assessment-u4zg.onrender.com/api/transactions/deletedUse this endpoint to fetch all viewers of the manager's users.
https://backend-assessment-u4zg.onrender.com/api/users/viewersUse this endpoint to fetch the summary of transactions grouped by category for all users assigned to the Manager.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summaryUse this endpoint to fetch the summary of transactions grouped by category for a specific viewer user.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summary-by-userAdmin sees all transactions of all users
https://backend-assessment-u4zg.onrender.com/api/transactionsUse this endpoint to create a new transaction for the authenticated user.
https://backend-assessment-u4zg.onrender.com/api/transactionsAdmin can fetch all deleted transactions for all users.
https://backend-assessment-u4zg.onrender.com/api/transactions/deletedUse this endpoint to fetch the summary of transactions grouped by category for all users assigned to the Manager.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summaryUse this endpoint to fetch the summary of transactions grouped by category for a specific viewer user. This endpoint is accessible to admin users and provides insights into the spending habits of individual viewers.
https://backend-assessment-u4zg.onrender.com/api/summary/get-categories-summary-by-userFetch all users with role USER (Admin only)
https://backend-assessment-u4zg.onrender.com/api/admin/getallusersFetch users who are not assigned to any manager
https://backend-assessment-u4zg.onrender.com/api/admin/get-users-without-managerCreate a new manager account (Admin only)
https://backend-assessment-u4zg.onrender.com/api/admin/create-managerAssign a manager to a user (Admin only)
https://backend-assessment-u4zg.onrender.com/api/admin/assign-managerCan not assign two or more managers to a user. If a user already has a manager.
https://backend-assessment-u4zg.onrender.com/api/admin/assign-managerFetch all users with role MANAGER
https://backend-assessment-u4zg.onrender.com/api/admin/getallmanagersFetch all managers along with their assigned users
https://backend-assessment-u4zg.onrender.com/api/admin/get-managers-with-usersSearch users by name or email (partial match, admin only)
https://backend-assessment-u4zg.onrender.com/api/admin/search-users?query=pr