{"info":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","description":"<html><head></head><body><h1 id=\"welcome-to-the-taskflow-task-management-system-api-documentation\">Welcome to the TaskFlow Task Management System API documentation.</h1>\n<h3 id=\"this-guide-provides-comprehensive-documentation-for-developers-looking-to-integrate-taskflows-task-management-functionalities-into-their-applications\">This guide provides comprehensive documentation for developers looking to integrate TaskFlow's task management functionalities into their applications.</h3>\n<h2 id=\"introduction\">Introduction</h2>\n<p>TaskFlow API offers a suite of endpoints to manage users, boards, lists, cards, members, labels, attachments, due dates, checklists, and comments. This documentation outlines each endpoint's functionality and provides examples to facilitate integration.</p>\n<h2 id=\"authentication\">Authentication</h2>\n<p>To access TaskFlow API endpoints, users must authenticate using API tokens. Upon login, users receive an API token that must be included in the request headers for authentication.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Welcome to the TaskFlow Task Management System API documentation.","slug":"welcome-to-the-taskflow-task-management-system-api-documentation"}],"owner":"34110602","collectionId":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","publishedId":"2sA3XJkQ2z","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2024-06-21T14:26:38.000Z"},"item":[{"name":"User","item":[{"name":"Register User","id":"239010a3-83cf-4444-9506-5cc50801b347","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register","description":"<p>This <code>POST</code> request is used to register a new user.</p>\n<p><strong>URL :</strong> <code>localhost:port/api/user/register</code></p>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>name</code> (string, required): The first name of the user.</p>\n</li>\n<li><p><code>surname</code> (string, required): The last name of the user.</p>\n</li>\n<li><p><code>email</code> (string, required): The email address of the user.</p>\n</li>\n<li><p><code>password</code> (string, required): The password for the user account.</p>\n</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}},"urlObject":{"port":"3000","path":["api","user","register"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"5e237200-cf3f-4246-8ca4-f6c695764016","name":"Success code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register"},"status":"Created","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"40"},{"key":"ETag","value":"W/\"28-OAfJ95yOSJy1hNASoGAtoPBm08A\""},{"key":"Date","value":"Sun, 26 May 2024 17:04:41 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User created Successfully!\"\n}"},{"id":"1ee4d071-3990-4265-b9ec-94aea68ae065","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"32"},{"key":"ETag","value":"W/\"20-EdgUKVZPHFGnJrFF0lsGT1eOqV8\""},{"key":"Date","value":"Sun, 26 May 2024 17:24:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Fields are missing\"\n}"},{"id":"7dd8de27-4e14-437b-9188-9ff0e29b626d","name":"User Already Exisitng","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"33"},{"key":"ETag","value":"W/\"21-iGErLku/9taeeOQN+9qwFgLXnuo\""},{"key":"Date","value":"Sun, 26 May 2024 18:11:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User already exists\"\n}"},{"id":"0965e81d-17a1-4f08-9246-51085660a8c5","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"50"},{"key":"ETag","value":"W/\"32-FeBMVAnkzn0wg9X5Jp7KOQCkoGQ\""},{"key":"Date","value":"Sun, 26 May 2024 17:30:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred Registering a user\"\n}"},{"id":"6928cddd-ef19-4c50-8332-70200e42d56b","name":"User Already Existing","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"user\",\r\n    \"surname\": \"surname\",\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/register"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"49"},{"key":"ETag","value":"W/\"31-kAANIpXFuQ6I53ZbDDsMLt8aPOU\""},{"key":"Date","value":"Fri, 07 Jun 2024 01:52:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User with this email already exists\"\n}"}],"_postman_id":"239010a3-83cf-4444-9506-5cc50801b347"},{"name":"Login User","id":"12469512-c9d5-4c8f-9484-f4a3f81f8f50","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/login","description":"<p>This <code>POST</code> request is used to user login to the server</p>\n<p><strong>URL</strong> : <code>localhost:port/api/user/login</code></p>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p>email (text, required): The email address of the user.</p>\n</li>\n<li><p>password (text, required): The password of the user.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","user","login"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"3831b7c3-e043-490f-9f50-05cac7708c9b","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user12346\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"381"},{"key":"ETag","value":"W/\"17d-rbfXt3gvXjSfLvFqA3rF3ejf+yE\""},{"key":"Date","value":"Sun, 26 May 2024 18:13:03 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User login successful\",\n    \"user\": {\n        \"_id\": \"6653723cb73e2f469ba88c32\",\n        \"name\": \"user\",\n        \"surname\": \"surname\",\n        \"email\": \"user@gmail.com\",\n        \"color\": \"#FA3FF0\",\n        \"boards\": [],\n        \"token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY2NTM3MjNjYjczZTJmNDY5YmE4OGMzMiIsImVtYWlsIjoidXNlckBnbWFpbC5jb20iLCJpYXQiOjE3MTY3NDcxODMsImV4cCI6MTcxNjgzMzU4M30.iKuXqpfInyYd1S4HKyk9wsPH0DpS-o1YHwAboHFKSCE\"\n    }\n}"},{"id":"be867d86-cbb7-4b3e-aaa0-33c91291d1ec","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user12346\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/login"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"42"},{"key":"ETag","value":"W/\"2a-8JiXOiiTFVKa/dfXL1HUEd8HqsE\""},{"key":"Date","value":"Sun, 26 May 2024 18:14:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Email/Password is incorrect \"\n}"},{"id":"b5e33c78-390c-4129-abdd-6e2486327ccc","name":"User Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"email\" : \"user@gmail.com\",\r\n    \"password\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/login"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"48"},{"key":"ETag","value":"W/\"30-Filt0y4YOBeeWJfwluBZIZAwn8w\""},{"key":"Date","value":"Sun, 26 May 2024 18:18:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred While User login\"\n}"}],"_postman_id":"12469512-c9d5-4c8f-9484-f4a3f81f8f50"},{"name":"Get User Details","id":"d8c2ebdf-7802-435f-94f8-471f4b1082c3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"localhost:3000/api/user/get-user/664a4b2cc440f8f3e55f329e","description":"<p>This endpoint makes an HTTP GET request to retrieve user information based on the provided user ID. The request should include the user ID in the URL path.</p>\n<p><strong>URL</strong> : <code>localhost:port/api/user/get-user/ {user_id}</code></p>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>user_id</code> (string, required): The unique identifier of the user.</li>\n</ul>\n<h3 id=\"response\">Response</h3>\n<p>The response will include sanitized user details excluding sensitive information such as the password and internal versioning.The response body will contain the following fields:</p>\n<ul>\n<li><p><code>id</code> (string): The user's ID.</p>\n</li>\n<li><p><code>email</code> (string): The user's email address.</p>\n</li>\n<li><p><code>name</code> (string): The user's name.</p>\n</li>\n<li><p><code>color</code> (string): The user's favorite color.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","user","get-user","664a4b2cc440f8f3e55f329e"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"8f724c3f-4333-4879-a744-eea34ff4e3a5","name":"Success Code","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/user/get-user/6653723cb73e2f469ba88c32"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"90"},{"key":"ETag","value":"W/\"5a-W3/AULmpMcbxcPsTIltByObAKoA\""},{"key":"Date","value":"Sun, 26 May 2024 18:22:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"6653723cb73e2f469ba88c32\",\n    \"email\": \"user@gmail.com\",\n    \"name\": \"user\",\n    \"color\": \"#FA3FF0\"\n}"},{"id":"7f8c01c1-7c84-42a3-90d8-3d4864f386ad","name":"Unauthorized Error","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/user/get-user/6653723cb73e2f469ba88c32"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-YZeaNEWHjNz+Q+6hzFwSfOjk83c\""},{"key":"Date","value":"Sun, 26 May 2024 18:22:56 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt malformed\"\n}"},{"id":"e962ece6-2250-4258-9e2f-cc8c8edfca76","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/user/get-user/6653723cb73e2f469ba88c"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"60"},{"key":"ETag","value":"W/\"3c-Vh3O0zGFdxsbrqiv6cODnFM7ZhA\""},{"key":"Date","value":"Sun, 26 May 2024 18:23:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while fetching user details.\"\n}"},{"id":"4e95bc15-72fd-46ea-bc06-a2c783b32e87","name":"Bad Request","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/user/get-user/invalidUserId"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"28"},{"key":"ETag","value":"W/\"1c-ZEVVcvtFhxKX/QUvVKqKxwGbbNA\""},{"key":"Date","value":"Sun, 26 May 2024 18:35:45 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User not found\"\n}"}],"_postman_id":"d8c2ebdf-7802-435f-94f8-471f4b1082c3"},{"name":"Get User with Email","id":"2ddf4d61-839b-4ac1-9324-c8db8a1bfbc4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \r\n    \"email\" : \"admin@gmail.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/get-user-with-email","description":"<p>This endpoint makes an HTTP <code>POST</code> request to retrieve user information based on the provided email.</p>\n<p><strong>URL</strong> : <code>localhost:port/api/user/get-user-with-email</code></p>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><code>email</code> (string, required): The email of the user for whom the information is to be retrieved.</li>\n</ul>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n<h3 id=\"response\">Response</h3>\n<p>The response will include sanitized user details excluding sensitive information such as the password and internal versioning.The response body will contain the following fields:</p>\n<ul>\n<li><p><code>email</code> (string): The user's email address.</p>\n</li>\n<li><p><code>name</code> (string): The user's name.</p>\n</li>\n<li><p><code>surname</code> (string, required): The last name of the user.</p>\n</li>\n<li><p><code>color</code> (string): The user's favorite color.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","user","get-user-with-email"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"60af9bb0-ea7f-402c-aaa0-f5ddaa26752c","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \r\n    \"email\" : \"user@gmail.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/get-user-with-email"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"78"},{"key":"ETag","value":"W/\"4e-/aHkUIduC/x0yrLFWf+qLFgKWuc\""},{"key":"Date","value":"Sun, 26 May 2024 18:37:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"name\": \"user\",\n    \"surname\": \"surname\",\n    \"color\": \"#FA3FF0\",\n    \"email\": \"user@gmail.com\"\n}"},{"id":"e3f4844e-e453-48c2-b8d9-c16ed34c7237","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \r\n    \"email\" : \"user@gmail.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/get-user-with-email"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-YZeaNEWHjNz+Q+6hzFwSfOjk83c\""},{"key":"Date","value":"Sun, 26 May 2024 18:37:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt malformed\"\n}"},{"id":"9eeeb767-18c0-48ad-903f-cbaddf1d73b0","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/get-user-with-email"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"34"},{"key":"ETag","value":"W/\"22-9QcDwQyRUlY5Wbeb8hre6WlqcoY\""},{"key":"Date","value":"Sun, 26 May 2024 18:39:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Email not found \"\n}"},{"id":"14b73e43-e8e7-469c-a235-530db713b612","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \r\n    \"email\" : \"user@gmail.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/user/get-user-with-email"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"60"},{"key":"ETag","value":"W/\"3c-Vh3O0zGFdxsbrqiv6cODnFM7ZhA\""},{"key":"Date","value":"Sun, 26 May 2024 18:40:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while fetching user details.\"\n}"}],"_postman_id":"2ddf4d61-839b-4ac1-9324-c8db8a1bfbc4"}],"id":"633ccc5f-1522-4139-a0e9-8ba3bbada777","description":"<p>This API provides endpoints for user registration, authentication, and retrieving user details. It facilitates essential user management functionalities needed in most applications. Below is an overview of the key functions:</p>\n<h4 id=\"1-user-registration\">1. User Registration</h4>\n<ul>\n<li><strong>Endpoint:</strong> <code>POST /api/register</code></li>\n<li><strong>Function:</strong> Allows new users to create an account by providing their name, email, and password. This endpoint ensures that each user has a unique email.</li>\n</ul>\n<h4 id=\"2-user-login\">2. User Login</h4>\n<ul>\n<li><strong>Endpoint:</strong> <code>POST /api/login</code></li>\n<li><strong>Function:</strong> Authenticates users by verifying their email and password. Upon successful login, an authentication token is provided, which is required for accessing protected resources.</li>\n</ul>\n<h4 id=\"3-get-user-details-by-id\">3. Get User Details by ID</h4>\n<ul>\n<li><strong>Endpoint:</strong> <code>GET /api/get-user/{id}</code></li>\n<li><strong>Function:</strong> Retrieves detailed information of a user based on their unique ID. This endpoint is useful for obtaining user details for profile viewing or administrative purposes.</li>\n<li><strong>Authorization:</strong> Requires a valid authentication token to ensure the user is logged in.</li>\n</ul>\n<h4 id=\"4-get-user-details-by-email\">4. Get User Details by Email</h4>\n<ul>\n<li><strong>Endpoint:</strong> <code>GET /api/get-user-with-email/{email}</code></li>\n<li><strong>Function:</strong> Fetches user details using their email address. This can be used to confirm if an email is associated with a registered user or to retrieve specific user information.</li>\n<li><strong>Authorization:</strong> Requires a valid authentication token to ensure the user is logged in.</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<ol>\n<li><strong>User Onboarding:</strong><ul>\n<li>New users can register using the <code>/api/register</code> endpoint.</li>\n<li>Upon registration, users can log in via the <code>/api/login</code> endpoint to receive an authentication token.</li>\n</ul>\n</li>\n<li><strong>User Authentication:</strong><ul>\n<li>Existing users can log in and obtain an authentication token, which is necessary for accessing other protected endpoints in the application.</li>\n</ul>\n</li>\n<li><strong>User Information Retrieval:</strong><ul>\n<li>Retrieve user details by their unique ID using the <code>/api/get-user/{id}</code> endpoint, useful for profile management or admin tasks.</li>\n<li>Retrieve user details by email using the <code>/api/get-user-with-email/{email}</code> endpoint, useful for checking if an email is already registered or for quick user lookup.</li>\n</ul>\n</li>\n</ol>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens should be securely stored and included in the header of requests to protected endpoints to ensure only authenticated users can access sensitive information.</p>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><strong>200 OK:</strong> Successful operation.</li>\n<li><strong>400 Bad Request:</strong> Invalid input or missing parameters.</li>\n<li><strong>401 Unauthorized:</strong> Authentication failure.</li>\n<li><strong>404 Not Found:</strong> Resource not found.</li>\n<li><strong>500 Internal Server Error:</strong> Server Error</li>\n</ul>\n","_postman_id":"633ccc5f-1522-4139-a0e9-8ba3bbada777","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Boards","item":[{"name":"Create a Board","id":"986e81db-69e4-4580-8d75-4715637f5b98","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New Project Board\",\r\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\r\n    \"members\": [\r\n        {\r\n            \"email\": \"member1@example.com\"\r\n        },\r\n        {\r\n            \"email\": \"member2@example.com\"\r\n        }\r\n    ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/create","description":"<p>The <code>POST</code> request is used to create a new board on the server.</p>\n<p><strong>URL :</strong> <code>localhost:port/board/create</code></p>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><code>title</code> (string, required): Title of the board.</p>\n</li>\n<li><p><code>backgroundImageLink</code> (string, optional): Link to the background image of the board.</p>\n</li>\n<li><p><code>members</code> (array, required): Array of members with the following properties:</p>\n<ul>\n<li><code>email</code> (string, required): Email of the member.</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","board","create"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"c6342bd4-0806-4288-ae5c-7254e11b5f8a","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New Project Board\",\r\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\r\n    \"members\": [\r\n        {\r\n            \"email\": \"member1@example.com\"\r\n        },\r\n        {\r\n            \"email\": \"member2@example.com\"\r\n        }\r\n    ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/create"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"645"},{"key":"ETag","value":"W/\"285-yYUbJj/mPmPb75vqZNOGUqDzyi4\""},{"key":"Date","value":"Sun, 26 May 2024 19:43:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"title\": \"New Project Board\",\n    \"isImage\": true,\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\n    \"lists\": [],\n    \"description\": \"\",\n    \"_id\": \"665390d7dcf27c1f6360068b\",\n    \"activity\": [\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"created this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"665390d7dcf27c1f63600691\",\n            \"date\": \"2024-05-26T19:43:19.526Z\"\n        }\n    ],\n    \"members\": [\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"surname\": \"surname\",\n            \"email\": \"user@gmail.com\",\n            \"role\": \"owner\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"665390d7dcf27c1f63600692\"\n        }\n    ],\n    \"createdAt\": \"2024-05-26T19:43:19.182Z\",\n    \"updatedAt\": \"2024-05-26T19:43:19.533Z\"\n}"},{"id":"14450c0e-b605-4dff-bc9f-dd91c380f8d7","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New Project Board\",\r\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\r\n    \"members\": [\r\n        {\r\n            \"email\": \"member1@example.com\"\r\n        },\r\n        {\r\n            \"email\": \"member2@example.com\"\r\n        }\r\n    ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/create"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-YZeaNEWHjNz+Q+6hzFwSfOjk83c\""},{"key":"Date","value":"Sun, 26 May 2024 19:38:42 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt malformed\"\n}"},{"id":"3cdc6eff-45c1-4ff7-8503-5733eb0e8dff","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\r\n    \"members\": [\r\n        {\r\n            \"email\": \"member1@example.com\"\r\n        },\r\n        {\r\n            \"email\": \"member2@example.com\"\r\n        }\r\n    ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/create"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"44"},{"key":"ETag","value":"W/\"2c-3j+aVh8ZWmy8t9nccp4r73xLpFk\""},{"key":"Date","value":"Sun, 26 May 2024 19:39:56 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Image or title  Cannot be null\"\n}"},{"id":"57185ac6-cf43-4f75-a75b-508211b6d3be","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New Project Board\",\r\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\r\n    \"members\": [\r\n        {\r\n            \"email\": \"member1@example.com\"\r\n        },\r\n        {\r\n            \"email\": \"member2@example.com\"\r\n        }\r\n    ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/create"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"36"},{"key":"ETag","value":"W/\"24-ILTwXpvmO8iu1sDxAvZVcbFdmQo\""},{"key":"Date","value":"Sun, 26 May 2024 19:41:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Error Creating a Board\"\n}"}],"_postman_id":"986e81db-69e4-4580-8d75-4715637f5b98"},{"name":"Get all Board Details","id":"55b031b6-4727-4290-99b7-020c8b846eed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/","description":"<p>This endpoint retrieves all boards associated with the authenticated user.</p>\n<p><strong>URL :</strong> <code>GET localhost:port/board/</code></p>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board",""],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"8731afd3-6a16-4d23-b547-15c9ba332e89","name":"Success Code","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"414"},{"key":"ETag","value":"W/\"19e-0GoDORKvB4zDT8fb13YZv94PH/E\""},{"key":"Date","value":"Sun, 26 May 2024 20:19:22 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"_id\": \"665390d7dcf27c1f6360068b\",\n        \"title\": \"New Project Board\",\n        \"isImage\": true,\n        \"backgroundImageLink\": \"https://example.com/background.jpg\",\n        \"description\": \"\",\n        \"members\": [\n            {\n                \"user\": \"6653723cb73e2f469ba88c32\",\n                \"name\": \"user\",\n                \"surname\": \"surname\",\n                \"email\": \"user@gmail.com\",\n                \"role\": \"owner\",\n                \"color\": \"#FA3FF0\",\n                \"_id\": \"665390d7dcf27c1f63600692\"\n            }\n        ],\n        \"createdAt\": \"2024-05-26T19:43:19.182Z\",\n        \"updatedAt\": \"2024-05-26T19:43:19.533Z\",\n        \"__v\": 1\n    }\n]"},{"id":"94ce1af4-649e-405d-a48e-4d4f2e2de3ea","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"31"},{"key":"ETag","value":"W/\"1f-pZK48A3ZbwxVl8UtZcC9y8sBFbw\""},{"key":"Date","value":"Sun, 26 May 2024 20:14:20 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"No token provided\"\n}"},{"id":"ebd9d54a-4147-4c0f-802f-c3b6bc176f67","name":"Bad Request","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"44"},{"key":"ETag","value":"W/\"2c-haNrn3PCeIhTj60kkGn8X7JGACI\""},{"key":"Date","value":"Sun, 26 May 2024 20:24:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"msg\": \"Error fetching boards\",\n    \"details\": \"\"\n}"},{"id":"2debb93e-99c5-47c1-8e07-f0ac54eb0a16","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-kaC9+qEFrIhuy/kA5ky6GEZh1Dg\""},{"key":"Date","value":"Sun, 26 May 2024 20:25:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while fetching the boards.\",\n    \"error\": \"\"\n}"}],"_postman_id":"55b031b6-4727-4290-99b7-020c8b846eed"},{"name":"Get by ID","id":"dd1493b8-b1bb-46b1-8821-4bf483098266","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b","description":"<p>The endpoint retrieves information for a specific board identified by the provided ID.</p>\n<p><strong>URL :</strong> <code>GET localhost:port/board/ {BoardId}</code></p>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>BoardId</code> (string, required): The unique identifier of the Board.</li>\n</ul>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board","665390d7dcf27c1f6360068b"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"2c652fd9-9de2-440c-8793-8bbb3bcc19d5","name":"Success Code","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1349"},{"key":"ETag","value":"W/\"545-B4badS0+ef7Cels8cL5JAQioo8A\""},{"key":"Date","value":"Fri, 07 Jun 2024 00:46:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"_id\": \"665390d7dcf27c1f6360068b\",\n    \"title\": \"Updated Title\",\n    \"isImage\": true,\n    \"backgroundImageLink\": \"https://example.com/background.jpg\",\n    \"lists\": [],\n    \"description\": \"Updated description\",\n    \"activity\": [\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update description of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a71d9e0bfa3a9079630e\",\n            \"date\": \"2024-05-26T21:18:21.919Z\"\n        },\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update title of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a3b8dfd19e7ea7ad1510\",\n            \"date\": \"2024-05-26T21:03:52.176Z\"\n        },\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update title of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a32f13f390688e661afa\",\n            \"date\": \"2024-05-26T21:01:35.300Z\"\n        },\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"created this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"665390d7dcf27c1f63600691\",\n            \"date\": \"2024-05-26T19:43:19.526Z\"\n        }\n    ],\n    \"members\": [\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"surname\": \"surname\",\n            \"email\": \"user@gmail.com\",\n            \"role\": \"owner\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"665390d7dcf27c1f63600692\"\n        }\n    ],\n    \"createdAt\": \"2024-05-26T19:43:19.182Z\",\n    \"updatedAt\": \"2024-05-26T21:18:21.931Z\",\n    \"__v\": 4\n}"},{"id":"b132bb37-6dde-4587-82b5-e58c61cabc96","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/664a6284a81d70d73cf6757a"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"31"},{"key":"ETag","value":"W/\"1f-pZK48A3ZbwxVl8UtZcC9y8sBFbw\""},{"key":"Date","value":"Sun, 26 May 2024 20:29:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"No token provided\"\n}"},{"id":"4548b8e6-864f-4646-a76a-b83041c948e9","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/66639e6f18642b21532122b62"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"89"},{"key":"ETag","value":"W/\"59-YJzmGZNBKtZPdbDlaYzof6sRHbc\""},{"key":"Date","value":"Sat, 08 Jun 2024 00:26:28 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while fetching the boards.\",\n    \"error\": \"Error fetching board\"\n}"}],"_postman_id":"dd1493b8-b1bb-46b1-8821-4bf483098266"},{"name":"Get Board Activity by ID","id":"9a737e24-2059-4d58-9c15-a59e1dabdfe4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/activity","description":"<p>This endpoint retrieves the activity for a specific board.</p>\n<ul>\n<li><strong>URL</strong>: <code>GET localhost:3000/api/board/{boardId}/activity</code></li>\n</ul>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>BoardId</code> (string, required): The unique identifier of the Board.</li>\n</ul>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board","665390d7dcf27c1f6360068b","activity"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"025df825-4ab2-41ad-93d5-25e1257a8bd5","name":"Success Code","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/activity"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"218"},{"key":"ETag","value":"W/\"da-siM+3GFJJbJfIB7WVH045E7vR4U\""},{"key":"Date","value":"Sun, 26 May 2024 20:48:53 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"user\": \"6653723cb73e2f469ba88c32\",\n        \"name\": \"user\",\n        \"action\": \"created this board\",\n        \"edited\": false,\n        \"cardTitle\": \"\",\n        \"actionType\": \"action\",\n        \"color\": \"#FA3FF0\",\n        \"_id\": \"665390d7dcf27c1f63600691\",\n        \"date\": \"2024-05-26T19:43:19.526Z\"\n    }\n]"},{"id":"91c4293a-7718-4703-b742-a439b23a75af","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/activity"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-f37b9hHEatPQH8Zttz18d9AtJDs\""},{"key":"Date","value":"Sun, 26 May 2024 20:42:40 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid signature\"\n}"},{"id":"93144559-56d8-4d5b-bc08-3172f4881732","name":"Bad Request","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/664a610ccbb2928401b0fff5/activity"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"99"},{"key":"ETag","value":"W/\"63-Eyl/G73zELh+Gqu4cswrIaTRG5Q\""},{"key":"Date","value":"Sun, 26 May 2024 20:45:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Error fetching board \",\n    \"details\": \"Cannot read properties of null (reading 'activity')\"\n}"},{"id":"a1b02c30-b15e-427b-9088-ae266bcb402a","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"url":"localhost:3000/api/board/664a610ccbb2928401b0fff5/activity"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-kaC9+qEFrIhuy/kA5ky6GEZh1Dg\""},{"key":"Date","value":"Sun, 26 May 2024 20:47:04 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Board not found\"\n}"}],"_postman_id":"9a737e24-2059-4d58-9c15-a59e1dabdfe4"},{"name":"Delete a Board","id":"9f66f530-ca27-4edc-8829-529466106356","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"url":"localhost:3000/api/board/6663bd7f44dae80669f4c030","description":"<p>This endpoint makes an HTTP <code>DELETE</code> request to delete a board based on the provided board ID. The request should include the board ID in the URL path.</p>\n<h4 id=\"url\">URL</h4>\n<p><code>DELETE localhost:port/api/board/:id</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><code>id</code> (string, required): The unique identifier of the board to be deleted. This should be provided in the URL path.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the deletion of the board or provide an error message if the board could not be found or if there was an issue with the deletion process.</p>\n","urlObject":{"port":"3000","path":["api","board","6663bd7f44dae80669f4c030"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"3ba59071-dce2-4323-929b-a1d74aaaa47f","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"url":"localhost:3000/api/board/66639e6f18642b21532122b6"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"40"},{"key":"ETag","value":"W/\"28-YhE/L3Fe6i+ltfBzpfpgVuAOolk\""},{"key":"Date","value":"Sat, 08 Jun 2024 01:18:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Board deleted successfully\"\n}"},{"id":"865b97b8-0f74-41ac-ace7-3e8236ab246b","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"url":"localhost:3000/api/board/66639e6f18642b21532122b6"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 08 Jun 2024 00:56:22 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"89f8f0cb-d372-4387-85c1-a6c89f637276","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"url":"localhost:3000/api/board/66563474d02c32d2a3cfbd8d"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"29"},{"key":"ETag","value":"W/\"1d-IAR5tNDHP6CIUyrlFEv05mkfPAY\""},{"key":"Date","value":"Fri, 07 Jun 2024 01:09:44 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Board not found\"\n}"},{"id":"f0ccc6d5-00c7-4efe-a4dd-e254368672e7","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"url":"localhost:3000/api/board/66639e6f18642b21532122b6"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"29"},{"key":"ETag","value":"W/\"1d-IAR5tNDHP6CIUyrlFEv05mkfPAY\""},{"key":"Date","value":"Sat, 08 Jun 2024 00:55:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Board not found\"\n}"}],"_postman_id":"9f66f530-ca27-4edc-8829-529466106356"},{"name":"Update Board title","id":"6e606216-b89a-4e6a-bfb7-c6dc2a49aa02","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Updated Title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/update-board-title","description":"<p>This endpoint is used to update the title of a specific board.</p>\n<p><strong>URL</strong>: <code>PUT localhost:port/api/board/{boardId}/update-board-title</code></p>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>BoardId</code> (string, required): The unique identifier of the Board.</li>\n</ul>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li>title (string, required): The new title for the board.</li>\n</ul>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board","665390d7dcf27c1f6360068b","update-board-title"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"bb358c6f-955d-4844-9f35-19587bb2eba4","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Updated Title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/update-board-title"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sun, 26 May 2024 21:03:52 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"0d99e7bb-fc65-4e92-aed3-434437d7b3dc","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Updated title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-board-title"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-f37b9hHEatPQH8Zttz18d9AtJDs\""},{"key":"Date","value":"Sun, 26 May 2024 20:57:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid signature\"\n}"},{"id":"771b5b0f-3991-4bd1-b75d-20525aaca424","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-board-title"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"113"},{"key":"ETag","value":"W/\"71-CBYwtyjZH8n/OZ3Ol80WKPgwKaM\""},{"key":"Date","value":"Sun, 26 May 2024 20:58:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Missing Required Fields \"\n}"},{"id":"26e50bac-52e3-42f1-a136-5c79a9ac3adc","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Updated Title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/update-board-title"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"68"},{"key":"ETag","value":"W/\"44-GjlnkbnfoiyG8khAbqUXfUbv3HQ\""},{"key":"Date","value":"Sun, 26 May 2024 21:02:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while updating the board.\",\n    \"error\": \"\"\n}"}],"_postman_id":"6e606216-b89a-4e6a-bfb7-c6dc2a49aa02"},{"name":"Update Board Description","id":"d24851a0-e958-4bd9-a217-90587168446b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"description\": \"Updated description\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/update-board-description","description":"<p>This endpoint is used to update the Board Description of a specific board.</p>\n<p><strong>URL</strong>: <code>PUT localhost:port/api/board/{boardId}/update-board-description</code></p>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>BoardId</code> (string, required): The unique identifier of the Board.</li>\n</ul>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li>description (string, required): The new description for the board.</li>\n</ul>\n<h3 id=\"authoization-bearer-token\"><strong>Authoization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board","665390d7dcf27c1f6360068b","update-board-description"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"97a70197-9067-4119-9498-cfb666ec604a","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"description\": \"Updated description\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/665390d7dcf27c1f6360068b/update-board-description"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sun, 26 May 2024 21:18:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"efea9cc7-86ea-45de-b13b-3444aecd5049","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"description\": \"Updated description\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-board-description"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Sun, 26 May 2024 21:13:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"10ed19f0-d9ab-4aeb-94d9-f2c838ab21cd","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"description\": \"Updated description\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fffw/update-board-description"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"173"},{"key":"ETag","value":"W/\"ad-vU6KyfKjIO0R74Xzntev2TQPFHk\""},{"key":"Date","value":"Sun, 26 May 2024 21:15:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Missing Required Fields \"\n}"},{"id":"f7658d7b-27c4-4f7a-8d3b-961a51a7ff08","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"description\": \"Updated description\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fffw/update-board-description"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"68"},{"key":"ETag","value":"W/\"44-GjlnkbnfoiyG8khAbqUXfUbv3HQ\""},{"key":"Date","value":"Sun, 26 May 2024 21:16:50 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while updating the board.\"\n    \n}"}],"_postman_id":"d24851a0-e958-4bd9-a217-90587168446b"},{"name":"Update Board Background","id":"500fbdc6-4629-49bb-9fba-298693a56d01","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n  \"background\": \"https://example.com/new-background.jpg\",\r\n  \"isImage\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-background","description":"<p>This endpoint is used to update the background of a specific board.</p>\n<p><strong>URL</strong>: <code>PUT localhost:port/api/board/{boardId}/update-background</code></p>\n<h3 id=\"request-parameters\">Request Parameters</h3>\n<ul>\n<li><code>BoardId</code> (string, required): The unique identifier of the Board.</li>\n</ul>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><code>background</code> (string, optional): The new background for the board.</p>\n</li>\n<li><p><code>isImage</code> (boolean, required): Indicates whether the background is an image.</p>\n</li>\n</ul>\n<h3 id=\"authorization-bearer-token\"><strong>Authorization</strong>: Bearer Token</h3>\n","urlObject":{"port":"3000","path":["api","board","664a610ccbb2928401b0fff6","update-background"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"46242098-b7c1-47a0-b775-867e37b78c37","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n  \"background\": \"https://example.com/new-background.jpg\",\r\n  \"isImage\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-background"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"8689"},{"key":"ETag","value":"W/\"21f1-ugtBRtjIoatd4cfIseaMP4PIeLE\""},{"key":"Date","value":"Sun, 26 May 2024 21:25:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"isImage\": true,\n    \"_id\": \"664a610ccbb2928401b0fff6\",\n    \"title\": \"Updated title\",\n    \"backgroundImageLink\": \"https://example.com/new-background.jpg\",\n    \"lists\": [\n        \"664fbb2bbd589309982d9df2\"\n    ],\n    \"activity\": [\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update background of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a8ac4c3403276cb045cf\",\n            \"date\": \"2024-05-26T21:25:00.399Z\"\n        },\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update background of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a7d59e0bfa3a90796334\",\n            \"date\": \"2024-05-26T21:21:25.533Z\"\n        },\n        {\n            \"user\": \"6653723cb73e2f469ba88c32\",\n            \"name\": \"user\",\n            \"action\": \"update description of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#FA3FF0\",\n            \"_id\": \"6653a632dfd19e7ea7ad1535\",\n            \"date\": \"2024-05-26T21:14:26.704Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"update title of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"6653a2338cc988e367d84a5b\",\n            \"date\": \"2024-05-26T20:57:23.255Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"update title of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"6652cd132e19012db15d7caf\",\n            \"date\": \"2024-05-26T05:48:03.747Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"removed 'undefined' from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523f7bb5aefd5f0fc8f282\",\n            \"date\": \"2024-05-25T19:43:55.357Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"completed 'Sample updated Checklist Item' on Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523ec6fa625d87cf190bdd\",\n            \"date\": \"2024-05-25T19:40:54.286Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added 'Sample Checklist' to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523b6fd3710aca534a1402\",\n            \"date\": \"2024-05-25T19:26:39.377Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"edited\": true,\n            \"cardTitle\": \"Card titile 3\",\n            \"actionType\": \"comment\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523a60e636e7b3c6c80603\",\n            \"date\": \"2024-05-25T19:22:08.052Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"edited\": true,\n            \"cardTitle\": \"Card titile 3\",\n            \"actionType\": \"comment\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523964e636e7b3c6c805dc\",\n            \"date\": \"2024-05-25T19:17:56.117Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted the https://example.com/document.pdf attachment from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"6652371719d745fc3bbc260a\",\n            \"date\": \"2024-05-25T19:08:07.360Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted the https://example.com/document.pdf attachment from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"665232e1cc2f447dbbc43432\",\n            \"date\": \"2024-05-25T18:50:09.493Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"6652311ef2bde72b4e0ff447\",\n            \"date\": \"2024-05-25T18:42:38.405Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"665230ed72c30ece4d30c9c0\",\n            \"date\": \"2024-05-25T18:41:49.544Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66523012fcae69deef875e90\",\n            \"date\": \"2024-05-25T18:38:10.009Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66522f345b7de1cae087d0cd\",\n            \"date\": \"2024-05-25T18:34:28.591Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66522ec6b44865dbef1d3a42\",\n            \"date\": \"2024-05-25T18:32:38.176Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted the https://example.com/document.pdf attachment from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66522e199983f8958ce416fd\",\n            \"date\": \"2024-05-25T18:29:45.652Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"edited\": true,\n            \"cardTitle\": \"Card titile 3\",\n            \"actionType\": \"comment\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66522da89983f8958ce416e1\",\n            \"date\": \"2024-05-25T18:27:52.440Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"attached https://example.com/document.pdf to Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"66522d089983f8958ce416c6\",\n            \"date\": \"2024-05-25T18:25:12.162Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted his/her own comment from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fcfeec342c6ab7c86cdda\",\n            \"date\": \"2024-05-23T23:23:26.300Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted his/her own comment from Card titile 3\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fcf7fe75bb64e175afb8c\",\n            \"date\": \"2024-05-23T23:21:35.555Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"Updated Comment.\",\n            \"edited\": true,\n            \"cardTitle\": \"Card titile 3\",\n            \"actionType\": \"comment\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fce288e840b97f158de17\",\n            \"date\": \"2024-05-23T23:15:52.039Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"This is a sample comment for the card.\",\n            \"edited\": false,\n            \"cardTitle\": \"Card titile 3\",\n            \"actionType\": \"comment\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fcab64576154ba7fda367\",\n            \"date\": \"2024-05-23T23:01:10.241Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added Card titile 3 to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fc91e2870e2a2522179c8\",\n            \"date\": \"2024-05-23T22:54:22.130Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added Card titile 3 to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fc8fef88e55aef2c28c2f\",\n            \"date\": \"2024-05-23T22:53:50.876Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted updated card title from New List 2 \",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fc334ab3552be9badec58\",\n            \"date\": \"2024-05-23T22:29:08.654Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added Card titile 2 to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fc074d8bf8ad3899d507d\",\n            \"date\": \"2024-05-23T22:17:24.295Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added Card title to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fc0139d006a16a91e36fb\",\n            \"date\": \"2024-05-23T22:15:47.491Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"deleted updated title   from this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fbeda872d8a696593874e\",\n            \"date\": \"2024-05-23T22:10:34.698Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added New List 2  to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fbb2bbd589309982d9df9\",\n            \"date\": \"2024-05-23T21:54:51.539Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"added New List  to this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664fbb05ff3ed4db504f15d8\",\n            \"date\": \"2024-05-23T21:54:13.573Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"update background of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664a65eb3304f600f9513abe\",\n            \"date\": \"2024-05-19T20:49:47.456Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"update description of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664a64b0dc99276a7ca3e86a\",\n            \"date\": \"2024-05-19T20:44:32.809Z\"\n        },\n        {\n            \"user\": \"664a4b2cc440f8f3e55f329e\",\n            \"name\": \"admin\",\n            \"action\": \"update title of this board\",\n            \"edited\": false,\n            \"cardTitle\": \"\",\n            \"actionType\": \"action\",\n            \"color\": \"#5543A1\",\n            \"_id\": \"664a64500a4e71c91062c743\",\n            \"date\": \"2024-05-19T20:42:56.444Z\"\n        }\n    ],\n    \"members\": [],\n    \"createdAt\": \"2024-05-19T20:29:00.806Z\",\n    \"updatedAt\": \"2024-05-26T21:25:00.410Z\",\n    \"__v\": 35,\n    \"description\": \"\"\n}"},{"id":"39735dc4-24b5-465d-a405-ef8096e0045d","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n  \"background\": \"https://example.com/new-background.jpg\",\r\n  \"isImage\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-background"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-f37b9hHEatPQH8Zttz18d9AtJDs\""},{"key":"Date","value":"Sun, 26 May 2024 21:20:42 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid signature\"\n}"},{"id":"41a01c81-a802-4c33-8392-3aa8f0ae5915","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-background"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"145"},{"key":"ETag","value":"W/\"91-RKPxdmjY47xub6jzU/Ym+1LPg14\""},{"key":"Date","value":"Sun, 26 May 2024 21:21:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Missing Required Fields \"\n}"},{"id":"f3f6ddd3-ddff-4ab2-af89-1143397f771d","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/update-background"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-WhsTL0sxhV6I5z1O8VGiq0NaVJo\""},{"key":"Date","value":"Sun, 26 May 2024 21:23:28 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while updating the boards.\"\n}"}],"_postman_id":"500fbdc6-4629-49bb-9fba-298693a56d01"},{"name":"Add member","id":"61966132-70fd-4eef-a11c-2f71a25aabd1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"members\": [\r\n    {\r\n      \"email\": \"newmember1@example.com\",\r\n      \"name\": \"John\",\r\n      \"surname\": \"Doe\",\r\n      \"color\": \"#FFAABB\"\r\n    },\r\n    {\r\n      \"email\": \"newmember2@example.com\",\r\n      \"name\": \"Jane\",\r\n      \"surname\": \"Smith\",\r\n      \"color\": \"#AABBCC\"\r\n    }\r\n  ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/add-member","urlObject":{"port":"3000","path":["api","board","664a610ccbb2928401b0fff6","add-member"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"52a1f769-5d99-47f7-bfca-29e272c7df18","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"members\": [\r\n    {\r\n      \"email\": \"newmember1@example.com\",\r\n      \"name\": \"John\",\r\n      \"surname\": \"Doe\",\r\n      \"color\": \"#FFAABB\"\r\n    },\r\n    {\r\n      \"email\": \"newmember2@example.com\",\r\n      \"name\": \"Jane\",\r\n      \"surname\": \"Smith\",\r\n      \"color\": \"#AABBCC\"\r\n    }\r\n  ]\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/add-member"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"267"},{"key":"ETag","value":"W/\"10b-FkaE+3RRohto+h2EkGoZy2n4oQE\""},{"key":"Date","value":"Fri, 07 Jun 2024 00:01:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"name\": \"John\",\n        \"surname\": \"Doe\",\n        \"email\": \"newmember1@example.com\",\n        \"role\": \"member\",\n        \"color\": \"#FFAABB\",\n        \"_id\": \"66624dc60fb9ccdebc99f946\"\n    },\n    {\n        \"name\": \"Jane\",\n        \"surname\": \"Smith\",\n        \"email\": \"newmember2@example.com\",\n        \"role\": \"member\",\n        \"color\": \"#AABBCC\",\n        \"_id\": \"66624dc60fb9ccdebc99f948\"\n    }\n]"},{"id":"7496a91e-7758-4126-91a2-02a1354b8735","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"members\": [\r\n    {\r\n      \"email\": \"member1@example.com\"\r\n    },\r\n    {\r\n      \"email\": \"member2@example.com\"\r\n    }\r\n  ]\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/add-member"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Sun, 26 May 2024 21:32:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"235e15a3-8190-465e-a6e7-7eed0d3c1b79","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"members\": [\r\n    {\r\n      \"email\": \"member1@example.com\"\r\n    },\r\n    {\r\n      \"email\": \"member2@example.com\"\r\n    }\r\n  ]\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/add-member"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"35"},{"key":"ETag","value":"W/\"23-gw6dhSnBLALKXnPmeGuZGrfut5s\""},{"key":"Date","value":"Sun, 26 May 2024 21:32:53 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"failed to add members\"\n}"},{"id":"3c4ded6f-6db4-4871-b3e7-8070bd5e3ff3","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n    \"members\": [\r\n    {\r\n      \"email\": \"member1@example.com\"\r\n    },\r\n    {\r\n      \"email\": \"member2@example.com\"\r\n    }\r\n  ]\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/board/664a610ccbb2928401b0fff6/add-member"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"64"},{"key":"ETag","value":"W/\"40-EL8JwxW95856TQhS+v3dcNvNcsQ\""},{"key":"Date","value":"Sun, 26 May 2024 21:34:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"An error occurred while adding members.\",\n    \"error\": \"\"\n}"}],"_postman_id":"61966132-70fd-4eef-a11c-2f71a25aabd1"}],"id":"db460855-5b37-49c6-957a-5780913c3cf7","description":"<p>This API provides endpoints for managing boards within an application. It covers functionalities such as creating new boards, retrieving board details, and updating board properties. Below is an overview of the key functions:</p>\n<h4 id=\"1-create-board\">1. Create Board</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>POST /api/board/create</code></p>\n</li>\n<li><p><strong>Function:</strong> Allows users to create a new board by providing a title and optional description and background. This endpoint is used for initiating new projects or organizational boards.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to ensure the user is logged in.</p>\n</li>\n</ul>\n<h4 id=\"2-get-all-boards\">2. Get All Boards</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>GET /api/board/</code></p>\n</li>\n<li><p><strong>Function:</strong> Retrieves a list of all boards available to the user. This is useful for displaying an overview of all projects or boards a user is part of.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to verify the user’s identity and permissions.</p>\n</li>\n</ul>\n<h4 id=\"3-get-board-details-by-id\">3. Get Board Details by ID</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>GET /api/board/{id}</code></p>\n</li>\n<li><p><strong>Function:</strong> Fetches detailed information about a specific board using its unique ID. This includes the board's title, description, background, and other relevant details.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to ensure the user has access to the board details.</p>\n</li>\n</ul>\n<h4 id=\"4-get-board-activities-by-id\">4. Get Board Activities by ID</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>GET /api/board/{id}/activity</code></p>\n</li>\n<li><p><strong>Function:</strong> Retrieves the activity log for a specific board, detailing actions taken on the board such as updates, deletions, and other significant events. This helps in tracking the board's history and user activities.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to verify the user’s access rights to the board’s activities.</p>\n</li>\n</ul>\n<h4 id=\"5-update-board-title\">5. Update Board Title</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>PUT /api/board/{boardId}/update-board-title</code></p>\n</li>\n<li><p><strong>Function:</strong> Updates the title of an existing board. This is useful for renaming boards to reflect changes in the project or organizational structure.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to ensure the user has permission to update the board.</p>\n</li>\n</ul>\n<h4 id=\"6-update-board-description\">6. Update Board Description</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>PUT /api/board/{boardId}/update-board-description</code></p>\n</li>\n<li><p><strong>Function:</strong> Updates the description of an existing board. This helps in providing up-to-date information or context for the board's purpose and content.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to verify the user’s authority to modify the board details.</p>\n</li>\n</ul>\n<h4 id=\"7-update-board-background\">7. Update Board Background</h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>PUT /api/board/{boardId}/update-board-background</code></p>\n</li>\n<li><p><strong>Function:</strong> Updates the background of an existing board. This can be used to customize the visual appearance of the board for better organization or aesthetic purposes.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to ensure the user is authorized to change the board's background.</p>\n</li>\n</ul>\n<h4 id=\"8-add-member-to-board\"><strong>8. Add Member to Board</strong></h4>\n<ul>\n<li><p><strong>Endpoint:</strong> <code>POST /api/boards/{id}/members</code></p>\n</li>\n<li><p><strong>Function:</strong> Adds a member to an existing board by specifying the board ID and the user's email. This is useful for collaborative projects where multiple users need access to the same board.</p>\n</li>\n<li><p><strong>Authorization:</strong> Requires a valid authentication token to verify the user’s permission to add members to the board.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<ol>\n<li><p><strong>Board Creation and Initialization:</strong></p>\n<ul>\n<li><p>Users can create new boards using the <code>/api/board/create</code> endpoint.</p>\n</li>\n<li><p>Initial details such as title, description, and background can be set at creation or updated later.</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Board Management:</strong></p>\n<ul>\n<li><p>Retrieve all boards associated with the user through the <code>GET /api/board/</code> endpoint to display in a dashboard or overview page.</p>\n</li>\n<li><p>Access specific board details via <code>GET /api/board/{id}</code> for viewing or editing purposes.</p>\n</li>\n<li><p>Add members to a board to facilitate collaboration.</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Board Activity Tracking:</strong></p>\n<ul>\n<li>Monitor activities on a board using the <code>/api/board/{id}/activity</code> endpoint to keep track of changes and user actions.</li>\n</ul>\n</li>\n<li><p><strong>Board Customization:</strong></p>\n<ul>\n<li>Update the title, description, or background of a board using the respective PUT endpoints to keep the board information current and visually appealing.</li>\n</ul>\n</li>\n</ol>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK:</strong> Successful operation.</p>\n</li>\n<li><p><strong>201 Created:</strong> Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request:</strong> Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized:</strong> Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden:</strong> User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found:</strong> Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify boards. This not only protects the integrity and privacy of board data but also ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"db460855-5b37-49c6-957a-5780913c3cf7","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"List","item":[{"name":"Create a list","id":"869cda7a-07a9-4494-abe1-a5d56b7b1c51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New List 01 \",\r\n    \"boardId\": \"6663be2344dae80669f4c03f\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/create","description":"<h3 id=\"api-request-description\">API Request Description</h3>\n<p>This endpoint allows the creation of a new list by sending an HTTP POST request to localhost:3000/api/list/create. The request should include a JSON payload in the raw request body type, containing the 'title' and 'boardId' parameters.</p>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><code>title</code> (string): The title of the new list.</p>\n</li>\n<li><p><code>boardId</code> (string): The ID of the board to which the new list will be added.</p>\n</li>\n</ul>\n<h3 id=\"response\">Response</h3>\n<p>The response to this request is in JSON format and includes the following fields:</p>\n<ul>\n<li><p><code>message</code> (string): A message regarding the status of the request.</p>\n</li>\n<li><p><code>details</code> (string): Additional details related to the request.</p>\n</li>\n</ul>\n<h3 id=\"response-json-schema\">Response JSON Schema</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"type\": \"object\",\n    \"properties\": {\n        \"message\": {\n            \"type\": \"string\"\n        },\n        \"details\": {\n            \"type\": \"string\"\n        }\n    }\n}\n\n</code></pre>\n","urlObject":{"port":"3000","path":["api","list","create"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"e271c6b9-6f95-4e6a-b26c-e5780f478063","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"List A\",\r\n    \"boardId\": \"66547ecb18778e791e99555f\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/create"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"105"},{"key":"ETag","value":"W/\"69-aXdBZe9nnWqCecuFpfEGkwtVcQc\""},{"key":"Date","value":"Mon, 27 May 2024 12:51:01 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"title\": \"List A\",\n    \"cards\": [],\n    \"owner\": \"66547ecb18778e791e99555f\",\n    \"_id\": \"665481b518778e791e99558a\",\n    \"__v\": 0\n}"},{"id":"632c3e12-942a-4571-b7d0-4a02f1ecfe38","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"List A\",\r\n    \"boardId\": \"66547ecb18778e791e99555f\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/create"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Mon, 27 May 2024 12:52:28 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"50c0c008-fb75-4c83-ba1f-6be88afb005f","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"\",\r\n    \"boardId\": \"66547a3f18778e791e995538\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/create"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"35"},{"key":"ETag","value":"W/\"23-hGLTyJL6A7fD9mo4AaFaA4aY+p8\""},{"key":"Date","value":"Mon, 27 May 2024 12:55:44 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Title cannot be empty\"\n}"},{"id":"bf138aa4-7740-4bde-95fc-2b0047c7caef","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"LIST01\",\r\n    \"boardId\": \"66547ecb18778e791e99555f\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/create"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-w1OI3Ycue0AYyTlpYNmErInwyMw\""},{"key":"Date","value":"Mon, 27 May 2024 12:58:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"An Error Occured by creating list\",\n    \"details\": \"\"\n}"}],"_postman_id":"869cda7a-07a9-4494-abe1-a5d56b7b1c51"},{"name":"Get List by Board ID","id":"b50a9066-14d3-4fb9-830f-97c2462fb039","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/6663be2344dae80669f4c03f","description":"<p>This endpoint makes an HTTP <code>GET</code> request to retrieve all lists associated with a specified board ID. The request should include the board ID in the URL path.</p>\n<p><strong>URL</strong>: <code>http://localhost:port/api/list/{board_id}</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><strong>board_id</strong> (string, required): The unique identifier of the board.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will include a list of all lists associated with the specified board. Each list object will include details of the cards it contains. The response body will contain the following fields:</p>\n<ul>\n<li><p><strong>id</strong> (string): The list's ID.</p>\n</li>\n<li><p><strong>name</strong> (string): The name of the list.</p>\n</li>\n<li><p><strong>cards</strong> (array): An array of card objects associated with the list, each containing:</p>\n<ul>\n<li><p><strong>id</strong> (string): The card's ID.</p>\n</li>\n<li><p><strong>title</strong> (string): The card's title.</p>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","list","6663be2344dae80669f4c03f"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"7b2a154b-9611-451d-8980-d8b40e8e4cee","name":"Success Code","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New List \",\r\n    \"boardId\": \"664a610ccb66546daf38bf0d96c9bf979db2928401b0fff6\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"213"},{"key":"ETag","value":"W/\"d5-fWfsRjcXE4ZUEfgQQ75+ZF2sgcI\""},{"key":"Date","value":"Mon, 27 May 2024 13:00:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"_id\": \"665481b518778e791e99558a\",\n        \"title\": \"List A\",\n        \"cards\": [],\n        \"owner\": \"66547ecb18778e791e99555f\",\n        \"__v\": 0\n    },\n    {\n        \"_id\": \"66548369eaa8ad3c771dc247\",\n        \"title\": \"LIST01\",\n        \"cards\": [],\n        \"owner\": \"66547ecb18778e791e99555f\",\n        \"__v\": 0\n    }\n]"},{"id":"a9d0787c-0d93-4559-b491-602981f3e682","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New List \",\r\n    \"boardId\": \"664a610ccb66546daf38bf0d96c9bf979db2928401b0fff6\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Mon, 27 May 2024 13:02:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"2e1d8a33-4683-4bcf-a56b-62f5c2650693","name":"Bad Request","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \r\n    \"boardId\": \"664a610ccb66546daf38bf0d96c9bf979db2928401b0fff6\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18678e791e99555f"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1258"},{"key":"Date","value":"Sat, 01 Jun 2024 06:17:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Expected &#39;,&#39; or &#39;}&#39; after property value in JSON at position 31 (line 3 column 14)\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"4dafade1-54d1-4f81-83de-4ded74668b42","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New List \",\r\n    \"boardId\": \"664a610ccb66546daf38bf0d96c9bf979db2928401b0fff6\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb08778e791e99555f"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"98"},{"key":"ETag","value":"W/\"62-UusaUst54GbmVwmBXasNTsjgMEU\""},{"key":"Date","value":"Mon, 27 May 2024 13:02:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Something went wrong\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"b50a9066-14d3-4fb9-830f-97c2462fb039"},{"name":"Update list title","id":"27c9ca40-ad39-476f-af22-714b1cf4ca6c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated title  \"\r\n    \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/list/664a610ccbb2928401b0fff6/664fbb05ff3ed4db504f15d2/update-title","description":"<p>This endpoint is used to update the title of a specific list within a board.</p>\n<p><strong>URL</strong>: <code>PUT http://localhost:port/api/list/{boardId}/{listId}/update-title</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><strong>title</strong> (string, required): The new title for the list.</li>\n</ul>\n","urlObject":{"port":"3000","path":["list","664a610ccbb2928401b0fff6","664fbb05ff3ed4db504f15d2","update-title"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"ddc236b2-9fca-4233-bef7-505ad56b69d0","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"new title\"\r\n    \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f/665481b518778e791e99558a/update-title"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"21"},{"key":"ETag","value":"W/\"15-uFFjCr0SbbbFb/CsC0M2sF++swo\""},{"key":"Date","value":"Mon, 27 May 2024 13:08:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success\"\n}"},{"id":"acea94de-0cdc-4b27-8765-f6d8336c163a","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"XYZ title  \"\r\n    \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/6652c814f2a31e2064b08570/6652d3fc98fc26977e0fc12b/update-title"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Mon, 27 May 2024 13:05:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"07d53306-6894-4776-a493-21a8d68287c5","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \r\n    \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ec18778e791e99555f/665481b518778e791e99558a/update-title"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1250"},{"key":"Date","value":"Sat, 01 Jun 2024 06:18:20 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;: \r\n            <br> &nbsp; &nbsp;\r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"587a26c4-3968-4321-b286-c98a8eaaf685","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"new title\"\r\n    \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547eca18778e791e99555f/665481b508778e791e99558a/update-title"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"98"},{"key":"ETag","value":"W/\"62-UusaUst54GbmVwmBXasNTsjgMEU\""},{"key":"Date","value":"Mon, 27 May 2024 13:09:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Something went wrong\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"27c9ca40-ad39-476f-af22-714b1cf4ca6c"},{"name":"Delete by ID","id":"00428b23-e10b-47b0-802e-270e729227e3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/list/664a610ccbb2928401b0fff6/664fbb05ff3ed4db504f15d2","description":"<p>This endpoint makes an HTTP <code>DELETE</code> request to delete a list based on the provided list and board IDs. The request should include both the list ID and the board ID in the URL path.</p>\n<h4 id=\"url\">URL</h4>\n<p><code>DELETE localhost:port/api/list/:boardId/:listId</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board that hosts the list.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list to be deleted.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the deletion of the list or provide an error message if the list or board could not be found, or if there was an issue with the deletion process.</p>\n","urlObject":{"port":"3000","path":["list","664a610ccbb2928401b0fff6","664fbb05ff3ed4db504f15d2"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"377a03b6-c226-4cf4-b609-4dd51dfe4d37","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f/665481b518778e791e99558a"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"108"},{"key":"ETag","value":"W/\"6c-YiSOJO6MQdEkqf3jaXpN0prIcCo\""},{"key":"Date","value":"Tue, 28 May 2024 02:54:47 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"_id\": \"665481b518778e791e99558a\",\n    \"title\": \"new title\",\n    \"cards\": [],\n    \"owner\": \"66547ecb18778e791e99555f\",\n    \"__v\": 0\n}"},{"id":"d69057d3-c0bb-4981-b48e-8baf971c98b1","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f/665481b518778e791e99558a"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-bjWRq4KcfiQi9ovAwbTlT7iSWDY\""},{"key":"Date","value":"Tue, 28 May 2024 02:51:40 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid algorithm\"\n}"},{"id":"393251ce-6697-47a2-a7ff-f82e92c6175b","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"delete","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18778e791e99555f/665481b518778e791e99558a"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1286"},{"key":"Date","value":"Sat, 01 Jun 2024 06:21:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;d&#39;, &quot;delete&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"7af8557a-b099-442e-a192-e01936631f10","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/list/66547ecb18978e791e99555f/665481b518778e791e99558a"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"95"},{"key":"ETag","value":"W/\"5f-4+sEiyl07Qq+VjoEq7T8GAEKAbY\""},{"key":"Date","value":"Tue, 28 May 2024 02:51:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Something went wrong\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"00428b23-e10b-47b0-802e-270e729227e3"},{"name":"Update Card Order","id":"fb94fe82-f397-4b54-b38b-373bfe404aa6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"boardId\": \"664a610ccbb2928401b0fff6\",\r\n    \"sourceId\": \"source_list_id\",\r\n    \"destinationId\": \"destination_list_id\",\r\n    \"destinationIndex\": 2,\r\n    \"cardId\": \"example_card_id\" \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/list/change-card-order","description":"<p>This endpoint makes an HTTP <code>POST</code> request to update the order of a card within or between lists on a specified board.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/list/change-card-order</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["list","change-card-order"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"fb94fe82-f397-4b54-b38b-373bfe404aa6"},{"name":"Change List order","id":"253f3fef-f0df-464a-bc97-77e7d6f2d8ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"boardId\": \"example_board_id\",\r\n    \"sourceIndex\": 1,\r\n    \"destinationIndex\": 3,\r\n    \"listId\": \"example_list_id\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/list/change-list-order","description":"<p>This endpoint makes an HTTP <code>POST</code> request to update the order of a list within a board.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/list/change-list-order</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["list","change-list-order"],"host":["localhost"],"query":[],"variable":[]}},"response":[],"_postman_id":"253f3fef-f0df-464a-bc97-77e7d6f2d8ff"}],"id":"dd7412e5-6d10-46dc-aa52-d9462d15d594","description":"<p>This API provides endpoints for managing lists within an application. It covers functionalities such as creating new lists, retrieving list details, updating list properties, and managing the order of lists and cards. Below is an overview of the key functions:</p>\n<h4 id=\"create-list\"><strong>Create List</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/lists/create</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to create a new list by providing a title and associated board ID. This endpoint is used for organizing tasks or items within a specific board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to add a list to the specified board.</p>\n</li>\n</ul>\n<h4 id=\"get-all-lists-by-board-id\">Get All Lists by Board ID</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>GET /api/lists/{boardId}</code></p>\n</li>\n<li><p><strong>Function</strong>: Retrieves all lists associated with a specific board. This is useful for displaying all lists within a board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s access to the board.</p>\n</li>\n</ul>\n<h4 id=\"delete-list-by-id\"><strong>Delete List by ID</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE /api/lists/{boardId}/{listId}</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes a specific list identified by its unique ID and the associated board ID. This is useful for removing lists that are no longer needed.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete the list.</p>\n</li>\n</ul>\n<h4 id=\"update-list-title\"><strong>Update List Title</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/lists/{boardId}/{listId}/update-title</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the title of an existing list. This is useful for renaming lists to reflect changes in tasks or project structure.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to update the list title.</p>\n</li>\n</ul>\n<h4 id=\"update-card-order\"><strong>Update Card Order</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/lists/change-card-order</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the order of cards within lists, either within the same list or between different lists. This helps in maintaining the desired order of tasks or items.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s permission to modify card order.</p>\n</li>\n</ul>\n<h4 id=\"update-list-order\"><strong>Update List Order</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/lists/change-list-order</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the order of lists within a board. This is useful for reordering lists to match changing priorities or organizational preferences.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to update the list order.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<ol>\n<li><strong>List Creation and Initialization:</strong></li>\n</ol>\n<ul>\n<li><p>Users can create new lists using the <code>/api/lists/create</code> endpoint.</p>\n</li>\n<li><p>Lists are associated with specific boards, providing organizational context.</p>\n</li>\n</ul>\n<ol>\n<li><strong>List Management:</strong></li>\n</ol>\n<ul>\n<li><p>Retrieve all lists associated with a board via the <code>GET /api/lists/{boardId}</code> endpoint.</p>\n</li>\n<li><p>Access specific list details and update titles using the <code>PUT /api/lists/{boardId}/{listId}/update-title</code> endpoint.</p>\n</li>\n<li><p>Delete lists that are no longer needed using the <code>DELETE /api/lists/{boardId}/{listId}</code> endpoint.</p>\n</li>\n</ul>\n<ol>\n<li><strong>Order Management</strong>:</li>\n</ol>\n<ul>\n<li><p>Update the order of cards within lists using the <code>/api/lists/change-card-order</code> endpoint.</p>\n</li>\n<li><p>Update the order of lists within a board using the <code>/api/lists/change-list-order</code> endpoint.</p>\n</li>\n</ul>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify lists. This ensures the integrity and privacy of list data and ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"dd7412e5-6d10-46dc-aa52-d9462d15d594","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Card","item":[{"name":"Comment","item":[{"name":"Add Comment","id":"67ad4fd6-6486-42ad-a6a5-13ca96540399","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/add-comment","description":"<p>This endpoint makes an HTTP <code>POST</code> request to add a comment to a specific card within a list on a board. The request should include the board ID, list ID, and card ID in the URL path.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/list/{boardId}/{listId}/{cardId}/add-comment</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><strong>text</strong> (string, required): The content of the comment.</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","add-comment"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"8cf9d9b1-f269-4f7c-998d-1b2f821d7974","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"done\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-comment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"300"},{"key":"ETag","value":"W/\"12c-pJahM3gUzJRLOud4ujISIWjjUTQ\""},{"key":"Date","value":"Tue, 28 May 2024 15:04:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"userName\": \"Ex02\",\n        \"text\": \"done\",\n        \"isComment\": true,\n        \"color\": \"#2A3E54\",\n        \"_id\": \"6655f2601d353ee40be576b6\",\n        \"date\": \"2024-05-28T15:04:00.745Z\"\n    },\n    {\n        \"userName\": \"Ex02\",\n        \"text\": \"added this card to New List 3 \",\n        \"isComment\": false,\n        \"color\": \"#2A3E54\",\n        \"_id\": \"66554b8cf53e19aaa01647f2\",\n        \"date\": \"2024-05-28T03:12:12.046Z\"\n    }\n]"},{"id":"a7a1add5-a068-4980-ae08-181685120a92","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"done\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-comment"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 15:02:59 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"57cb4cb9-0438-4cad-bf93-922b298af2e8","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-comment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1264"},{"key":"Date","value":"Tue, 28 May 2024 15:02:05 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"1eb46df7-d800-4eba-a637-17c41a076576","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"done\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f83e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-comment"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 15:03:36 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"67ad4fd6-6486-42ad-a6a5-13ca96540399"},{"name":"Update Comment","id":"f8f57776-983e-4434-9d80-1898985efe9d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Updated Comment.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/664fcab64576154ba7fda365","description":"<p>This endpoint makes an HTTP <code>POST</code> request to update a specific comment on a card within a list on a board. The request should include the board ID, list ID, card ID, and comment ID in the URL path.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/comment/{boardId}/{listId}/{cardId}/{commentId}/update-comment</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>commentId</strong> (string, required): The unique identifier of the comment.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><strong>text</strong> (string, required): The updated content of the comment.</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","664fcab64576154ba7fda365"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"2ff03a5a-e707-4a30-9563-95419e4194d1","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"comment 2\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Tue, 28 May 2024 15:17:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"e1c8d91e-e649-4f49-8fde-05a60a29fafd","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Updated Comment.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"135"},{"key":"ETag","value":"W/\"87-guDIUyGtgj0fDq7J1yt5bfv6zoM\""},{"key":"Date","value":"Tue, 28 May 2024 15:14:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"Bad control character in string literal in JSON at position 81 (line 1 column 82)\"\n}"},{"id":"3dc78d5e-8e5f-4c6f-aa2e-fb33bccf5b39","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1264"},{"key":"Date","value":"Tue, 28 May 2024 15:15:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"cee425aa-dfd8-423d-af69-5c83d170bb4a","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"comment 2\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f52e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 15:15:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"f8f57776-983e-4434-9d80-1898985efe9d"},{"name":"Get Comments","id":"24c15d0e-e0c0-4c2c-9be4-40c01284f55c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be","description":"<p>This endpoint makes an HTTP <code>GET</code> request to retrieve all comments on a specific card within a list on a board. The request should include the board ID, list ID, and card ID in the URL path.</p>\n<p><strong>URL</strong>: <code>GET http://localhost:port/api/comment/{boardId}/{listId}/{cardId}</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"3c3b3758-ddad-46cf-b59d-591c2ecd559e","name":"Success Code","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1287"},{"key":"ETag","value":"W/\"507-ouPEnG0zJUQfVTRqL7ywJFbNka0\""},{"key":"Date","value":"Tue, 28 May 2024 15:19:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"date\": {\n        \"completed\": false\n    },\n    \"cover\": {\n        \"color\": \"#2A3E54\",\n        \"isSizeOne\": true\n    },\n    \"_id\": \"66554b8cf53e19aaa01647f1\",\n    \"title\": \"New title\",\n    \"description\": \"\",\n    \"labels\": [\n        {\n            \"text\": \"\",\n            \"color\": \"#61bd4f\",\n            \"backColor\": \"#519839\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f3\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#f2d600\",\n            \"backColor\": \"#d9b51c\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f4\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#ff9f1a\",\n            \"backColor\": \"#cd8313\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f5\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#eb5a46\",\n            \"backColor\": \"#b04632\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f6\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#c377e0\",\n            \"backColor\": \"#89609e\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f7\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#0079bf\",\n            \"backColor\": \"#055a8c\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f8\"\n        }\n    ],\n    \"members\": [],\n    \"watchers\": [],\n    \"attachments\": [],\n    \"activities\": [\n        {\n            \"userName\": \"Ex02\",\n            \"text\": \"comment 2\",\n            \"isComment\": true,\n            \"color\": \"#2A3E54\",\n            \"_id\": \"6655f2601d353ee40be576b6\",\n            \"date\": \"2024-05-28T15:04:00.745Z\"\n        },\n        {\n            \"userName\": \"Ex02\",\n            \"text\": \"added this card to New List 3 \",\n            \"isComment\": false,\n            \"color\": \"#2A3E54\",\n            \"_id\": \"66554b8cf53e19aaa01647f2\",\n            \"date\": \"2024-05-28T03:12:12.046Z\"\n        }\n    ],\n    \"checklists\": [],\n    \"owner\": \"66554a53f53e19aaa01647e0\",\n    \"__v\": 1,\n    \"listTitle\": \"New List 3 \",\n    \"listId\": \"66554a53f53e19aaa01647e0\",\n    \"boardId\": \"665549a7f53e19aaa01647d2\"\n}"},{"id":"0092ef15-dcc2-416e-aced-89d3f5adce00","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Tue, 28 May 2024 15:18:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"f34a7840-a81a-4ac7-980a-8a7aa647c460","name":"Bad Request","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1264"},{"key":"Date","value":"Tue, 28 May 2024 15:25:32 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"9e6212a5-3fed-4e15-b341-fc1208778ce6","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66552b8cf53e19aaa01647f1"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 15:19:56 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"24c15d0e-e0c0-4c2c-9be4-40c01284f55c"},{"name":"Delete a Comment","id":"e23ae704-99f7-476a-bfd1-385bdf192b38","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/664fcab64576154ba7fda365","description":"<p>This endpoint makes an HTTP <code>DELETE</code> request to delete a comment based on the provided board, list, card, and comment IDs. The request should include all these IDs in the URL path.</p>\n<p><strong>URL</strong> : <code>DELETE localhost:port/api/comment/:boardId/:listId/:cardId/:commentId</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board that hosts the list containing the card.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list that contains the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card that contains the comment.</p>\n</li>\n<li><p><code>commentId</code> (string, required): The unique identifier of the comment to be deleted.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the deletion of the comment or provide an error message if the comment, card, list, or board could not be found, or if there was an issue with the deletion process.</p>\n<p>EndFragment</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","664fcab64576154ba7fda365"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"1f8906ea-a085-471a-aafd-8874e448c3b7","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40b8576b6"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Tue, 28 May 2024 15:31:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"3b5ac281-d8f1-491a-b746-158c6a2809b8","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 15:27:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"f6b9257b-d4cd-4a64-81d5-556d16bd0da2","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\":\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1263"},{"key":"Date","value":"Tue, 28 May 2024 15:30:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;:\r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"2f574b9a-5c8d-4d45-b96a-21b064ef85e4","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"This is a sample comment for the card.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655f2601d353ee40be576b6"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 15:31:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"e23ae704-99f7-476a-bfd1-385bdf192b38"}],"id":"e46f7143-82f5-4223-b2d1-0c60e0d73abe","description":"<p>This API provides endpoints for managing comments within an application. It covers functionalities such as creating new comments, retrieving comment details, updating comments, and deleting comments. Below is an overview of the key functions:</p>\n<h4 id=\"add-comment\"><strong>Add Comment</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/card/:boardId/:listId/:cardId/add-comment</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to add a new comment to a specific card by providing the board ID, list ID, and card ID. This endpoint is used for adding comments or notes to a card.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is logged in.</p>\n</li>\n</ul>\n<h4 id=\"get-comments\"><strong>Get Comments</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>GET /api/card/:boardId/:listId/:cardId</code></p>\n</li>\n<li><p><strong>Function</strong>: Retrieves all comments associated with a specific card using its unique board ID, list ID, and card ID. This endpoint provides a list of all comments for a given card.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s identity and permissions.</p>\n</li>\n</ul>\n<h4 id=\"update-comment\"><strong>Update Comment</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/card/:boardId/:listId/:cardId/:commentId</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates an existing comment by specifying the board ID, list ID, card ID, and comment ID. This is useful for editing the content of a comment.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update the comment.</p>\n</li>\n</ul>\n<h4 id=\"delete-comment\"><strong>Delete Comment</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE /api/card/:boardId/:listId/:cardId/:commentId</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes a comment from a specific card by providing the board ID, list ID, card ID, and comment ID. This endpoint is used to remove comments that are no longer needed.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete the comment.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<p><strong>Comment Creation and Management</strong>:</p>\n<ul>\n<li><p>Users can add new comments to a card using the <code>POST /api/card/:boardId/:listId/:cardId/add-comment</code> endpoint.</p>\n</li>\n<li><p>Retrieve all comments associated with a card via the <code>GET /api/card/:boardId/:listId/:cardId</code> endpoint to display or review discussions and notes.</p>\n</li>\n</ul>\n<p><strong>Comment Editing and Deletion</strong>:</p>\n<ul>\n<li><p>Update the content of a comment using the <code>PUT /api/card/:boardId/:listId/:cardId/:commentId</code> endpoint for corrections or additional details.</p>\n</li>\n<li><p>Delete comments that are no longer relevant or required using the <code>DELETE /api/card/:boardId/:listId/:cardId/:commentId</code> endpoint.</p>\n</li>\n</ul>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify comments. This ensures the integrity and privacy of comment data and ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"e46f7143-82f5-4223-b2d1-0c60e0d73abe","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Members","item":[{"name":"Add Member","id":"5733ba20-b473-4814-9e54-92c881452c7d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/add-member","description":"<p>StartFragment</p>\n<p>This endpoint makes an HTTP <code>POST</code> request to add a member to a specific card within a list on a board. The request should include the board ID, list ID, and card ID in the URL path, and the member ID in the request body.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/member/{boardId}/{listId}/{cardId}/add-member</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><strong>memberId</strong> (string, required): The unique identifier of the member to be added.</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","add-member"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"568cb5ba-7f30-41ca-b15e-ad7a16da15b7","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"6655495ef53e19aaa01647ce\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-member"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"21"},{"key":"ETag","value":"W/\"15-ga8EF/lp+ThIsc8w/OHbk4hPrME\""},{"key":"Date","value":"Tue, 28 May 2024 15:36:42 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"success\"\n}"},{"id":"c3c81af0-fed2-4985-bf1b-9ed7dcfa5bfe","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-member"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 15:33:47 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"b8ad693b-6479-40ec-95bc-bf4558755f4a","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\":\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-member"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1242"},{"key":"Date","value":"Tue, 28 May 2024 15:34:28 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;mberId&quot;:\r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"20b6ee86-0fc6-4160-a4a3-515dbb987f22","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-member"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"168"},{"key":"ETag","value":"W/\"a8-q1VOQIWm/IqLiiyHC6nMWzIYCE4\""},{"key":"Date","value":"Tue, 28 May 2024 15:34:59 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error While adding a member\",\n    \"details\": \"Cast to ObjectId failed for value \\\"665549a7f53e19aa01647d2\\\" (type string) at path \\\"_id\\\" for model \\\"board\\\"\"\n}"}],"_postman_id":"5733ba20-b473-4814-9e54-92c881452c7d"},{"name":"Delete a Member","id":"835493dc-999a-4c23-8084-69d321fcd992","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/delete-member","description":"<p>This endpoint makes an HTTP <code>DELETE</code> request to remove a member from a specific card within a list on a board. The request should include the board ID, list ID, card ID, and member ID in the URL path.</p>\n<p><strong>URL</strong>: <code>DELETE http://localhost:port/api/member/{boardId}/{listId}/{cardId}/{memberId}/delete-member</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>memberId</strong> (string, required): The unique identifier of the member to be removed.</p>\n</li>\n</ul>\n<p>EndFragment  </p>\n<p>rtFragment</p>\n<p>This endpoint makes an HTTP DELETE request to remove a member from a specific card within a list on a board. The request should include the board ID, list ID, card ID, and member ID in the URL path.</p>\n<p><strong>URL</strong>: <code>DELETE http://localhost:port/api/member/{boardId}/{listId}/{cardId}/{memberId}/delete-member</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters-1\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>memberId</strong> (string, required): The unique identifier of the member to be removed.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","delete-member"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"e6fe0688-702b-4c5a-8ae7-08977afec6d5","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \"user123456\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-member"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 15:39:03 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"63460019-e38e-455d-be91-304c7e28c37c","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"memberId\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-member"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1242"},{"key":"Date","value":"Tue, 28 May 2024 15:40:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;berId&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"dad46c31-e8bd-4464-8038-ce02b20bba49","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/6654b348e657eec2e2f9e398/665644fed02c32d2a3cfcd46/6656463fd02c32d2a3cfcf37/665480ece657eec2e2f9e271/delete-member"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"21"},{"key":"ETag","value":"W/\"15-ga8EF/lp+ThIsc8w/OHbk4hPrME\""},{"key":"Date","value":"Fri, 07 Jun 2024 00:59:20 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"success\"\n}"},{"id":"6fa28fbf-807c-4191-8205-dc623510ab13","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/6654b348e657eec2e2f9e398/665644fed02c32d2a3cfcd46/6656463fd02c32d2a3cfcf37/665480ece657eec2e2f9e2712/delete-member"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"171"},{"key":"ETag","value":"W/\"ab-ejU1OqsJnLaU5tiOtTwJL6uVzCs\""},{"key":"Date","value":"Fri, 07 Jun 2024 00:59:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error While Deleting a member\",\n    \"details\": \"Cast to ObjectId failed for value \\\"665480ece657eec2e2f9e2712\\\" (type string) at path \\\"_id\\\" for model \\\"user\\\"\"\n}"}],"_postman_id":"835493dc-999a-4c23-8084-69d321fcd992"}],"id":"d44c457b-773e-4e00-a0d9-5746892de64b","description":"<p>This API provides endpoints for managing members within an application. It covers functionalities such as adding members to cards, deleting members from cards, and verifying permissions. Below is an overview of the key functions:</p>\n<h4 id=\"add-member\"><strong>Add Member</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/card/:boardId/:listId/:cardId/add-member</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to add a new member to a specific card by providing the board ID, list ID, and card ID. This endpoint is useful for collaborative tasks where multiple users need access to the same card.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has the permission to add members to the card.</p>\n</li>\n</ul>\n<h4 id=\"delete-member\"><strong>Delete Member</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE /api/card/:boardId/:listId/:cardId/:memberId/delete-member</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes a member from a specific card by providing the board ID, list ID, card ID, and member ID. This endpoint is used to remove members who are no longer part of the card's task.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete members from the card.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<p><strong>Member Management</strong>:</p>\n<ul>\n<li><p>Add new members to a card using the <code>POST /api/card/:boardId/:listId/:cardId/add-member</code> endpoint to facilitate collaboration.</p>\n</li>\n<li><p>Remove members from a card using the <code>DELETE /api/card/:boardId/:listId/:cardId/:memberId/delete-member</code> endpoint to manage team composition.</p>\n</li>\n</ul>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to add or delete members. This not only protects the integrity and privacy of card data but also ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"d44c457b-773e-4e00-a0d9-5746892de64b","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Label","item":[{"name":"Create a Label","id":"80047912-6232-4ffa-afd5-b09afdc26311","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"sample Label 4\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/create-label","description":"<p>This endpoint makes an HTTP <code>POST</code> request to add a label to a specific card within a list on a board. The request should include the board ID, list ID, and card ID in the URL path, and the label details in the request body.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/label/{boardId}/{listId}/{cardId}/create-label</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><strong>text</strong> (string, required): The text of the label.</p>\n</li>\n<li><p><strong>color</strong> (string, required): The color of the text.</p>\n</li>\n<li><p><strong>backColor</strong> (string, required): The background color of the label.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","create-label"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"3f449213-5e5a-42e5-a2a9-a52f6665aa8b","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"new sample label\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-label"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"64"},{"key":"ETag","value":"W/\"40-hkY8ztVKn3KDeC9TxCakVhEtaPw\""},{"key":"Date","value":"Tue, 28 May 2024 15:46:50 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"labelId\": \"6655fc6a1d353ee40be577b7\",\n    \"text\": \"new sample label\"\n}"},{"id":"0dcfe286-0f10-4056-9bc4-03ef23fd5bfc","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"sample Label 4\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/create-label"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Tue, 28 May 2024 03:07:50 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"31dbac7c-7a77-4d17-b6ff-500391712723","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\":\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-label"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1263"},{"key":"Date","value":"Tue, 28 May 2024 15:48:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;:\r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"426cc3a0-5e3c-404c-bf78-f28a28dbbc04","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"new sample label\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66554977f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-label"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"110"},{"key":"ETag","value":"W/\"6e-2IuYPbsujeuhs0OzcvnU+Wvb3yk\""},{"key":"Date","value":"Tue, 28 May 2024 15:48:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error adding a label to the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"80047912-6232-4ffa-afd5-b09afdc26311"},{"name":"Update a Label","id":"3cf36293-2db3-4e98-92f8-6f3224eea491","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"updated sample Label2\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/665222ccc47e3ecf39675681/update-label","description":"<p>This endpoint is used to update a label on a specific card within a board and list.</p>\n<p><strong>URL :</strong> <code>PUT localhost:port/api/label/:boardId/:listId/:cardId/:labelId/update-label</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card containing the label.</p>\n</li>\n<li><p><code>labelId</code> (string, required): The unique identifier of the label to be updated.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>text</code> (string, required): The updated text for the label.</p>\n</li>\n<li><p><code>color</code> (string, required): The updated text color for the label.</p>\n</li>\n<li><p><code>backColor</code> (string, required): The updated background color for the label.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the label or provide an error message if the label, card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","665222ccc47e3ecf39675681","update-label"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"d9448121-ba19-4cc0-a97e-1fd10c2967c1","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"updated sample Label3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/update-label"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"ETag","value":"W/\"6b-CjD3tE7kbta0ioEK3sSa98pbQUc\""},{"key":"Date","value":"Tue, 28 May 2024 15:52:56 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\",\n    \"updatedLabel\": {\n        \"labelId\": \"6655fc6a1d353ee40be577b7\",\n        \"text\": \"updated sample Label3\"\n    }\n}"},{"id":"65581cac-8b08-481a-8b64-a45f5c8eeb02","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"updated sample Label3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/update-label"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 15:54:40 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"ce27d1f2-5802-4f83-927e-1291736d282a","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/update-label"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1264"},{"key":"Date","value":"Tue, 28 May 2024 15:53:22 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"d32cdb82-b2e3-4aa5-8984-e7adadb4b54e","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"updated sample Label3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66554987f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/update-label"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"112"},{"key":"ETag","value":"W/\"70-NdyNPI+Pgh3SBJuzFrJOfTd+qSk\""},{"key":"Date","value":"Tue, 28 May 2024 15:53:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error updating a label in the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"3cf36293-2db3-4e98-92f8-6f3224eea491"},{"name":"Update a Selected Label","id":"aa45d8e3-e5dd-45af-b224-5a54f50ba1eb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66563474d02c32d2a3cfbd8d/6662730158895fd9388b4590/6662731658895fd9388b45b5/update-label-selection","description":"<p>This endpoint makes an HTTP PUT request to update a label on a specific card within a list on a board. The request should include the board ID, list ID, card ID, and label ID in the URL path, and the updated label details in the request body.</p>\n<p><strong>URL</strong>: <code>PUT http://localhost:port/api/label/{boardId}/{listId}/{cardId}/{labelId}/update-label</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>labelId</strong> (string, required): The unique identifier of the label.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><strong>text</strong> (string, required): The text of the label.</p>\n</li>\n<li><p><strong>color</strong> (string, required): The color of the text.</p>\n</li>\n<li><p><strong>backColor</strong> (string, required): The background color of the label.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","66563474d02c32d2a3cfbd8d","6662730158895fd9388b4590","6662731658895fd9388b45b5","update-label-selection"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"28dd8af6-817c-48b0-84c3-b4dc3548e736","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"selected\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66563474d02c32d2a3cfbd8d/6662730158895fd9388b4590/6662731658895fd9388b45b2/6662731658895fd9388b45b5/update-label-selection"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"120"},{"key":"ETag","value":"W/\"78-Dha+lB4Z56SerQ5a4impwWRzN7M\""},{"key":"Date","value":"Fri, 07 Jun 2024 04:06:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\",\n    \"updatedLabel\": {\n        \"labelId\": \"6662731658895fd9388b45b5\",\n        \"text\": \"\",\n        \"color\": \"#f2d600\",\n        \"selected\": true\n    }\n}"},{"id":"82f0d4ee-ec78-4a37-b387-b5d467e5919c","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66563474d02c32d2a3cfbd8d/6662730158895fd9388b4590/6662731658895fd9388b45b5/update-label-selection"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Sat, 08 Jun 2024 04:15:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"d2ed462e-82da-4b46-813b-30ef4c6a902d","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/66563474d02c32d2a3cfbd8d/6662730158895fd9388b4590/6662731658895fd9388b455/update-label-selection"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Sat, 08 Jun 2024 04:15:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"aa45d8e3-e5dd-45af-b224-5a54f50ba1eb"},{"name":"Delete Label","id":"edf568d6-05e9-4f9e-9962-30aded83d973","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66522bd10953a3473220cd78/delete-label","description":"<p>This endpoint makes an HTTP DELETE request to delete a label from a specific card within a list on a board. The request should include the board ID, list ID, card ID, and label ID in the URL path.</p>\n<p><strong>URL</strong>: <code>DELETE http://localhost:port/api/label/{boardId}/{listId}/{cardId}/{labelId}/delete-label</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>labelId</strong> (string, required): The unique identifier of the label.</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66522bd10953a3473220cd78","delete-label"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"ebe16cbf-7af3-4ec1-b14f-988dbc724644","name":"Success","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/6663db5d31e00c8791d50daf/delete-label"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sat, 08 Jun 2024 04:17:46 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"0573d48a-a1dd-4c2b-8cc0-840d2199a5ae","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/delete-label"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 06:27:05 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"1547756a-ffd8-4d46-ba9a-c201796e7789","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"delete","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/delete-label"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1286"},{"key":"Date","value":"Sat, 01 Jun 2024 06:27:32 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;d&#39;, &quot;delete&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"f716763d-22ec-40ba-8fdf-72df1e08f173","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6655fc6a1d353ee40be577b7/delete-label"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"110"},{"key":"ETag","value":"W/\"6e-Ruou5P7CKWmfyWh2/LOskaBS+a8\""},{"key":"Date","value":"Sat, 01 Jun 2024 06:26:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error deleting a label in the card\",\n    \"details\": \"Cannot read properties of null (reading '_id')\"\n}"}],"_postman_id":"edf568d6-05e9-4f9e-9962-30aded83d973"}],"id":"ad9740f1-44d2-46cc-b9e9-2663202ffdd1","description":"<p>This API provides endpoints for managing lists within an application. It covers functionalities such as creating new lists, retrieving list details, updating list properties, and managing card order within lists. Below is an overview of the key functions:</p>\n<h4 id=\"create-list\">Create List</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/list/create</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to create a new list by providing a title and board ID. This endpoint is used for initiating new lists within a board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is logged in and authorized to access the board.</p>\n</li>\n</ul>\n<h4 id=\"get-all-lists-by-board-id\">Get All Lists by Board ID</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>GET /api/list/{id}</code></p>\n</li>\n<li><p><strong>Function</strong>: Retrieves a list of all lists within a specific board using its unique ID. This is useful for displaying all lists in a board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s identity and permissions.</p>\n</li>\n</ul>\n<h4 id=\"delete-list-by-id\">Delete List by ID</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE /api/list/{boardId}/{listId}</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes a specific list from a board using the board ID and list ID. This is useful for removing lists that are no longer needed.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete the list.</p>\n</li>\n</ul>\n<h4 id=\"update-card-order\">Update Card Order</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/list/change-card-order</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the order of cards within lists. This is useful for reordering cards across different lists within a board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to update the order.</p>\n</li>\n</ul>\n<h4 id=\"update-list-order\">Update List Order</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/list/change-list-order</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the order of lists within a board. This helps in organizing lists according to user preference.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s authority to modify the list order.</p>\n</li>\n</ul>\n<h4 id=\"update-list-title\">Update List Title</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/list/{boardId}/{listId}/update-title</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the title of an existing list. This is useful for renaming lists to reflect changes in the project or task.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update the list.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<p><strong>List Creation and Initialization</strong>:</p>\n<ul>\n<li><p>Users can create new lists using the <code>POST /api/list/create</code> endpoint.</p>\n</li>\n<li><p>Initial details such as title can be set at creation or updated later.</p>\n</li>\n</ul>\n<p><strong>List Management</strong>:</p>\n<ul>\n<li><p>Retrieve all lists associated with a board through the <code>GET /api/list/{id}</code> endpoint to display in a board overview.</p>\n</li>\n<li><p>Delete lists using the <code>DELETE /api/list/{boardId}/{listId}</code> endpoint to remove unnecessary lists.</p>\n</li>\n</ul>\n<p><strong>List and Card Organization</strong>:</p>\n<ul>\n<li><p>Update the order of cards within and across lists using the <code>POST /api/list/change-card-order</code> endpoint.</p>\n</li>\n<li><p>Update the order of lists within a board using the <code>POST /api/list/change-list-order</code> endpoint.</p>\n</li>\n<li><p>Update the title of a list using the <code>PUT /api/list/{boardId}/{listId}/update-title</code> endpoint.</p>\n</li>\n</ul>\n<p>Response Codes</p>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request:</strong> Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized:</strong> Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden:</strong> User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found:</strong> Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify lists. This ensures the integrity and privacy of list data and guarantees that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"ad9740f1-44d2-46cc-b9e9-2663202ffdd1","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Attachment","item":[{"name":"Add Attachment","id":"2c8786be-2776-422a-9003-1ae822c7c3d7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/document.pdf\",\r\n    \"name\": \"Document3.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/add-attachment","description":"<p>This endpoint makes an HTTP <code>POST</code> request to add an attachment to a specific card within a list on a board. The request should include the board ID, list ID, and card ID in the URL path, and the attachment details in the request body.</p>\n<p><strong>URL</strong>: <code>POST http://localhost:port/api/attachment/{boardId}/{listId}/{cardId}/add-attachment</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><strong>link</strong> (string, required): The URL of the attachment.</p>\n</li>\n<li><p><strong>name</strong> (string, required): The name of the attachment</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","add-attachment"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"f2410efa-2a5f-4c6f-af7d-b6926bd45f68","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/document.pdf\",\r\n    \"name\": \"doc1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-attachment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"43"},{"key":"ETag","value":"W/\"2b-I6ZOhEnl4GYVJlyIECwSk2cONhI\""},{"key":"Date","value":"Fri, 31 May 2024 14:50:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"attachmentId\": \"6659e3af6a05de218638e0d2\"\n}"},{"id":"22e3a2be-0003-40b8-82ea-376582fa0a3c","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/document.pdf\",\r\n    \"name\": \"doc1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-attachment"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Fri, 31 May 2024 14:47:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"0dbaf4bf-db59-45a2-bb34-610d6d1766f4","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/document.pdf\",\r\n    \"name\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-attachment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1252"},{"key":"Date","value":"Fri, 31 May 2024 14:53:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;&quot;name&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"72397a7e-944d-4490-949c-bf0b0f8510f9","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/document.pdf\",\r\n    \"name\": \"doc1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19iaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/add-attachment"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"168"},{"key":"ETag","value":"W/\"a8-mAeUvI6niUffOs1v6txut7i3Tds\""},{"key":"Date","value":"Fri, 31 May 2024 14:52:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error adding an attachment\",\n    \"details\": \"Cast to ObjectId failed for value \\\"665549a7f53e19iaa01647d2\\\" (type string) at path \\\"_id\\\" for model \\\"board\\\"\"\n}"}],"_postman_id":"2c8786be-2776-422a-9003-1ae822c7c3d7"},{"name":"Update Attachment","id":"87267598-9456-432d-a332-8e22494e030f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/updated_document.pdf\",\r\n    \"name\": \"Updated_Document.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/update-attachment","description":"<p>This endpoint is used to update an attachment on a specific card within a board and list.</p>\n<p><strong>URL</strong> : <code>PUT localhost:port/api/attachment/:boardId/:listId/:cardId/:attachmentId/update-attachment</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card containing the attachment.</p>\n</li>\n<li><p><code>attachmentId</code> (string, required): The unique identifier of the attachment to be updated.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>link</code> (string, required): The updated link for the attachment.</p>\n</li>\n<li><p><code>name</code> (string, required): The updated name for the attachment.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the attachment or provide an error message if the attachment, card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","update-attachment"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"9abb02c1-ea7e-484a-9859-eafa3dc33939","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/updated_document.pdf\",\r\n    \"name\": \"Updated_Document1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-attachment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Fri, 31 May 2024 16:34:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"eead19ac-569e-4e0f-ba55-fb064cddf5f2","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/updated_document.pdf\",\r\n    \"name\": \"Updated_Document1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-attachment"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-f37b9hHEatPQH8Zttz18d9AtJDs\""},{"key":"Date","value":"Fri, 31 May 2024 16:47:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid signature\"\n}"},{"id":"dd5d737c-2995-480a-9d46-b0d8049d5405","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/updated_document.pdf\",\r\n    \"name\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-attachment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1252"},{"key":"Date","value":"Fri, 31 May 2024 16:48:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;&quot;name&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"b25d647a-0916-4783-b009-34997329d8ad","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"link\": \"https://example.com/updated_document.pdf\",\r\n    \"name\": \"Updated_Document1.pdf\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/765549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-attachment"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Fri, 31 May 2024 16:46:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"87267598-9456-432d-a332-8e22494e030f"},{"name":"Delete Attachment","id":"997e9432-78e6-40c9-a061-cdf8ddc0c1df","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66522ec6b44865dbef1d3a40/delete-attachment","description":"<p>This endpoint allows you to delete an attachment from a specific card within a list on a board. The request should include the board ID, list ID, card ID, and attachment ID in the URL path.</p>\n<p><strong>URL</strong>: <code>DELETE http://localhost:port/api/attachment/{boardId}/{listId}/{cardId}/{attachmentId}/delete-attachment</code></p>\n<p><strong>Authorization</strong>: Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><strong>boardId</strong> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><strong>listId</strong> (string, required): The unique identifier of the list.</p>\n</li>\n<li><p><strong>cardId</strong> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><strong>attachmentId</strong> (string, required): The unique identifier of the attachment to delete</p>\n</li>\n</ul>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66522ec6b44865dbef1d3a40","delete-attachment"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"e24077fd-4531-4896-b5e3-79cfaa948a1d","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6659e3af6a05de218638e0d2/delete-attachment"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Fri, 31 May 2024 16:51:33 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"893be22e-505d-4914-8b58-ea97abe4e49f","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6659e3af6a05de218638e0d2/delete-attachment"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Fri, 31 May 2024 16:52:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"f362b671-b3a9-47b7-97e8-ff7da8c9b5ce","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"cc","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6659e3af6a05de218638e0d2/delete-attachment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1282"},{"key":"Date","value":"Fri, 31 May 2024 16:52:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;c&#39;, &quot;cc&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"d0eaa5e9-ee2a-4274-99c6-6d7ec0114cb2","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a3f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/6659e3af6a05de218638e0d2/delete-attachment"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"103"},{"key":"ETag","value":"W/\"67-4DNKeu65hIQNP8G+puNvsxuGVIw\""},{"key":"Date","value":"Fri, 31 May 2024 16:53:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"Message\": \"Error deleting an attachment\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"997e9432-78e6-40c9-a061-cdf8ddc0c1df"}],"id":"e57e40f1-3dbb-4a95-bce2-0ae8caac58e4","description":"<p>This API provides endpoints for managing attachments within an application. It covers functionalities such as adding new attachments, deleting attachments, and updating attachment properties. Below is an overview of the key functions:</p>\n<h4 id=\"add-attachment\"><strong>Add Attachment</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/boards/{boardId}/{listId}/{cardId}/add-attachment</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to add a new attachment to a specific card within a list on a board by providing a link and name. This is useful for attaching relevant documents or resources to a card.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to add attachments to the card.</p>\n</li>\n</ul>\n<h4 id=\"delete-attachment\">Delete Attachment</h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE/api/boards/{boardId}/{listId}/{cardId}/{attachmentId}/delete-attachment</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes an attachment from a specific card within a list on a board. This is used to remove outdated or incorrect attachments.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete attachments from the card.</p>\n</li>\n</ul>\n<h4 id=\"update-attachment\"><strong>Update Attachment</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/boards/{boardId}/{listId}/{cardId}/{attachmentId}/update-attachment</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the link and/or name of an existing attachment on a specific card within a list on a board. This is useful for correcting or updating attachment details.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update attachments on the card.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<p><strong>Attachment Management</strong>:</p>\n<ul>\n<li><p>Add new attachments to cards using the <code>POST/api/boards/{boardId}/{listId}/{cardId}/add-attachment</code> to enrich card information with relevant resources.</p>\n</li>\n<li><p>Remove outdated or irrelevant attachments using the <code>DELETE /api/boards/{boardId}/{listId}/{cardId}/{attachmentId}/delete-attachment</code></p>\n</li>\n<li><p>Update attachment details with the <code>PUT/api/boards/{boardId}/{listId}/{cardId}/{attachmentId}/update-attachment</code> to maintain accurate and current information.</p>\n</li>\n</ul>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify attachments. This protects the integrity and privacy of attachment data and ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"e57e40f1-3dbb-4a95-bce2-0ae8caac58e4","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Due Date","item":[{"name":"Update Due Date","id":"ec747ba5-e9c8-4b46-88d3-13571c766dc4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"startDate\": \"2024-06-01T00:00:00Z\",\r\n    \"dueDate\": \"2024-06-10T00:00:00Z\",\r\n    \"dueTime\": \"18:00\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/update-dates","description":"<p>This endpoint is used to update the start and due dates of a specific card within a board and list.</p>\n<p><strong>URL</strong> : <code>PUT localhost:port/api/date/:boardId/:listId/:cardId/update-dates</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>startDate</code> (string, optional): The new start date for the card.</p>\n</li>\n<li><p><code>dueDate</code> (string, optional): The new due date for the card.</p>\n</li>\n<li><p><code>dueTime</code> (string, optional): The new due time for the card.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the start and due dates or provide an error message if the card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","update-dates"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"56a84d0a-02aa-4c42-a683-2582ec0a6da2","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"startDate\": \"2024-05-01T00:00:00Z\",\r\n    \"dueDate\": \"2024-06-10T00:00:00Z\",\r\n    \"dueTime\": \"00:00\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-dates"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Fri, 31 May 2024 16:57:33 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"3de219ce-c602-449e-a564-61ba7d9b8597","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"startDate\": \"2024-05-01T00:00:00Z\",\r\n    \"dueDate\": \"2024-06-10T00:00:00Z\",\r\n    \"dueTime\": \"00:00\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-dates"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"71"},{"key":"ETag","value":"W/\"47-f37b9hHEatPQH8Zttz18d9AtJDs\""},{"key":"Date","value":"Fri, 31 May 2024 17:00:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid signature\"\n}"},{"id":"d0caaef9-c396-4a26-b1fa-a47f28e84a89","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"startDate\": \"2024-05-01T00:00:00Z\",\r\n    \"dueDate\": \"2024-06-10T00:00:00Z\",\r\n    \"dueTime\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-dates"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1247"},{"key":"Date","value":"Fri, 31 May 2024 16:59:44 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;eTime&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"04268700-8843-40d6-a43d-24c40c7f915f","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"startDate\": \"2024-05-01T00:00:00Z\",\r\n    \"dueDate\": \"2024-06-10T00:00:00Z\",\r\n    \"dueTime\": \"00:00\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/765549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-dates"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Fri, 31 May 2024 16:58:03 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"ec747ba5-e9c8-4b46-88d3-13571c766dc4"},{"name":"Set Completed Date","id":"081b5ed3-8e12-4f6f-af2d-37e9022885ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/update-date-completed","description":"<p>This endpoint is used to update the completion status of the due date for a specific card within a board and list.</p>\n<p><strong>URL</strong> : <code>PUT localhost:port/api/date/:boardId/:listId/:cardId/update-date-completed</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><code>completed</code> (boolean, required): The new completion status for the due date.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the completion status of the due date or provide an error message if the card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","update-date-completed"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"d4dbb8e5-e318-4c22-b01c-10c3cadbb9cf","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/665ab893580f07e675b6367e/update-date-completed"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:59:48 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"b1d5e0b7-8cd3-47a9-84b6-e47e66a1301a","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/665ab893580f07e675b6367e/update-date-completed"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 06:02:33 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"c0a4b203-5801-4d62-aeb5-2671482712de","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/665ab893580f07e675b6367e/update-date-completed"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1247"},{"key":"Date","value":"Sat, 01 Jun 2024 06:07:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;leted&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"c17e2806-1c1b-4253-9ee7-74f50106999f","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/765549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/665ab893580f07e675b6367e/update-date-completed"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Sat, 01 Jun 2024 06:00:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"081b5ed3-8e12-4f6f-af2d-37e9022885ae"}],"id":"acad144a-98fc-4738-818b-d2a957daff05","description":"<p>This API provides endpoints for managing dates within an application. It covers functionalities such as updating start and due dates for cards, as well as marking dates as completed. Below is an overview of the key functions:</p>\n<h4 id=\"update-start-and-due-dates\"><strong>Update Start and Due Dates</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/date/{boardId}/{listId}/{cardId}/update-dates</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to update the start date, due date, and due time for a specific card within a board and list. This is useful for setting deadlines and schedules for tasks or projects.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update the card's dates.</p>\n</li>\n</ul>\n<h4 id=\"update-date-completion-status\"><strong>Update Date Completion Status</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/date/{boardId}/{listId}/{cardId}/update-date-completed</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to mark the due date of a specific card as completed or uncompleted. This helps in tracking the progress of tasks or projects.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s authority to update the card's completion status.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\"><strong>Usage Scenarios</strong></h3>\n<p><strong>Task Scheduling:</strong></p>\n<ul>\n<li><p>Users can set start and due dates for tasks using the <code>/api/date/{boardId}/{listId}/{cardId}/update-dates</code></p>\n</li>\n<li><p>Initial dates and times can be set at creation or updated later.</p>\n</li>\n</ul>\n<p><strong>Task Management:</strong></p>\n<ul>\n<li><p>Retrieve all tasks associated with the user and update their dates through the <code>PUT</code> to keep schedules current.</p>\n</li>\n<li><p>Mark tasks as complete or incomplete using the <code>/api/date/{boardId}/{listId}/{cardId}/update-date-completed</code> endpoint for progress tracking.</p>\n</li>\n</ul>\n<h3 id=\"response-codes\"><strong>Response Codes</strong></h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\"><strong>Security</strong></h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify dates. This not only protects the integrity and privacy of task data but also ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"acad144a-98fc-4738-818b-d2a957daff05","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Checklist","item":[{"name":"Create a Checklist","id":"70b89f13-bc01-45c2-bb01-b4dc25206584","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Sample Checklist\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/create-checklist","description":"<p>This endpoint is used to create a checklist for a specific card within a board and list.</p>\n<p><strong>URL</strong> : <code>POST localhost:port/api/checklist/:boardId/:listId/:cardId/create-checklist</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><code>title</code> (string, required): The title of the checklist.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the creation of the checklist and provide the checklist ID or provide an error message if the card, list, or board could not be found, or if there was an issue with the creation process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","create-checklist"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"9e88d040-07f7-43dc-9825-907cb6e18fbb","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Sample Checklist 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-checklist"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"42"},{"key":"ETag","value":"W/\"2a-3Ep491UgVaIO8NiBjByZlZB5at0\""},{"key":"Date","value":"Fri, 31 May 2024 17:08:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"checklistId\": \"665a03fb6a05de218638e1a9\"\n}"},{"id":"db44c66a-0053-42a5-9c17-01b9b1616dc7","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Sample Checklist 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-checklist"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Fri, 31 May 2024 17:11:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"118610fe-d4d7-499d-9396-e105704a0fe1","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-checklist"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1247"},{"key":"Date","value":"Fri, 31 May 2024 17:12:08 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;title&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"cc0775a2-1ec5-4b04-8f74-900b5191993c","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Sample Checklist 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/765549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/create-checklist"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"116"},{"key":"ETag","value":"W/\"74-hVMsaxnhINDmF8IcNNpG/+jE0LY\""},{"key":"Date","value":"Fri, 31 May 2024 17:11:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error creating a checklist in the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"70b89f13-bc01-45c2-bb01-b4dc25206584"},{"name":"Create a Checklist Item","id":"5b43db5e-7725-494d-bd7e-bf5808f86fdb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample Checklist Item\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66523b6fd3710aca534a1400/add-checklist-item","description":"<p>This endpoint is used to create a checklist item within a specific checklist on a card.</p>\n<p><strong>URL</strong> : <code>POST localhost:port/api/checklist/:boardId/:listId/:cardId/:checklistId/add-checklist-item</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><code>checklistId</code> (string, required): The unique identifier of the checklist.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><code>text</code> (string, required): The text content of the checklist item.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the creation of the checklist item and provide the checklist item ID or provide an error message if the card, list, or board could not be found, or if there was an issue with the creation process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66523b6fd3710aca534a1400","add-checklist-item"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"68c54251-09e2-46d0-9867-e89d78e48295","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample Checklist Item 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/add-checklist-item"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"46"},{"key":"ETag","value":"W/\"2e-su1IwC2FXqVlUw2HNZ6TewYhEO8\""},{"key":"Date","value":"Fri, 31 May 2024 17:14:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"checklistItemId\": \"665a05756a05de218638e1dc\"\n}"},{"id":"2c993ee6-5992-4660-bc4e-729c5fb16512","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample Checklist Item 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/add-checklist-item"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Fri, 31 May 2024 17:17:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"78d921cc-0380-4658-b6d1-dab0e420350d","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/add-checklist-item"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1269"},{"key":"Date","value":"Fri, 31 May 2024 17:18:27 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;text&quot;: \r\n            <br>}\r\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"b8c8d1a6-8ac3-40b1-8496-a1319262ef37","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample Checklist Item 1\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/65549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/add-checklist-item"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"183"},{"key":"ETag","value":"W/\"b7-u6CuMmLPVUkXhw7Vpt4wtYK/Sfk\""},{"key":"Date","value":"Fri, 31 May 2024 17:19:52 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error adding item to checklist in the card\",\n    \"details\": \"Cast to ObjectId failed for value \\\"65549a7f53e19aaa01647d2\\\" (type string) at path \\\"_id\\\" for model \\\"board\\\"\"\n}"}],"_postman_id":"5b43db5e-7725-494d-bd7e-bf5808f86fdb"},{"name":"Update Checklist Item","id":"b5e4b827-7b3d-44e7-ae00-3c99a5dc1f5d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample updated Checklist Item\"\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66523b6fd3710aca534a1400/66523c53cf69ad87d8d4efbe/set-checklist-item-text","description":"<p>This endpoint is used to update the text of a specific checklist item within a checklist on a card.</p>\n<h4 id=\"url\">URL</h4>\n<p><code>PUT localhost:port/api/checklist/:boardId/:listId/:cardId/:checklistId/:checklistItemId/set-checklist-item-text</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><code>checklistId</code> (string, required): The unique identifier of the checklist.</p>\n</li>\n<li><p><code>checklistItemId</code> (string, required): The unique identifier of the checklist item.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><code>text</code> (string, required): The new text content of the checklist item.</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the checklist item text or provide an error message if the card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66523b6fd3710aca534a1400","66523c53cf69ad87d8d4efbe","set-checklist-item-text"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"c9d9c72e-a073-4b7c-9ce7-726cd0e60dc3","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample updated Checklist Item 2\"\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-text"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Fri, 31 May 2024 17:23:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"4b55701d-a92d-4248-9e63-a12de70efa50","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample updated Checklist Item 2\"\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-text"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Fri, 31 May 2024 17:25:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"ffc45ea5-bf5c-42fd-9d5f-379df1ed8d3f","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-text"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1257"},{"key":"Date","value":"Fri, 31 May 2024 17:26:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;&quot;text&quot;: \r\n            <br>}\r\n            <br>\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"33b4291f-0090-4bfa-a5f2-e141388c105d","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"text\": \"Sample updated Checklist Item 2\"\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/675549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-text"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"121"},{"key":"ETag","value":"W/\"79-j7BSrVVhzuQC9gV8pBNL935t5Ws\""},{"key":"Date","value":"Fri, 31 May 2024 17:26:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error adding text  in checklist in the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"b5e4b827-7b3d-44e7-ae00-3c99a5dc1f5d"},{"name":"Set Checklist Item Completed","id":"db256eed-724a-479f-bd55-e9633a596bb0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66523b6fd3710aca534a1400/66523c53cf69ad87d8d4efbe/set-checklist-item-completed","description":"<p>This endpoint is used to update the completion status of a specific checklist item within a checklist on a card.</p>\n<p><strong>URL</strong>:<code>PUT/localhost:port/api/checklist/:boardId/:listId/:cardId/:checklistId/:checklistItemId/set-checklist-item-completed</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card.</p>\n</li>\n<li><p><code>checklistId</code> (string, required): The unique identifier of the checklist.</p>\n</li>\n<li><p><code>checklistItemId</code> (string, required): The unique identifier of the checklist item.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><code>completed</code> (boolean, required): Indicates whether the checklist item is completed (<code>true</code>) or not completed (<code>false</code>).</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the update of the checklist item completion status or provide an error message if the card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66523b6fd3710aca534a1400","66523c53cf69ad87d8d4efbe","set-checklist-item-completed"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"1d560aa8-7f5d-4ede-9c77-cf6a87775902","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-completed"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:00:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"b9d70ce0-2433-4bed-8f78-224bd12ff9a7","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-completed"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:00:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"bc0c3c4e-ddb5-421f-b76b-40886ec8ce72","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": \r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-completed"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1252"},{"key":"Date","value":"Sat, 01 Jun 2024 05:01:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;leted&quot;: \r\n            <br>}\r\n            <br>\n            <br>&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"db105fa5-57b2-462d-90cf-812f12f8b5d4","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"completed\": true\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/965549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/set-checklist-item-completed"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"126"},{"key":"ETag","value":"W/\"7e-2ptfkTKgjM/1+jwjo8KMIk4Hrus\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:02:07 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error setting completed in checklist in the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"db256eed-724a-479f-bd55-e9633a596bb0"},{"name":"Delete Checklist Item","id":"f74ceb4d-7d09-4dd3-95ad-133ddd77e7d6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66523b6fd3710aca534a1400/66523c53cf69ad87d8d4efbe/delete-checklist-item","description":"<p>This endpoint allows deleting an item from a checklist within a specific card.</p>\n<p><strong>URL:</strong><code>DELETElocalhost:port/api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/delete-checklist-item</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board containing the card.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card containing the checklist.</p>\n</li>\n<li><p><code>checklistId</code> (string, required): The unique identifier of the checklist containing the item to be deleted.</p>\n</li>\n<li><p><code>checklistItemId</code> (string, required): The unique identifier of the checklist item to be deleted.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response indicates the success or failure of the checklist item deletion operation.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66523b6fd3710aca534a1400","66523c53cf69ad87d8d4efbe","delete-checklist-item"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"24df90cc-560b-444d-b111-91e58991c219","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/delete-checklist-item"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:04:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"9a903ea7-6103-48c2-ad4f-d54719cfa6f6","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/delete-checklist-item"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:07:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"e36769fb-5ffb-418c-b11d-7e592bf3f5ba","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"delete","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/delete-checklist-item"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1286"},{"key":"Date","value":"Sat, 01 Jun 2024 05:08:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;d&#39;, &quot;delete&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"23903699-568a-4512-8e3b-6c167d221ea8","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/765549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/665a05756a05de218638e1dc/delete-checklist-item"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"124"},{"key":"ETag","value":"W/\"7c-aaCJE/AYotcRkPpwYViKaPc5tLg\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:08:59 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error deleting a item in checklist in the card\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"f74ceb4d-7d09-4dd3-95ad-133ddd77e7d6"},{"name":"Delete Checklist","id":"93d86666-a042-4d35-8991-b42a5314bc6d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/66523b6fd3710aca534a1400/delete-checklist","description":"<p>This endpoint allows deleting a checklist from a specific card within a board.</p>\n<p><strong>URL</strong> : <code>DELETE localhost:port/api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/delete-checklist</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board containing the card.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card containing the checklist.</p>\n</li>\n<li><p><code>checklistId</code> (string, required): The unique identifier of the checklist to be deleted.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response indicates the success or failure of the checklist deletion operation.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","66523b6fd3710aca534a1400","delete-checklist"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"2f4e2626-020b-4519-9159-670c18979e38","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/delete-checklist"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:10:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"7a0129ec-2253-424a-b3a9-7d544670b0a6","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/delete-checklist"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:12:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"4d7be41e-5927-4a1e-99d5-8a48d238c7cb","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"cc","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/delete-checklist"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1282"},{"key":"Date","value":"Sat, 01 Jun 2024 05:13:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;c&#39;, &quot;cc&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"e1b3feec-37cb-41fb-8226-b73906d3febd","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/6465549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/665a03fb6a05de218638e1a9/delete-checklist"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"181"},{"key":"ETag","value":"W/\"b5-7hh78CFrkIoo0RLP4T70G4a4GVE\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:14:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error deleting a checklist in the card\",\n    \"details\": \"Cast to ObjectId failed for value \\\"6465549a7f53e19aaa01647d2\\\" (type string) at path \\\"_id\\\" for model \\\"board\\\"\"\n}"}],"_postman_id":"93d86666-a042-4d35-8991-b42a5314bc6d"}],"id":"4ee55374-1f9b-4954-9380-0dac0aca4fe0","description":"<p>This API provides endpoints for managing checklists within an application. It covers functionalities such as creating new checklists, adding items to checklists, and updating checklist item statuses and texts. Below is an overview of the key functions:</p>\n<h4 id=\"create-checklist\"><strong>Create Checklist</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: POST /api/checklist/{boardId}/{listId}/{cardId}/create-checklist</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to create a new checklist within a specific card by providing a title. This is useful for organizing tasks or items related to the card.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to create a checklist.</p>\n</li>\n</ul>\n<h4 id=\"delete-checklist\"><strong>Delete Checklist</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: DELETE /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/delete-checklist</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to delete an existing checklist from a card. This is useful for removing outdated or completed checklists.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s authority to delete the checklist.</p>\n</li>\n</ul>\n<h4 id=\"add-checklist-item\"><strong>Add Checklist Item</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: POST /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/add-checklist-item</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to add a new item to an existing checklist by providing the item text. This helps in adding tasks or subtasks to the checklist.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to add items to the checklist.</p>\n</li>\n</ul>\n<h4 id=\"set-checklist-item-completed\"><strong>Set Checklist Item Completed</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: PUT /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/set-checklist-item-completed</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to mark a checklist item as completed or uncompleted. This helps in tracking the progress of tasks within the checklist.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s permission to update the completion status of the checklist item.</p>\n</li>\n</ul>\n<h4 id=\"set-checklist-item-text\"><strong>Set Checklist Item Text</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: PUT /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/set-checklist-item-text</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to update the text of an existing checklist item. This is useful for editing or correcting the item description.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update the item text.</p>\n</li>\n</ul>\n<h4 id=\"delete-checklist-item\"><strong>Delete Checklist Item</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: DELETE /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/delete-checklist-item</p>\n</li>\n<li><p><strong>Function</strong>: Allows users to delete an item from an existing checklist. This is useful for removing unnecessary or completed items.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to verify the user’s authority to delete the checklist item.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\"><strong>Usage Scenarios</strong></h3>\n<p><strong>Checklist Management:</strong></p>\n<ul>\n<li><p><strong>Create New Checklists</strong>: Users can create new checklists within a card using the /api/checklist/{boardId}/{listId}/{cardId}/create-checklist endpoint.</p>\n</li>\n<li><p><strong>Add Items to Checklists</strong>: Users can add items to a checklist using the /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/add-checklist-item endpoint.</p>\n</li>\n</ul>\n<p><strong>Task Tracking:</strong></p>\n<ul>\n<li><p><strong>Mark Items as Completed</strong>: Users can update the completion status of checklist items to track progress using the /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/set-checklist-item-completed endpoint.</p>\n</li>\n<li><p><strong>Edit Checklist Items</strong>: Users can edit the text of checklist items using the /api/checklist/{boardId}/{listId}/{cardId}/{checklistId}/{checklistItemId}/set-checklist-item-text endpoint.</p>\n</li>\n</ul>\n<p><strong>Checklist Cleanup:</strong></p>\n<ul>\n<li><strong>Delete Checklists and Items</strong>: Users can delete entire checklists or individual items that are no longer needed using the respective DELETE endpoints.</li>\n</ul>\n<h3 id=\"response-codes\"><strong>Response Codes</strong></h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\"><strong>Security</strong></h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify checklists. This not only protects the integrity and privacy of checklist data but also ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"4ee55374-1f9b-4954-9380-0dac0aca4fe0","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}},{"name":"Create a card","id":"eafa09d2-7f7c-40a7-9829-d6b8a4eca598","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Card titile 3\",\r\n    \"listId\": \"664fbb2bbd589309982d9df2\",\r\n    \"boardId\": \"664a610ccbb2928401b0fff6\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/create","description":"<p>This endpoint allows creating a new card within a specified list on a board.</p>\n<p><strong>URL</strong> : <code>POST localhost:port/api/card/create</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>title</code> (string, required): The title of the new card.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list where the card will be created.</p>\n</li>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board where the list belongs.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response includes the updated list details after adding the new card.</p>\n","urlObject":{"port":"3000","path":["api","card","create"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"1c4c813a-bff1-4bfc-bb94-513a3d767fca","name":"Success Code","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Card titile 4\",\r\n    \"listId\": \"66554a53f53e19aaa01647e0\",\r\n    \"boardId\": \"665549a7f53e19aaa01647d2\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/create"},"status":"Created","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1156"},{"key":"ETag","value":"W/\"484-hN8BcMUowYPOuYls2S8ORYpl5ls\""},{"key":"Date","value":"Tue, 28 May 2024 03:12:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"_id\": \"66554a53f53e19aaa01647e0\",\n    \"title\": \"New List 3 \",\n    \"cards\": [\n        {\n            \"date\": {\n                \"completed\": false\n            },\n            \"cover\": {\n                \"color\": null,\n                \"isSizeOne\": null\n            },\n            \"_id\": \"66554b8cf53e19aaa01647f1\",\n            \"title\": \"Card titile 4\",\n            \"description\": \"\",\n            \"labels\": [\n                {\n                    \"text\": \"\",\n                    \"color\": \"#61bd4f\",\n                    \"backColor\": \"#519839\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f3\"\n                },\n                {\n                    \"text\": \"\",\n                    \"color\": \"#f2d600\",\n                    \"backColor\": \"#d9b51c\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f4\"\n                },\n                {\n                    \"text\": \"\",\n                    \"color\": \"#ff9f1a\",\n                    \"backColor\": \"#cd8313\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f5\"\n                },\n                {\n                    \"text\": \"\",\n                    \"color\": \"#eb5a46\",\n                    \"backColor\": \"#b04632\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f6\"\n                },\n                {\n                    \"text\": \"\",\n                    \"color\": \"#c377e0\",\n                    \"backColor\": \"#89609e\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f7\"\n                },\n                {\n                    \"text\": \"\",\n                    \"color\": \"#0079bf\",\n                    \"backColor\": \"#055a8c\",\n                    \"selected\": false,\n                    \"_id\": \"66554b8cf53e19aaa01647f8\"\n                }\n            ],\n            \"members\": [],\n            \"watchers\": [],\n            \"attachments\": [],\n            \"activities\": [\n                {\n                    \"userName\": \"Ex02\",\n                    \"text\": \"added this card to New List 3 \",\n                    \"isComment\": false,\n                    \"color\": \"#2A3E54\",\n                    \"_id\": \"66554b8cf53e19aaa01647f2\",\n                    \"date\": \"2024-05-28T03:12:12.046Z\"\n                }\n            ],\n            \"checklists\": [],\n            \"owner\": \"66554a53f53e19aaa01647e0\",\n            \"__v\": 0\n        }\n    ],\n    \"owner\": \"665549a7f53e19aaa01647d2\",\n    \"__v\": 1\n}"},{"id":"2c4c6b11-9261-4772-b93d-df3ea06f3a8d","name":"Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Card titile 4\",\r\n    \"listId\": \"66554a53f53e19aaa01647e0\",\r\n    \"boardId\": \"665549a7f53e19aaa01647d2\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/create"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Tue, 28 May 2024 03:14:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"fc498d08-e049-4678-aa57-6dff0a5defe1","name":"Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\":\"\" ,\r\n    \"listId\": \"66554a53f53e19aaa01647e0\",\r\n    \"boardId\": \"665549a7f53e19aaa01647d2\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/create"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"28"},{"key":"ETag","value":"W/\"1c-tfOtdpamAv7M8+C5nx4Wt65xr9M\""},{"key":"Date","value":"Tue, 28 May 2024 03:15:36 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"missing fields\"\n}"},{"id":"fd18789e-0933-49a0-b957-31650c388222","name":"Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Card titile 4\",\r\n    \"listId\": \"66554a53f53e19aaa01647e0\",\r\n    \"boardId\": \"665549a7f53e19aaq01647d2\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/create"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 03:13:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"eafa09d2-7f7c-40a7-9829-d6b8a4eca598"},{"name":"Get card by ID","id":"69da83d0-d366-44a8-9078-d14c33a6c536","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be","description":"<p>This endpoint retrieves detailed information about a specific card identified by its ID within a board and list.</p>\n<p><strong>URL</strong> : <code>GET localhost:port/api/card/:boardId/:listId/:cardId</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board containing the card.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card to retrieve.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response includes detailed information about the card, including its properties and additional context such as the title of the list (<code>listTitle</code>), list ID (<code>listId</code>), and board ID (<code>boardId</code>).</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"27fb16b9-8bd6-4de5-b4d3-ef5bb0bec78a","name":"Success Code","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1145"},{"key":"ETag","value":"W/\"479-xtpyEOsOAgAqTGsOqbazaiLG8iQ\""},{"key":"Date","value":"Tue, 28 May 2024 03:17:03 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"date\": {\n        \"completed\": false\n    },\n    \"cover\": {\n        \"color\": null,\n        \"isSizeOne\": null\n    },\n    \"_id\": \"66554b8cf53e19aaa01647f1\",\n    \"title\": \"Card titile 4\",\n    \"description\": \"\",\n    \"labels\": [\n        {\n            \"text\": \"\",\n            \"color\": \"#61bd4f\",\n            \"backColor\": \"#519839\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f3\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#f2d600\",\n            \"backColor\": \"#d9b51c\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f4\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#ff9f1a\",\n            \"backColor\": \"#cd8313\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f5\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#eb5a46\",\n            \"backColor\": \"#b04632\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f6\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#c377e0\",\n            \"backColor\": \"#89609e\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f7\"\n        },\n        {\n            \"text\": \"\",\n            \"color\": \"#0079bf\",\n            \"backColor\": \"#055a8c\",\n            \"selected\": false,\n            \"_id\": \"66554b8cf53e19aaa01647f8\"\n        }\n    ],\n    \"members\": [],\n    \"watchers\": [],\n    \"attachments\": [],\n    \"activities\": [\n        {\n            \"userName\": \"Ex02\",\n            \"text\": \"added this card to New List 3 \",\n            \"isComment\": false,\n            \"color\": \"#2A3E54\",\n            \"_id\": \"66554b8cf53e19aaa01647f2\",\n            \"date\": \"2024-05-28T03:12:12.046Z\"\n        }\n    ],\n    \"checklists\": [],\n    \"owner\": \"66554a53f53e19aaa01647e0\",\n    \"__v\": 0,\n    \"listTitle\": \"New List 3 \",\n    \"listId\": \"66554a53f53e19aaa01647e0\",\n    \"boardId\": \"665549a7f53e19aaa01647d2\"\n}"},{"id":"38ec2e04-ba62-4470-85a3-1fa0aa03ed90","name":"Unauthorized","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Tue, 28 May 2024 03:16:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"c718bb7a-bf61-47fe-8cf6-2d610e08f1b2","name":"Bad Request","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"dd","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1282"},{"key":"Date","value":"Fri, 31 May 2024 17:05:28 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;d&#39;, &quot;dd&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at createStrictSyntaxError (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:169:10)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:86:15)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n        </pre>\n    </body>\n</html>"},{"id":"7e7e4473-3019-46db-88ce-cfee41593932","name":"Internal Server Error","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/685549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 03:17:36 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"69da83d0-d366-44a8-9078-d14c33a6c536"},{"name":"Update Card Details","id":"f6c8014b-fe6d-401a-8e41-57f23d99f42b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc0139d006a16a91e36f1","description":"<p>This endpoint allows updating specific fields of a card within a board and list.</p>\n<p><strong>URL</strong> : <code>PUT localhost:port/api/card/:boardId/:listId/:cardId</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board to which the card belongs.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card to be updated.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p>Fields to be updated (JSON object):</p>\n<ul>\n<li><p><code>title</code> (string, optional): The updated title of the card.</p>\n</li>\n<li><p><code>description</code> (string, optional): The updated description of the card.</p>\n</li>\n<li><p><code>labels</code> (array of objects, optional): Updated labels associated with the card.</p>\n</li>\n<li><p><code>dueDate</code> (date, optional): Updated due date of the card.</p>\n</li>\n<li><p>Add other fields as needed for your application.</p>\n</li>\n</ul>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response confirms the successful update of the card or provides an error message if the update fails due to authorization issues or other errors.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc0139d006a16a91e36f1"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"af0e0a59-dc6e-4f75-95e6-5ba8773207f4","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"New title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Tue, 28 May 2024 03:20:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"f3424b8e-f0b7-4677-86c0-f7093e91bdb7","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Tue, 28 May 2024 03:19:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"e99a8cb7-fd65-4ba5-a79b-4cf5421da373","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1265"},{"key":"Date","value":"Tue, 28 May 2024 03:21:07 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;title&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"e297e68b-3d9b-49a2-a4c7-3f3c2cf255ec","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Tue, 28 May 2024 03:21:45 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"f6c8014b-fe6d-401a-8e41-57f23d99f42b"},{"name":"Delete Card by ID","id":"691e328a-3234-4f88-b601-2ee9a261b621","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc0139d006a16a91e36f1/delete-card","description":"<p>This endpoint allows deleting a card from a specific board and list based on the provided card ID.</p>\n<h4 id=\"url\">URL</h4>\n<p><code>DELETE localhost:port/api/card/:boardId/:listId/:cardId/delete-card</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board from which the card will be deleted.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card to be deleted.</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response confirms the successful deletion of the card or provides an error message if the deletion fails due to authorization issues or other errors.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc0139d006a16a91e36f1","delete-card"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"906ec28a-4633-4cca-9f5c-c6af64883ca2","name":"Success Code","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-card"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"21"},{"key":"ETag","value":"W/\"15-uFFjCr0SbbbFb/CsC0M2sF++swo\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:32:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success\"\n}"},{"id":"d33383cd-5eec-477e-ac44-11b7b0edb14c","name":"Unauthorized","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-card"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"67"},{"key":"ETag","value":"W/\"43-IUmBNCVvXvmLfi4KOO9baY7O5SA\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:51:37 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"invalid token\"\n}"},{"id":"b3ffc0a0-4fa8-4435-aca2-9cc2f96a72d6","name":"Bad Request","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-card"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1265"},{"key":"Date","value":"Sat, 01 Jun 2024 05:33:22 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, &quot;{\r\n            <br> &nbsp; &nbsp;&quot;title&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\Task Flow\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"251da33b-e9d8-4e9b-a811-e9f4761d994c","name":"Internal Server Error","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"updated card title\"\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/delete-card"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2"},{"key":"ETag","value":"W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\""},{"key":"Date","value":"Sat, 01 Jun 2024 05:31:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{}"}],"_postman_id":"691e328a-3234-4f88-b601-2ee9a261b621"},{"name":"Update Cover","id":"977a6caf-686a-4467-80cf-d8f705438b33","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"color\": \"#FF5733\",\r\n    \"isSizeOne\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/664a610ccbb2928401b0fff6/664fbb2bbd589309982d9df2/664fc91e2870e2a2522179be/update-cover","description":"<p>This endpoint allows updating the cover of a specific card within a board.</p>\n<p><strong>URL</strong>: <code>PUT localhost:port/api/card/:boardId/:listId/:cardId/update-cover</code></p>\n<h4 id=\"authorization\">Authorization</h4>\n<p>Bearer Token</p>\n<h4 id=\"request-parameters\">Request Parameters</h4>\n<ul>\n<li><p><code>boardId</code> (string, required): The unique identifier of the board.</p>\n</li>\n<li><p><code>listId</code> (string, required): The unique identifier of the list containing the card.</p>\n</li>\n<li><p><code>cardId</code> (string, required): The unique identifier of the card whose cover is being updated.</p>\n</li>\n</ul>\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p><code>color</code> (string, required): The new color for the card cover.</p>\n</li>\n<li><p><code>isSizeOne</code> (boolean, required): Indicates whether the card cover should be a small size (<code>true</code>) or a larger size (<code>false</code>).</p>\n</li>\n</ul>\n<h4 id=\"response\">Response</h4>\n<p>The response will confirm the successful update of the card cover or provide an error message if the card, list, or board could not be found, or if there was an issue with the update process.</p>\n","urlObject":{"port":"3000","path":["api","card","664a610ccbb2928401b0fff6","664fbb2bbd589309982d9df2","664fc91e2870e2a2522179be","update-cover"],"host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"bbf4f989-9169-40e2-aba5-2b174aed28c4","name":"Success Code","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"color\": \"#2A3E54\",\r\n    \"isSizeOne\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-cover"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"22"},{"key":"ETag","value":"W/\"16-ChcZhlw1slqtGuDwxLsUclql5gE\""},{"key":"Date","value":"Tue, 28 May 2024 03:25:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success!\"\n}"},{"id":"2e2283f6-f7ac-44bf-988b-b39fd34bf9d0","name":"Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"color\": \"#FF5733\",\r\n    \"isSizeOne\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-cover"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"65"},{"key":"ETag","value":"W/\"41-OB+50NqOQLMCsu4UHB98c8ofG4E\""},{"key":"Date","value":"Tue, 28 May 2024 03:23:14 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization token invalid\",\n    \"details\": \"jwt expired\"\n}"},{"id":"c885492b-6268-4c9c-a61f-c28f17603bd2","name":"Bad Request","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"color\": \"#2A3E54\",\r\n    \"isSizeOne\": \r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa01647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-cover"},"status":"Bad Request","code":400,"_postman_previewlanguage":"html","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'none'"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1242"},{"key":"Date","value":"Tue, 28 May 2024 03:26:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"en\">\n    <head>\n        <meta charset=\"utf-8\">\n        <title>Error</title>\n    </head>\n    <body>\n        <pre>SyntaxError: Unexpected token &#39;}&#39;, ...&quot;zeOne&quot;: \r\n            <br>}&quot; is not valid JSON\n            <br> &nbsp; &nbsp;at JSON.parse (&lt;anonymous&gt;)\n            <br> &nbsp; &nbsp;at parse (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\types\\json.js:92:19)\n            <br> &nbsp; &nbsp;at C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\body-parser\\lib\\read.js:128:18\n            <br> &nbsp; &nbsp;at AsyncResource.runInAsyncScope (node:async_hooks:206:9)\n            <br> &nbsp; &nbsp;at invokeCallback (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:238:16)\n            <br> &nbsp; &nbsp;at done (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:227:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.onEnd (C:\\Users\\samad\\Desktop\\TASK-FLOW\\IT22242024taskflow\\backend\\node_modules\\raw-body\\index.js:287:7)\n            <br> &nbsp; &nbsp;at IncomingMessage.emit (node:events:519:28)\n            <br> &nbsp; &nbsp;at endReadableNT (node:internal/streams/readable:1696:12)\n            <br> &nbsp; &nbsp;at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n        </pre>\n    </body>\n</html>"},{"id":"c155e028-2fb5-4d91-91b7-255f169b2e13","name":"Internal Server Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"color\": \"#2A3E54\",\r\n    \"isSizeOne\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"localhost:3000/api/card/665549a7f53e19aaa00647d2/66554a53f53e19aaa01647e0/66554b8cf53e19aaa01647f1/update-cover"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"104"},{"key":"ETag","value":"W/\"68-J5SvC22uOCBjiGQ+6yTJPKCmLZY\""},{"key":"Date","value":"Tue, 28 May 2024 03:26:50 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"errMessage\": \"Error while updating cover\",\n    \"details\": \"Cannot read properties of null (reading 'lists')\"\n}"}],"_postman_id":"977a6caf-686a-4467-80cf-d8f705438b33"}],"id":"1d1091a9-1ac9-4815-a967-d11515a32007","description":"<p>This API provides endpoints for managing cards within an application. It covers functionalities such as creating new cards, retrieving card details, updating card properties, and deleting cards. Below is an overview of the key functions:</p>\n<h4 id=\"create-card\"><strong>Create Card</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>POST /api/card/create</code></p>\n</li>\n<li><p><strong>Function</strong>: Allows users to create a new card by providing a title, list ID, and board ID. This endpoint is used to add new tasks or items to a list within a board.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is logged in.</p>\n</li>\n</ul>\n<h4 id=\"get-card-by-id\"><strong>Get Card by ID</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>GET /api/card/:boardId/:listId/:cardId</code></p>\n</li>\n<li><p><strong>Function</strong>: Fetches detailed information about a specific card using its unique ID. This includes the card's title, list ID, board ID, and other relevant details.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has access to the card details.</p>\n</li>\n</ul>\n<h4 id=\"update-card\"><strong>Update Card</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/card/:boardId/:listId/:cardId</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the properties of an existing card. This is useful for modifying card details such as the title or other attributes.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to update the card.</p>\n</li>\n</ul>\n<h4 id=\"update-card-cover\"><strong>Update Card Cover</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>PUT /api/card/:boardId/:listId/:cardId/update-cover</code></p>\n</li>\n<li><p><strong>Function</strong>: Updates the cover of an existing card, allowing customization of the card's visual appearance.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user is authorized to change the card's cover.</p>\n</li>\n</ul>\n<h4 id=\"delete-card\"><strong>Delete Card</strong></h4>\n<ul>\n<li><p><strong>Endpoint</strong>: <code>DELETE /api/card/:boardId/:listId/:cardId/delete-card</code></p>\n</li>\n<li><p><strong>Function</strong>: Deletes a card from a list within a board using the card's unique ID. This is useful for removing tasks or items that are no longer needed.</p>\n</li>\n<li><p><strong>Authorization</strong>: Requires a valid authentication token to ensure the user has permission to delete the card.</p>\n</li>\n</ul>\n<h3 id=\"usage-scenarios\">Usage Scenarios</h3>\n<p><strong>Card Creation and Initialization</strong>:</p>\n<ul>\n<li><p>Users can create new cards using the <code>/api/card/create</code> endpoint.</p>\n</li>\n<li><p>Cards are associated with specific lists and boards, providing organizational context.</p>\n</li>\n</ul>\n<p><strong>Card Management</strong>:</p>\n<ul>\n<li><p>Retrieve specific card details via the <code>GET /api/card/:boardId/:listId/:cardId</code> endpoint for viewing or editing purposes.</p>\n</li>\n<li><p>Update card properties such as title and other attributes using the <code>PUT /api/card/:boardId/:listId/:cardId</code> endpoint.</p>\n</li>\n<li><p>Delete cards that are no longer needed using the <code>DELETE /api/card/:boardId/:listId/:cardId/delete-card</code> endpoint.</p>\n</li>\n</ul>\n<p><strong>Card Customization</strong>:</p>\n<ul>\n<li>Update the cover of a card using the <code>/api/card/:boardId/:listId/:cardId/update-cover</code> endpoint to change its visual appearance and make it more identifiable.</li>\n</ul>\n<h3 id=\"response-codes\">Response Codes</h3>\n<ul>\n<li><p><strong>200 OK</strong>: Successful operation.</p>\n</li>\n<li><p><strong>201 Created</strong>: Successful resource creation.</p>\n</li>\n<li><p><strong>400 Bad Request</strong>: Invalid input or missing parameters.</p>\n</li>\n<li><p><strong>401 Unauthorized</strong>: Authentication failure or missing/invalid token.</p>\n</li>\n<li><p><strong>403 Forbidden</strong>: User does not have permission to perform the action.</p>\n</li>\n<li><p><strong>404 Not Found</strong>: Resource not found.</p>\n</li>\n</ul>\n<h3 id=\"security\">Security</h3>\n<p>Authentication tokens must be included in the headers of requests to access or modify cards. This ensures the integrity and privacy of card data and ensures that only authorized users can make changes. Token verification is essential for both authentication and authorization, ensuring that users have the necessary permissions for the actions they are attempting to perform.</p>\n","_postman_id":"1d1091a9-1ac9-4815-a967-d11515a32007","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":true,"source":{"_postman_id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","id":"57ea8b7a-d435-4da5-b1ff-de4316cc1377","name":"TaskFlow API","type":"collection"}}}],"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]}},"event":[{"listen":"prerequest","script":{"id":"da2af67e-c63e-4a20-8e73-7484d4c2f121","type":"text/javascript","packages":{},"exec":[""]}},{"listen":"test","script":{"id":"d3ec2f0a-9357-4661-994a-d07205efdab4","type":"text/javascript","packages":{},"exec":[""]}}]}