{"info":{"_postman_id":"f62e570a-4617-494e-ba95-aa863d6dd01b","name":"Notes Search & Combined Queries API","description":"<html><head></head><body><p>Comprehensive API collection for Assignment 03, including basic CRUD, text search via regex, dual-concept combinations, triple-concept combinations, and the Master query endpoint.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"50841514","collectionId":"f62e570a-4617-494e-ba95-aa863d6dd01b","publishedId":"2sBXwqqA6C","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-06-05T16:24:12.000Z"},"item":[{"name":"1. CRUD Operations","item":[{"name":"Create Note (POST /api/notes)","id":"cdd28c00-bb89-4608-a3f4-716bbc8b8c0f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Work standup meeting\",\n  \"content\": \"Discuss deployment targets and hooks\",\n  \"category\": \"work\",\n  \"isPinned\": true\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes","description":"<p>Creates a single note. Title and Content are required.</p>\n","urlObject":{"path":["api","notes"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"c128f2e7-62fa-4500-aac4-c305f0967c15","name":"Create Note (POST /api/notes)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Work standup meeting\",\n  \"content\": \"Discuss deployment targets and hooks\",\n  \"category\": \"work\",\n  \"isPinned\": true\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"296"},{"key":"ETag","value":"W/\"128-PlKQdTdEUJ2wvqEpSw9qgW/R7XU\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:15:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Note created successfully\",\n    \"data\": {\n        \"title\": \"Work standup meeting\",\n        \"content\": \"Discuss deployment targets and hooks\",\n        \"category\": \"work\",\n        \"isPinned\": true,\n        \"_id\": \"6a22f614210eb626eaecce93\",\n        \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n        \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n        \"__v\": 0\n    }\n}"}],"_postman_id":"cdd28c00-bb89-4608-a3f4-716bbc8b8c0f"},{"name":"Create Bulk Notes (POST /api/notes/bulk)","id":"5a7209c8-708a-4cbb-afdd-3f258b6c5ab1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"notes\": [\n    { \"title\": \"Study Math notes\", \"content\": \"Solve algebra problems\", \"category\": \"study\", \"isPinned\": false },\n    { \"title\": \"Buy Groceries\", \"content\": \"Apples, Milk, Bread\", \"category\": \"personal\", \"isPinned\": false },\n    { \"title\": \"Work Code Review\", \"content\": \"Review PR #45\", \"category\": \"work\", \"isPinned\": true },\n    { \"title\": \"Study Node.js and MVC\", \"content\": \"Read model view controller chapter\", \"category\": \"study\", \"isPinned\": false },\n    { \"title\": \"Personal Workout\", \"content\": \"Go to gym for 1 hour\", \"category\": \"personal\", \"isPinned\": true }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/bulk","description":"<p>Bulk creates multiple notes at once.</p>\n","urlObject":{"path":["api","notes","bulk"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"dc9144a6-01f4-4bfa-a7b6-ea859534c950","name":"Create Bulk Notes (POST /api/notes/bulk)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"notes\": [\n    { \"title\": \"Study Math notes\", \"content\": \"Solve algebra problems\", \"category\": \"study\", \"isPinned\": false },\n    { \"title\": \"Buy Groceries\", \"content\": \"Apples, Milk, Bread\", \"category\": \"personal\", \"isPinned\": false },\n    { \"title\": \"Work Code Review\", \"content\": \"Review PR #45\", \"category\": \"work\", \"isPinned\": true },\n    { \"title\": \"Study Node.js and MVC\", \"content\": \"Read model view controller chapter\", \"category\": \"study\", \"isPinned\": false },\n    { \"title\": \"Personal Workout\", \"content\": \"Go to gym for 1 hour\", \"category\": \"personal\", \"isPinned\": true }\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/bulk"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1164"},{"key":"ETag","value":"W/\"48c-r1tZtzkOjh647B0NekG6B4x/Fvc\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:15:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"5 notes created successfully\",\n    \"data\": [\n        {\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        },\n        {\n            \"title\": \"Buy Groceries\",\n            \"content\": \"Apples, Milk, Bread\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"_id\": \"6a22f61d210eb626eaecce95\",\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"title\": \"Study Node.js and MVC\",\n            \"content\": \"Read model view controller chapter\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"_id\": \"6a22f61d210eb626eaecce97\",\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"5a7209c8-708a-4cbb-afdd-3f258b6c5ab1"},{"name":"Get All Notes (GET /api/notes)","id":"cf9614e9-f4b8-46b2-aee2-954fb59e9761","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes","description":"<p>Fetches all notes in the database.</p>\n","urlObject":{"path":["api","notes"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"1cffa2dd-37b4-488c-a311-73339b8580ef","name":"Get All Notes (GET /api/notes)","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2255"},{"key":"ETag","value":"W/\"8cf-lN32LmBGqiCliHue2PMZ5GwFlfk\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:15:33 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"count\": 10,\n    \"data\": [\n        {\n            \"_id\": \"6a22f25d8148eb0de7b5297a\",\n            \"title\": \"Team standup agenda\",\n            \"content\": \"Discuss sprint blockers and deployment plan\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T15:59:25.945Z\",\n            \"updatedAt\": \"2026-06-05T15:59:25.945Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297b\",\n            \"title\": \"Note one\",\n            \"content\": \"Content one\",\n            \"category\": \"work\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297c\",\n            \"title\": \"Note two\",\n            \"content\": \"Content two\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297d\",\n            \"title\": \"Note three\",\n            \"content\": \"Content three\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce95\",\n            \"title\": \"Buy Groceries\",\n            \"content\": \"Apples, Milk, Bread\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce97\",\n            \"title\": \"Study Node.js and MVC\",\n            \"content\": \"Read model view controller chapter\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"cf9614e9-f4b8-46b2-aee2-954fb59e9761"},{"name":"Get Note By ID (GET /api/notes/:id)","id":"7e613ef6-56a3-405f-9ac8-b152b0080f3b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/6a22da54051d959bbbf067f4","description":"<p>Fetches a single note using its MongoDB ObjectId.</p>\n","urlObject":{"path":["api","notes","6a22da54051d959bbbf067f4"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"0d12ed1c-c772-4e6c-8890-4a9bc88c05f7","name":"Get Note By ID (GET /api/notes/:id)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/?=6a22f614210eb626eaecce93","host":["http://localhost:5000"],"path":["api","notes",""],"query":[{"key":null,"value":"6a22f614210eb626eaecce93","type":"text"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2255"},{"key":"ETag","value":"W/\"8cf-lN32LmBGqiCliHue2PMZ5GwFlfk\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:16:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"count\": 10,\n    \"data\": [\n        {\n            \"_id\": \"6a22f25d8148eb0de7b5297a\",\n            \"title\": \"Team standup agenda\",\n            \"content\": \"Discuss sprint blockers and deployment plan\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T15:59:25.945Z\",\n            \"updatedAt\": \"2026-06-05T15:59:25.945Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297b\",\n            \"title\": \"Note one\",\n            \"content\": \"Content one\",\n            \"category\": \"work\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297c\",\n            \"title\": \"Note two\",\n            \"content\": \"Content two\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297d\",\n            \"title\": \"Note three\",\n            \"content\": \"Content three\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce95\",\n            \"title\": \"Buy Groceries\",\n            \"content\": \"Apples, Milk, Bread\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce97\",\n            \"title\": \"Study Node.js and MVC\",\n            \"content\": \"Read model view controller chapter\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"7e613ef6-56a3-405f-9ac8-b152b0080f3b"},{"name":"Replace Note Completely (PUT /api/notes/:id)","id":"76c223b1-44be-4c72-b46a-6d1f4b8ecf2e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Completely Replaced Agenda\",\n  \"content\": \"Omitted fields will reset to model defaults\",\n  \"category\": \"personal\",\n  \"isPinned\": false\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/6a22da54051d959bbbf067f4","description":"<p>Performs full resource replacement. Non-provided properties are reset to defaults.</p>\n","urlObject":{"path":["api","notes","6a22da54051d959bbbf067f4"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"6303f12d-1259-42bf-becf-73825783dcf0","name":"Replace Note Completely (PUT /api/notes/:id)","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"title\": \"Completely Replaced Agenda\",\n  \"content\": \"Omitted fields will reset to model defaults\",\n  \"category\": \"personal\",\n  \"isPinned\": false\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/6a22f6b7210eb626eaecce99"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"315"},{"key":"ETag","value":"W/\"13b-aiF4NulNrRqJn9eEojxkVrPNd2Y\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:18:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Note replaced successfully\",\n    \"data\": {\n        \"_id\": \"6a22f6b7210eb626eaecce99\",\n        \"title\": \"Completely Replaced Agenda\",\n        \"content\": \"Omitted fields will reset to model defaults\",\n        \"category\": \"personal\",\n        \"isPinned\": false,\n        \"createdAt\": \"2026-06-05T16:17:59.803Z\",\n        \"updatedAt\": \"2026-06-05T16:18:39.817Z\",\n        \"__v\": 0\n    }\n}"}],"_postman_id":"76c223b1-44be-4c72-b46a-6d1f4b8ecf2e"},{"name":"Update Note Partially (PATCH /api/notes/:id)","id":"2ab3166c-d614-4f68-a869-a4226f5d2e66","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"isPinned\": true\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/6a22da54051d959bbbf067f4","description":"<p>Performs partial modification of the note.</p>\n","urlObject":{"path":["api","notes","6a22da54051d959bbbf067f4"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"4d598d30-9a47-4411-bc8f-d80d25f75eb3","name":"Update Note Partially (PATCH /api/notes/:id)","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"isPinned\": true\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/6a22f6b7210eb626eaecce99"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"313"},{"key":"ETag","value":"W/\"139-kFnvVYtwXbkJx8e1JUECKvm8D6A\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:18:53 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Note updated successfully\",\n    \"data\": {\n        \"_id\": \"6a22f6b7210eb626eaecce99\",\n        \"title\": \"Completely Replaced Agenda\",\n        \"content\": \"Omitted fields will reset to model defaults\",\n        \"category\": \"personal\",\n        \"isPinned\": true,\n        \"createdAt\": \"2026-06-05T16:17:59.803Z\",\n        \"updatedAt\": \"2026-06-05T16:18:53.644Z\",\n        \"__v\": 0\n    }\n}"}],"_postman_id":"2ab3166c-d614-4f68-a869-a4226f5d2e66"},{"name":"Delete Note Single (DELETE /api/notes/:id)","id":"22cacd00-f8be-483a-a393-c4829766bb8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"http://localhost:5000/api/notes/6a22da54051d959bbbf067f4","description":"<p>Deletes a single note by ID.</p>\n","urlObject":{"path":["api","notes","6a22da54051d959bbbf067f4"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"2dfce902-32a3-42a2-b723-d68a5f1f67b0","name":"Delete Note Single (DELETE /api/notes/:id)","originalRequest":{"method":"DELETE","header":[],"url":"http://localhost:5000/api/notes/6a22f6b7210eb626eaecce99"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"66"},{"key":"ETag","value":"W/\"42-RW7uFP1XrWJWLEvic7cWVb1sNh0\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:22:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Note deleted successfully\",\n    \"data\": null\n}"}],"_postman_id":"22cacd00-f8be-483a-a393-c4829766bb8c"},{"name":"Delete Notes Bulk (DELETE /api/notes/bulk)","id":"3fab8df2-e737-4a6c-80ef-ee79ba5dd887","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"ids\": [\n    \"6a22da54051d959bbbf067f4\",\n    \"6a22da54051d959bbbf067f5\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/bulk","description":"<p>Deletes multiple notes specified in the ids array.</p>\n","urlObject":{"path":["api","notes","bulk"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"f6d32773-ec2d-4cf0-b11f-837fae951daa","name":"Delete Notes Bulk (DELETE /api/notes/bulk)","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"ids\": [\n    \"6a22da54051d959bbbf067f4\",\n    \"6a22da54051d959bbbf067f5\"\n  ]\n}","options":{"raw":{"language":"json"}}},"url":"http://localhost:5000/api/notes/bulk"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-+CDc0WsmCNdTvGevJcjlFwkf300\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:23:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"0 notes deleted successfully\",\n    \"data\": null\n}"}],"_postman_id":"3fab8df2-e737-4a6c-80ef-ee79ba5dd887"},{"name":"Get Note Summary (GET /api/notes/:id/summary)","id":"d82df663-06f9-45d6-9392-e66801423868","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/6a22da54051d959bbbf067f4/summary","description":"<p>Fetches note metadata excluding the main content body.</p>\n","urlObject":{"path":["api","notes","6a22da54051d959bbbf067f4","summary"],"host":["http://localhost:5000"],"query":[],"variable":[]}},"response":[{"id":"071e381a-2e27-49f7-9450-c1b9104854d1","name":"Get Note Summary (GET /api/notes/:id/summary)","originalRequest":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/6a22f6b7210eb626eaecce99/summary"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"218"},{"key":"ETag","value":"W/\"da-og6ePFUyYRRWw5a4D8qJxe+4mU4\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:19:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Note summary fetched successfully\",\n    \"data\": {\n        \"_id\": \"6a22f6b7210eb626eaecce99\",\n        \"title\": \"Completely Replaced Agenda\",\n        \"category\": \"personal\",\n        \"isPinned\": true,\n        \"createdAt\": \"2026-06-05T16:17:59.803Z\"\n    }\n}"}],"_postman_id":"d82df663-06f9-45d6-9392-e66801423868"}],"id":"97958ba6-4e0b-4d0d-abbc-1c89e910e2d9","_postman_id":"97958ba6-4e0b-4d0d-abbc-1c89e910e2d9","description":""},{"name":"2. Search Queries","item":[{"name":"Search Title Only (GET /api/notes/search)","id":"c7eb6e46-dd4d-48b5-9522-24dfa99c655f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/search?q=Study","description":"<p>Searches case-insensitively in the note title only.</p>\n","urlObject":{"path":["api","notes","search"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Required query text keyword</p>\n","type":"text/plain"},"key":"q","value":"Study"}],"variable":[]}},"response":[{"id":"ce1d7a13-0a4d-4d3e-8029-40b481a2b149","name":"Search Title Only (GET /api/notes/search)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/search?q=Study","host":["http://localhost:5000"],"path":["api","notes","search"],"query":[{"key":"q","value":"Study","description":"Required query text keyword"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"528"},{"key":"ETag","value":"W/\"210-i1kY3ZwwIMfv4urDuleShtBtWao\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:20:41 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Search results for: Study\",\n    \"count\": 2,\n    \"data\": [\n        {\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce97\",\n            \"title\": \"Study Node.js and MVC\",\n            \"content\": \"Read model view controller chapter\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"c7eb6e46-dd4d-48b5-9522-24dfa99c655f"},{"name":"Search Content Only (GET /api/notes/search/content)","id":"b0bf350d-08ca-405b-b66f-512d17ed91a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/search/content?q=algebra","description":"<p>Searches case-insensitively in the note content body only.</p>\n","urlObject":{"path":["api","notes","search","content"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Required query text keyword</p>\n","type":"text/plain"},"key":"q","value":"algebra"}],"variable":[]}},"response":[{"id":"46a6e9d7-2c31-4fca-a8be-ce69327f17eb","name":"Search Content Only (GET /api/notes/search/content)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/search/content?q=algebra","host":["http://localhost:5000"],"path":["api","notes","search","content"],"query":[{"key":"q","value":"algebra","description":"Required query text keyword"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"302"},{"key":"ETag","value":"W/\"12e-XjsMegdYPOFIxGtlY/ocL/QCHcM\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:20:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Content search results for: algebra\",\n    \"count\": 1,\n    \"data\": [\n        {\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        }\n    ]\n}"}],"_postman_id":"b0bf350d-08ca-405b-b66f-512d17ed91a8"},{"name":"Search Title and Content (GET /api/notes/search/all)","id":"19262a59-247c-4508-8c1f-2bf1eb552aed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/search/all?q=work","description":"<p>Searches case-insensitively in either title OR content fields using MongoDB $or.</p>\n","urlObject":{"path":["api","notes","search","all"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Required query text keyword</p>\n","type":"text/plain"},"key":"q","value":"work"}],"variable":[]}},"response":[{"id":"141f0fa8-3768-4b42-b947-d88a0e1d14cd","name":"Search Title and Content (GET /api/notes/search/all)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/search/all?q=work","host":["http://localhost:5000"],"path":["api","notes","search","all"],"query":[{"key":"q","value":"work","description":"Required query text keyword"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"734"},{"key":"ETag","value":"W/\"2de-IDjqcQox/tp9m1urVw0EdG42Woc\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:20:59 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Search results for: work\",\n    \"count\": 3,\n    \"data\": [\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"19262a59-247c-4508-8c1f-2bf1eb552aed"}],"id":"9f99025f-66ff-43f4-8c6a-39604c30229b","_postman_id":"9f99025f-66ff-43f4-8c6a-39604c30229b","description":""},{"name":"3. Two Concepts Combined","item":[{"name":"Filter and Sort (GET /api/notes/filter-sort)","id":"5353d9bc-0375-485c-98cf-caeb5b9ec0d8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/filter-sort?category=study&sortBy=title&order=asc","description":"<p>Applies query-parameter filters and sorts results.</p>\n","urlObject":{"path":["api","notes","filter-sort"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Optional category filter</p>\n","type":"text/plain"},"key":"category","value":"study"},{"disabled":true,"description":{"content":"<p>Optional pinning status filter</p>\n","type":"text/plain"},"key":"isPinned","value":"false"},{"description":{"content":"<p>Sort field (title, createdAt, updatedAt, category)</p>\n","type":"text/plain"},"key":"sortBy","value":"title"},{"description":{"content":"<p>Sort order (asc, desc)</p>\n","type":"text/plain"},"key":"order","value":"asc"}],"variable":[]}},"response":[{"id":"98322875-92d5-4d02-856a-9967a86a1d7d","name":"Filter and Sort (GET /api/notes/filter-sort)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/filter-sort?category=study&sortBy=title&order=asc","host":["http://localhost:5000"],"path":["api","notes","filter-sort"],"query":[{"key":"category","value":"study","description":"Optional category filter"},{"key":"isPinned","value":"false","description":"Optional pinning status filter","disabled":true},{"key":"sortBy","value":"title","description":"Sort field (title, createdAt, updatedAt, category)"},{"key":"order","value":"asc","description":"Sort order (asc, desc)"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"729"},{"key":"ETag","value":"W/\"2d9-lNaIBXeAEzuMPo1tZDPsYIPzGyg\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:21:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"count\": 3,\n    \"data\": [\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297c\",\n            \"title\": \"Note two\",\n            \"content\": \"Content two\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce94\",\n            \"title\": \"Study Math notes\",\n            \"content\": \"Solve algebra problems\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.714Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.714Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce97\",\n            \"title\": \"Study Node.js and MVC\",\n            \"content\": \"Read model view controller chapter\",\n            \"category\": \"study\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"5353d9bc-0375-485c-98cf-caeb5b9ec0d8"},{"name":"Filter and Paginate (GET /api/notes/filter-paginate)","id":"b0b23377-b892-4fa3-8809-eb4f5c0faf35","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/filter-paginate?isPinned=true&page=1&limit=2","description":"<p>Filters notes by query attributes and returns paginated results with page metadata.</p>\n","urlObject":{"path":["api","notes","filter-paginate"],"host":["http://localhost:5000"],"query":[{"disabled":true,"description":{"content":"<p>Optional category filter</p>\n","type":"text/plain"},"key":"category","value":"work"},{"description":{"content":"<p>Optional pinning status filter</p>\n","type":"text/plain"},"key":"isPinned","value":"true"},{"description":{"content":"<p>Page number (defaults to 1)</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Results per page (defaults to 10)</p>\n","type":"text/plain"},"key":"limit","value":"2"}],"variable":[]}},"response":[{"id":"ac63dffe-2d65-4bd3-830a-af4179c88293","name":"Filter and Paginate (GET /api/notes/filter-paginate)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/filter-paginate?isPinned=true&page=1&limit=2","host":["http://localhost:5000"],"path":["api","notes","filter-paginate"],"query":[{"key":"category","value":"work","description":"Optional category filter","disabled":true},{"key":"isPinned","value":"true","description":"Optional pinning status filter"},{"key":"page","value":"1","description":"Page number (defaults to 1)"},{"key":"limit","value":"2","description":"Results per page (defaults to 10)"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"638"},{"key":"ETag","value":"W/\"27e-m+dq9yWOzaOfueZz4Td9Xxzyo5A\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:21:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"data\": [\n        {\n            \"_id\": \"6a22f25d8148eb0de7b5297a\",\n            \"title\": \"Team standup agenda\",\n            \"content\": \"Discuss sprint blockers and deployment plan\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T15:59:25.945Z\",\n            \"updatedAt\": \"2026-06-05T15:59:25.945Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        }\n    ],\n    \"pagination\": {\n        \"total\": 5,\n        \"page\": 1,\n        \"limit\": 2,\n        \"totalPages\": 3,\n        \"hasNextPage\": true,\n        \"hasPrevPage\": false\n    }\n}"}],"_postman_id":"b0b23377-b892-4fa3-8809-eb4f5c0faf35"},{"name":"Sort and Paginate (GET /api/notes/sort-paginate)","id":"6aa1edcf-8140-48b7-a97a-0dcc44d0c25b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/sort-paginate?sortBy=title&order=asc&page=1&limit=4","description":"<p>Sorts the whole list of notes and paginates the output.</p>\n","urlObject":{"path":["api","notes","sort-paginate"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Sort field</p>\n","type":"text/plain"},"key":"sortBy","value":"title"},{"description":{"content":"<p>Sort order (asc, desc)</p>\n","type":"text/plain"},"key":"order","value":"asc"},{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Results limit</p>\n","type":"text/plain"},"key":"limit","value":"4"}],"variable":[]}},"response":[{"id":"b6c73582-f394-4019-8be0-29cf06e50fb2","name":"Sort and Paginate (GET /api/notes/sort-paginate)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/sort-paginate?sortBy=title&order=asc&page=1&limit=4","host":["http://localhost:5000"],"path":["api","notes","sort-paginate"],"query":[{"key":"sortBy","value":"title","description":"Sort field"},{"key":"order","value":"asc","description":"Sort order (asc, desc)"},{"key":"page","value":"1","description":"Page number"},{"key":"limit","value":"4","description":"Results limit"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1037"},{"key":"ETag","value":"W/\"40d-WHd6wsQ+ldiaifJNOuDwAmUuIMc\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:21:35 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"data\": [\n        {\n            \"_id\": \"6a22f61d210eb626eaecce95\",\n            \"title\": \"Buy Groceries\",\n            \"content\": \"Apples, Milk, Bread\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f6b7210eb626eaecce99\",\n            \"title\": \"Completely Replaced Agenda\",\n            \"content\": \"Omitted fields will reset to model defaults\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:17:59.803Z\",\n            \"updatedAt\": \"2026-06-05T16:18:53.644Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297b\",\n            \"title\": \"Note one\",\n            \"content\": \"Content one\",\n            \"category\": \"work\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297d\",\n            \"title\": \"Note three\",\n            \"content\": \"Content three\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        }\n    ],\n    \"pagination\": {\n        \"total\": 11,\n        \"page\": 1,\n        \"limit\": 4,\n        \"totalPages\": 3,\n        \"hasNextPage\": true,\n        \"hasPrevPage\": false\n    }\n}"}],"_postman_id":"6aa1edcf-8140-48b7-a97a-0dcc44d0c25b"},{"name":"Search and Filter (GET /api/notes/search-filter)","id":"622bc5cd-a300-4174-b809-7099e1ebdac7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/search-filter?q=work&isPinned=true","description":"<p>Searches notes matching a query word, and filters results concurrently.</p>\n","urlObject":{"path":["api","notes","search-filter"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Required search keyword</p>\n","type":"text/plain"},"key":"q","value":"work"},{"disabled":true,"description":{"content":"<p>Optional category filter</p>\n","type":"text/plain"},"key":"category","value":"work"},{"description":{"content":"<p>Optional pinning status filter</p>\n","type":"text/plain"},"key":"isPinned","value":"true"}],"variable":[]}},"response":[{"id":"dbb2ef16-11e9-4d70-bd8d-75040336096b","name":"Search and Filter (GET /api/notes/search-filter)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/search-filter?q=work&isPinned=true","host":["http://localhost:5000"],"path":["api","notes","search-filter"],"query":[{"key":"q","value":"work","description":"Required search keyword"},{"key":"category","value":"work","description":"Optional category filter","disabled":true},{"key":"isPinned","value":"true","description":"Optional pinning status filter"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"734"},{"key":"ETag","value":"W/\"2de-IDjqcQox/tp9m1urVw0EdG42Woc\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:21:46 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Search results for: work\",\n    \"count\": 3,\n    \"data\": [\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ]\n}"}],"_postman_id":"622bc5cd-a300-4174-b809-7099e1ebdac7"}],"id":"69559034-3545-4892-94eb-4e390dc94355","_postman_id":"69559034-3545-4892-94eb-4e390dc94355","description":""},{"name":"4. Combined Queries (Three Concepts)","item":[{"name":"Search, Sort and Paginate (GET /api/notes/search-sort-paginate)","id":"956736f7-b12e-4627-be5a-0dc3b42f5dff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/search-sort-paginate?q=work&sortBy=title&order=desc&page=1&limit=2","description":"<p>Performs keyword search, sorts findings, and applies pagination offsets.</p>\n","urlObject":{"path":["api","notes","search-sort-paginate"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Required search keyword</p>\n","type":"text/plain"},"key":"q","value":"work"},{"description":{"content":"<p>Sort field</p>\n","type":"text/plain"},"key":"sortBy","value":"title"},{"description":{"content":"<p>Sort order</p>\n","type":"text/plain"},"key":"order","value":"desc"},{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page limit</p>\n","type":"text/plain"},"key":"limit","value":"2"}],"variable":[]}},"response":[{"id":"a98734fc-91a3-4a10-9f71-9afce26a19a4","name":"Search, Sort and Paginate (GET /api/notes/search-sort-paginate)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/search-sort-paginate?q=work&sortBy=title&order=desc&page=1&limit=2","host":["http://localhost:5000"],"path":["api","notes","search-sort-paginate"],"query":[{"key":"q","value":"work","description":"Required search keyword"},{"key":"sortBy","value":"title","description":"Sort field"},{"key":"order","value":"desc","description":"Sort order"},{"key":"page","value":"1","description":"Page number"},{"key":"limit","value":"2","description":"Page limit"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"603"},{"key":"ETag","value":"W/\"25b-v1fK4dRhHYq77R8FUlCPtxwmrBo\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:22:01 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Search results for: work\",\n    \"data\": [\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce96\",\n            \"title\": \"Work Code Review\",\n            \"content\": \"Review PR #45\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ],\n    \"pagination\": {\n        \"total\": 3,\n        \"page\": 1,\n        \"limit\": 2,\n        \"totalPages\": 2,\n        \"hasNextPage\": true,\n        \"hasPrevPage\": false\n    }\n}"}],"_postman_id":"956736f7-b12e-4627-be5a-0dc3b42f5dff"},{"name":"Filter, Sort and Paginate (GET /api/notes/filter-sort-paginate)","id":"b8aac959-d244-43b1-b555-5a28fd1a240a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/filter-sort-paginate?category=personal&sortBy=title&order=desc&page=1&limit=5","description":"<p>Combines dynamic filters, sorting criteria, and pagination in a single API.</p>\n","urlObject":{"path":["api","notes","filter-sort-paginate"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Optional category filter</p>\n","type":"text/plain"},"key":"category","value":"personal"},{"disabled":true,"description":{"content":"<p>Optional pinning status filter</p>\n","type":"text/plain"},"key":"isPinned","value":"true"},{"description":{"content":"<p>Sort field</p>\n","type":"text/plain"},"key":"sortBy","value":"title"},{"description":{"content":"<p>Sort direction</p>\n","type":"text/plain"},"key":"order","value":"desc"},{"description":{"content":"<p>Page number</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Page limit</p>\n","type":"text/plain"},"key":"limit","value":"5"}],"variable":[]}},"response":[{"id":"262ee490-0d11-4285-9520-206792385224","name":"Filter, Sort and Paginate (GET /api/notes/filter-sort-paginate)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/filter-sort-paginate?category=personal&sortBy=title&order=desc&page=1&limit=5","host":["http://localhost:5000"],"path":["api","notes","filter-sort-paginate"],"query":[{"key":"category","value":"personal","description":"Optional category filter"},{"key":"isPinned","value":"true","description":"Optional pinning status filter","disabled":true},{"key":"sortBy","value":"title","description":"Sort field"},{"key":"order","value":"desc","description":"Sort direction"},{"key":"page","value":"1","description":"Page number"},{"key":"limit","value":"5","description":"Page limit"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1057"},{"key":"ETag","value":"W/\"421-mwQXJSSAsj0lzB2QCzAuuJ1G2tg\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:22:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"data\": [\n        {\n            \"_id\": \"6a22f61d210eb626eaecce98\",\n            \"title\": \"Personal Workout\",\n            \"content\": \"Go to gym for 1 hour\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        },\n        {\n            \"_id\": \"6a22f25e8148eb0de7b5297d\",\n            \"title\": \"Note three\",\n            \"content\": \"Content three\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T15:59:26.280Z\",\n            \"updatedAt\": \"2026-06-05T15:59:26.280Z\"\n        },\n        {\n            \"_id\": \"6a22f6b7210eb626eaecce99\",\n            \"title\": \"Completely Replaced Agenda\",\n            \"content\": \"Omitted fields will reset to model defaults\",\n            \"category\": \"personal\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:17:59.803Z\",\n            \"updatedAt\": \"2026-06-05T16:18:53.644Z\",\n            \"__v\": 0\n        },\n        {\n            \"_id\": \"6a22f61d210eb626eaecce95\",\n            \"title\": \"Buy Groceries\",\n            \"content\": \"Apples, Milk, Bread\",\n            \"category\": \"personal\",\n            \"isPinned\": false,\n            \"__v\": 0,\n            \"createdAt\": \"2026-06-05T16:15:25.715Z\",\n            \"updatedAt\": \"2026-06-05T16:15:25.715Z\"\n        }\n    ],\n    \"pagination\": {\n        \"total\": 4,\n        \"page\": 1,\n        \"limit\": 5,\n        \"totalPages\": 1,\n        \"hasNextPage\": false,\n        \"hasPrevPage\": false\n    }\n}"}],"_postman_id":"b8aac959-d244-43b1-b555-5a28fd1a240a"}],"id":"81327e28-cac6-44fb-8aa4-42b896633cf6","_postman_id":"81327e28-cac6-44fb-8aa4-42b896633cf6","description":""},{"name":"5. Master Query Endpoint","item":[{"name":"Master Query (GET /api/notes/query)","id":"ad8826dc-36e7-4e9e-b28f-710ac59a690a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:5000/api/notes/query?q=meeting&category=work&isPinned=true&sortBy=title&order=desc&page=1&limit=3","description":"<p>The ultimate query endpoint. Combines Search, Filtering, Sorting, and Pagination. All parameters are optional.</p>\n","urlObject":{"path":["api","notes","query"],"host":["http://localhost:5000"],"query":[{"description":{"content":"<p>Optional search query</p>\n","type":"text/plain"},"key":"q","value":"meeting"},{"description":{"content":"<p>Optional category filter</p>\n","type":"text/plain"},"key":"category","value":"work"},{"description":{"content":"<p>Optional pinning filter</p>\n","type":"text/plain"},"key":"isPinned","value":"true"},{"description":{"content":"<p>Optional sorting field</p>\n","type":"text/plain"},"key":"sortBy","value":"title"},{"description":{"content":"<p>Optional sorting order</p>\n","type":"text/plain"},"key":"order","value":"desc"},{"description":{"content":"<p>Optional page index</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Optional results limit</p>\n","type":"text/plain"},"key":"limit","value":"3"}],"variable":[]}},"response":[{"id":"5a26f81b-a938-4ba7-a86c-24dd2e3674f3","name":"Master Query (GET /api/notes/query)","originalRequest":{"method":"GET","header":[],"url":{"raw":"http://localhost:5000/api/notes/query?q=meeting&category=work&isPinned=true&sortBy=title&order=desc&page=1&limit=3","host":["http://localhost:5000"],"path":["api","notes","query"],"query":[{"key":"q","value":"meeting","description":"Optional search query"},{"key":"category","value":"work","description":"Optional category filter"},{"key":"isPinned","value":"true","description":"Optional pinning filter"},{"key":"sortBy","value":"title","description":"Optional sorting field"},{"key":"order","value":"desc","description":"Optional sorting order"},{"key":"page","value":"1","description":"Optional page index"},{"key":"limit","value":"3","description":"Optional results limit"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"398"},{"key":"ETag","value":"W/\"18e-4Qy7PEmVaTmXigDVpSNfdWjG1MM\""},{"key":"Date","value":"Fri, 05 Jun 2026 16:22:27 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true,\n    \"message\": \"Notes fetched successfully\",\n    \"data\": [\n        {\n            \"_id\": \"6a22f614210eb626eaecce93\",\n            \"title\": \"Work standup meeting\",\n            \"content\": \"Discuss deployment targets and hooks\",\n            \"category\": \"work\",\n            \"isPinned\": true,\n            \"createdAt\": \"2026-06-05T16:15:16.516Z\",\n            \"updatedAt\": \"2026-06-05T16:15:16.516Z\",\n            \"__v\": 0\n        }\n    ],\n    \"pagination\": {\n        \"total\": 1,\n        \"page\": 1,\n        \"limit\": 3,\n        \"totalPages\": 1,\n        \"hasNextPage\": false,\n        \"hasPrevPage\": false\n    }\n}"}],"_postman_id":"ad8826dc-36e7-4e9e-b28f-710ac59a690a"}],"id":"8bfc521e-68e2-40b7-b977-9271f7dfdc80","_postman_id":"8bfc521e-68e2-40b7-b977-9271f7dfdc80","description":""}],"event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":[""],"id":"a2686ec5-0bfe-4121-acd3-f09cf961cddd"}},{"listen":"test","script":{"type":"text/javascript","exec":[""],"id":"7a6d99cf-8194-4c2c-8d38-26c8b0675888"}}],"variable":[{"key":"base_url","value":"http://localhost:5000"}]}