{"info":{"_postman_id":"b0d1f610-d4d9-4145-8a9e-92e4b25ebcda","name":"Bookstore API","description":"<html><head></head><body><p>과제2 서점사이트 구현입니다.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"48959495","collectionId":"b0d1f610-d4d9-4145-8a9e-92e4b25ebcda","publishedId":"2sB3dTs88x","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2025-12-14T18:55:37.000Z"},"item":[{"name":"auth","item":[{"name":"로그인","event":[{"listen":"prerequest","script":{"id":"8717b36e-61a9-4337-9847-76aae581cb31","exec":[""],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"test","script":{"id":"f595405e-f36a-47ce-8f20-c004f7ea6d6e","exec":["const json = pm.response.json();\r","\r","// 상태코드 확인\r","pm.test(\"Login success\", () => {\r","  pm.response.to.have.status(200);\r","});\r","\r","// accessToken 저장\r","if (json.data?.accessToken) {\r","  pm.environment.set(\"accessToken\", json.data.accessToken);\r","}\r","\r","// refreshToken 저장\r","if (json.data?.refreshToken) {\r","  pm.environment.set(\"refreshToken\", json.data.refreshToken);\r","}\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"1f5eed90-7ab9-42d9-b8fc-a44e55254abc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"user1@test.com\",\r\n  \"password\": \"password123\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/login","urlObject":{"path":["auth","login"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"b7934d78-7012-41a4-afd7-a6de9cb9a171","name":"200","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"email\": \"user1@test.com\",\r\n  \"password\": \"password123\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/login"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"99"},{"key":"Date","value":"Sun, 14 Dec 2025 10:27:23 GMT"},{"key":"X-RateLimit-Reset","value":"1765708944"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"397"},{"key":"ETag","value":"W/\"18d-+8QZm+hOzB6BvzF/scJjxwongNk\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"Login successful\",\n    \"data\": {\n        \"accessToken\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjYsInJvbGUiOiJVU0VSIiwiaWF0IjoxNzY1NzA4MDQzLCJleHAiOjE3NjU3MTE2NDN9.x86l0MdsGupfNXcpIflHpf78EjBWmTugWqiSuR7DdJk\",\n        \"refreshToken\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjYsImlhdCI6MTc2NTcwODA0MywiZXhwIjoxNzY2MzEyODQzfQ.a45VZqyPmucK8nskzEiUiggIe73wug9xrm-TdFNg8ZU\"\n    }\n}"},{"id":"94903030-cb96-4acb-98e2-a8a0a7e5fec9","name":"401","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"email\": \"noooooooo@test.com\",\r\n  \"password\": \"password123\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/login"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"97"},{"key":"Date","value":"Sun, 14 Dec 2025 10:28:04 GMT"},{"key":"X-RateLimit-Reset","value":"1765708944"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"147"},{"key":"ETag","value":"W/\"93-EJdavFcWeor2Efo2a4P6cV9DkhE\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:28:04.836Z\",\n    \"path\": \"/auth/login\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"이메일이 올바르지 않습니다\"\n}"},{"id":"211aa822-6b51-4133-845a-c456dbd3a98e","name":"422","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"password\": \"password123\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/login"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"99"},{"key":"Date","value":"Sun, 14 Dec 2025 10:42:55 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"229"},{"key":"ETag","value":"W/\"e5-mrFLOBn4cWIBtDuRprNCu6nmH1c\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:42:55.621Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"입력값 검증 실패\",\n    \"details\": {\n        \"formErrors\": [],\n        \"fieldErrors\": {\n            \"email\": [\n                \"Invalid input: expected string, received undefined\"\n            ]\n        }\n    }\n}"}],"_postman_id":"1f5eed90-7ab9-42d9-b8fc-a44e55254abc"},{"name":"access token 재발급","event":[{"listen":"test","script":{"id":"25778926-95ea-44f2-b99f-152b7b6423a6","exec":["const json = pm.response.json();\r","\r","pm.test(\"Refresh success\", () => {\r","  pm.response.to.have.status(200);\r","});\r","\r","if (json.data?.accessToken) {\r","  pm.environment.set(\"accessToken\", json.data.accessToken);\r","}\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"b7df93a4-69bf-43ea-aa66-c15f178516c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/refresh","urlObject":{"path":["auth","refresh"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"91e0e0ef-768f-4a78-856c-8bcfc92d20e2","name":"200","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/refresh"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"98"},{"key":"Date","value":"Sun, 14 Dec 2025 10:43:17 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"249"},{"key":"ETag","value":"W/\"f9-oGJvDHzVitDNGPf95OVTIx0GFq4\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"Access token 재발급 성공\",\n    \"data\": {\n        \"accessToken\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOjYsInJvbGUiOiJVU0VSIiwiaWF0IjoxNzY1NzA4OTk4LCJleHAiOjE3NjU3MTI1OTh9._yTAIZiVSe7rHLqH6Y10gCKV9rU4vB98eg0FUBtBrBw\"\n    }\n}"},{"id":"c5530c36-e885-47a7-b83f-dc908e45edc1","name":"404","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/refresh"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"87"},{"key":"Date","value":"Sun, 14 Dec 2025 11:24:37 GMT"},{"key":"X-RateLimit-Reset","value":"1765711880"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"129"},{"key":"ETag","value":"W/\"81-hc1esfmaOVyJkh2j959tROSAJP8\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:24:37.540Z\",\n    \"path\": \"/auth/refresh\",\n    \"status\": 404,\n    \"code\": \"USER_NOT_FOUND\",\n    \"message\": \"사용자 없음\"\n}"}],"_postman_id":"b7df93a4-69bf-43ea-aa66-c15f178516c9"},{"name":"로그아웃","event":[{"listen":"test","script":{"id":"2485d380-4d5e-4910-97de-e075a3afb1b4","exec":["pm.environment.unset(\"accessToken\");\r","pm.environment.unset(\"refreshToken\");\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"ed52df86-a847-4321-9f2c-4b912ce27f4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/logout","urlObject":{"path":["auth","logout"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"7a15870f-36a6-4a4e-831d-d04a5a64dc2a","name":"200","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/logout"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"97"},{"key":"Date","value":"Sun, 14 Dec 2025 10:44:00 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Set-Cookie","value":"refreshToken=; Path=/; Expires=Thu, 01 Jan 1970 00:00:00 GMT; HttpOnly; SameSite=Strict"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"62"},{"key":"ETag","value":"W/\"3e-SvWfIknBGyPRwOFwQzGv2IsAaO0\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"로그아웃 완료\",\n    \"data\": {}\n}"},{"id":"b7dd4008-e936-481d-b50e-049fc44e5de0","name":"401","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"refreshToken\": \"\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/auth/logout"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"95"},{"key":"Date","value":"Sun, 14 Dec 2025 10:44:46 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-dZUqVevMrJUyHMfTwB10YsH4SH8\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:44:46.610Z\",\n    \"path\": \"/auth/logout\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"ed52df86-a847-4321-9f2c-4b912ce27f4e"}],"id":"07f09bb6-e9d8-4cf0-a92e-b6cb43abd168","_postman_id":"07f09bb6-e9d8-4cf0-a92e-b6cb43abd168","description":""},{"name":"users","item":[{"name":"회원가입","event":[{"listen":"test","script":{"id":"04058537-a791-4a3a-8654-037480162bad","exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"adb86c51-6258-4e3f-97f4-0fded5fb8535","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"user1111@test.com\",\r\n    \"password\": \"password123\",\r\n    \"name\":\"유저1111\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/signup","urlObject":{"path":["users","signup"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"da46cddb-b644-4e03-a17f-5556d6e6a4b2","name":"201","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"user1111@test.com\",\r\n    \"password\": \"password123\",\r\n    \"name\":\"유저1111\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/signup"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"97"},{"key":"ETag","value":"W/\"61-rD46YXVXpIhq5OiCB89WE5WP1ic\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:46:07 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"회원가입 완료\",\n    \"data\": {\n        \"id\": 21,\n        \"email\": \"user1111@test.com\"\n    }\n}"},{"id":"ac6aa592-9dcd-42ff-bc5f-b96fc8835d37","name":"422","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"password\": \"password123\",\r\n    \"name\":\"유저1111\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/signup"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"229"},{"key":"ETag","value":"W/\"e5-5k4KrggbH2Tl4Z0nH7hFFMcKP3o\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:46:33 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:46:33.475Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"입력값 검증 실패\",\n    \"details\": {\n        \"formErrors\": [],\n        \"fieldErrors\": {\n            \"email\": [\n                \"Invalid input: expected string, received undefined\"\n            ]\n        }\n    }\n}"},{"id":"243198ad-8a9c-41a4-9077-04f4e8b32a5b","name":"409","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"user1@test.com\",\r\n    \"password\": \"password123\",\r\n    \"name\":\"유저1111\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/signup"},"status":"Conflict","code":409,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"146"},{"key":"ETag","value":"W/\"92-h1i9Ndc4eVBeuWD+/qiVqNmJDDA\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:46:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:46:55.143Z\",\n    \"path\": \"/users/signup\",\n    \"status\": 409,\n    \"code\": \"DUPLICATE_RESOURCE\",\n    \"message\": \"이미 존재하는 이메일\"\n}"}],"_postman_id":"adb86c51-6258-4e3f-97f4-0fded5fb8535"},{"name":"내정보","event":[{"listen":"test","script":{"id":"a7143a07-1b0a-4e8b-9279-3e34acddd123","exec":["pm.test(\"Unauthorized without token\", () => {\r","  pm.response.to.have.status(401);\r","});\r","\r","const json = pm.response.json();\r","pm.expect(json.status).to.eql(\"fail\");\r","pm.expect(json.code).to.eql(\"UNAUTHORIZED\");\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"8b1e122b-0295-414f-9f31-e8c24f6df3d2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/users/me","urlObject":{"path":["users","me"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"31a5b243-3663-4745-b5e6-c8391db8f6a1","name":"200","originalRequest":{"method":"GET","header":[],"url":"/users/me"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"ETag","value":"W/\"6b-J/khHY7XbKqqDRGIL/vv2MnsSmE\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:47:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": null,\n    \"data\": {\n        \"id\": 6,\n        \"email\": \"user1@test.com\",\n        \"name\": \"유저1\",\n        \"role\": \"USER\"\n    }\n}"},{"id":"8ddcc7fe-a5b8-48fc-858d-f4d40a25ae05","name":"401","originalRequest":{"method":"GET","header":[],"url":"/users/me"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"140"},{"key":"ETag","value":"W/\"8c-RFbUi1rHcYsfIA8lxOA0yFmLkFI\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:48:09 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:48:09.479Z\",\n    \"path\": \"/users/me\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"8b1e122b-0295-414f-9f31-e8c24f6df3d2"},{"name":"내  정보 수정","id":"29fbca0a-12da-4491-8c80-4e6ba2d2e6aa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/me","urlObject":{"path":["users","me"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"ac786f7d-fa37-4a65-b087-91dae73a1e58","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\" : \"new이름\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/me"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"95"},{"key":"ETag","value":"W/\"5f-EMjAWvix8CYfZW85lgrx7A9Xrog\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:48:53 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"회원 정보 수정 완료\",\n    \"data\": {\n        \"id\": 6,\n        \"name\": \"new이름\"\n    }\n}"},{"id":"69aefdb9-804b-4a5a-9de3-8e1cb6119dee","name":"401","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n    \"name\" : \"new이름\"\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/me"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"140"},{"key":"ETag","value":"W/\"8c-tgs6nn9vSiSrU439ZRXq+c/p5As\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:49:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:49:06.838Z\",\n    \"path\": \"/users/me\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"1620bf93-52bc-4b2c-8b89-a7c19bec7ce3","name":"422","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n\r\n}","options":{"raw":{"language":"json"}}},"url":"/users/me"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"222"},{"key":"ETag","value":"W/\"de-ev1ZZfGeQhVyiM3NzkH6KsSOlLA\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:31:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:31:19.600Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"입력값 검증 실패\",\n    \"details\": {\n        \"formErrors\": [\n            \"수정할 값이 최소 하나 이상 필요합니다\"\n        ],\n        \"fieldErrors\": {}\n    }\n}"}],"_postman_id":"29fbca0a-12da-4491-8c80-4e6ba2d2e6aa"},{"name":"탈퇴","id":"370e83a0-944e-495d-94d1-a11c6ace888e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/users/me","urlObject":{"path":["users","me"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"aeea30b4-b949-485f-8c9d-71dfe0662d8c","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/users/me"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-nb9HDeuOYegauYiozQCKx27EaUg\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:49:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"회원 탈퇴 완료\",\n    \"data\": {}\n}"},{"id":"7cc1ebf9-83d5-4332-8837-0625bd35e947","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/users/me"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"140"},{"key":"ETag","value":"W/\"8c-UPj/2gaUfRidtglr+XzuDAvnqzc\""},{"key":"Date","value":"Sun, 14 Dec 2025 10:49:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:49:55.576Z\",\n    \"path\": \"/users/me\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"370e83a0-944e-495d-94d1-a11c6ace888e"}],"id":"4f0db9a6-1aed-453b-9058-b45d3d1c4fe4","_postman_id":"4f0db9a6-1aed-453b-9058-b45d3d1c4fe4","description":""},{"name":"books","item":[{"name":"도서 목록 조회","id":"e4216aaf-8369-49cc-bbbe-55a47bb0e716","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"/books?page=1&limit=20&sort=createdAt&order=desc","urlObject":{"path":["books"],"host":[""],"query":[{"key":"page","value":"1"},{"key":"limit","value":"20"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"}],"variable":[]}},"response":[{"id":"6c561d82-2c66-454e-9a2a-1c3126ce5088","name":"200","originalRequest":{"method":"GET","header":[],"url":"/books"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"91"},{"key":"Date","value":"Sun, 14 Dec 2025 10:51:04 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2737"},{"key":"ETag","value":"W/\"ab1-0UVN2b5nrCKQ/N6y7orXpz2+Gek\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 2,\n                \"title\": \"책 2\",\n                \"author\": \"저자1\",\n                \"price\": 12376,\n                \"stock\": 37,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 3,\n                \"title\": \"책 3\",\n                \"author\": \"저자9\",\n                \"price\": 11824,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 4,\n                \"title\": \"책 4\",\n                \"author\": \"저자5\",\n                \"price\": 27787,\n                \"stock\": 32,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 5,\n                \"title\": \"책 5\",\n                \"author\": \"저자8\",\n                \"price\": 26307,\n                \"stock\": 15,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 6,\n                \"title\": \"책 6\",\n                \"author\": \"저자7\",\n                \"price\": 16249,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 7,\n                \"title\": \"책 7\",\n                \"author\": \"저자1\",\n                \"price\": 20706,\n                \"stock\": 11,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 8,\n                \"title\": \"책 8\",\n                \"author\": \"저자3\",\n                \"price\": 14376,\n                \"stock\": 5,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 9,\n                \"title\": \"책 9\",\n                \"author\": \"저자6\",\n                \"price\": 15896,\n                \"stock\": 34,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 10,\n                \"title\": \"책 10\",\n                \"author\": \"저자10\",\n                \"price\": 29277,\n                \"stock\": 14,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 11,\n                \"title\": \"책 11\",\n                \"author\": \"저자8\",\n                \"price\": 15745,\n                \"stock\": 23,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 12,\n                \"title\": \"책 12\",\n                \"author\": \"저자10\",\n                \"price\": 22294,\n                \"stock\": 29,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 13,\n                \"title\": \"책 13\",\n                \"author\": \"저자9\",\n                \"price\": 26904,\n                \"stock\": 39,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 14,\n                \"title\": \"책 14\",\n                \"author\": \"저자5\",\n                \"price\": 26507,\n                \"stock\": 37,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 15,\n                \"title\": \"책 15\",\n                \"author\": \"저자9\",\n                \"price\": 11877,\n                \"stock\": 8,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 16,\n                \"title\": \"책 16\",\n                \"author\": \"저자9\",\n                \"price\": 29219,\n                \"stock\": 33,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 17,\n                \"title\": \"책 17\",\n                \"author\": \"저자7\",\n                \"price\": 20006,\n                \"stock\": 26,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 18,\n                \"title\": \"책 18\",\n                \"author\": \"저자1\",\n                \"price\": 27297,\n                \"stock\": 12,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 19,\n                \"title\": \"책 19\",\n                \"author\": \"저자8\",\n                \"price\": 28977,\n                \"stock\": 33,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 20,\n                \"title\": \"책 20\",\n                \"author\": \"저자1\",\n                \"price\": 22386,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 1,\n                \"title\": \"책 1\",\n                \"author\": \"저자5\",\n                \"price\": 16629,\n                \"stock\": 12,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 100,\n            \"hasNext\": true\n        }\n    }\n}"},{"id":"8ab8d79f-6b17-4da3-ab11-8ac2cd602fbe","name":"쿼리, 페이지네이션","originalRequest":{"method":"GET","header":[],"url":{"raw":"/books?page=1&limit=20&sort=createdAt&order=desc","host":[""],"path":["books"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"20"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"89"},{"key":"Date","value":"Sun, 14 Dec 2025 11:33:38 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2737"},{"key":"ETag","value":"W/\"ab1-0UVN2b5nrCKQ/N6y7orXpz2+Gek\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 2,\n                \"title\": \"책 2\",\n                \"author\": \"저자1\",\n                \"price\": 12376,\n                \"stock\": 37,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 3,\n                \"title\": \"책 3\",\n                \"author\": \"저자9\",\n                \"price\": 11824,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 4,\n                \"title\": \"책 4\",\n                \"author\": \"저자5\",\n                \"price\": 27787,\n                \"stock\": 32,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 5,\n                \"title\": \"책 5\",\n                \"author\": \"저자8\",\n                \"price\": 26307,\n                \"stock\": 15,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 6,\n                \"title\": \"책 6\",\n                \"author\": \"저자7\",\n                \"price\": 16249,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 7,\n                \"title\": \"책 7\",\n                \"author\": \"저자1\",\n                \"price\": 20706,\n                \"stock\": 11,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 8,\n                \"title\": \"책 8\",\n                \"author\": \"저자3\",\n                \"price\": 14376,\n                \"stock\": 5,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 9,\n                \"title\": \"책 9\",\n                \"author\": \"저자6\",\n                \"price\": 15896,\n                \"stock\": 34,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 10,\n                \"title\": \"책 10\",\n                \"author\": \"저자10\",\n                \"price\": 29277,\n                \"stock\": 14,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 11,\n                \"title\": \"책 11\",\n                \"author\": \"저자8\",\n                \"price\": 15745,\n                \"stock\": 23,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 12,\n                \"title\": \"책 12\",\n                \"author\": \"저자10\",\n                \"price\": 22294,\n                \"stock\": 29,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 13,\n                \"title\": \"책 13\",\n                \"author\": \"저자9\",\n                \"price\": 26904,\n                \"stock\": 39,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 14,\n                \"title\": \"책 14\",\n                \"author\": \"저자5\",\n                \"price\": 26507,\n                \"stock\": 37,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 15,\n                \"title\": \"책 15\",\n                \"author\": \"저자9\",\n                \"price\": 11877,\n                \"stock\": 8,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 16,\n                \"title\": \"책 16\",\n                \"author\": \"저자9\",\n                \"price\": 29219,\n                \"stock\": 33,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 17,\n                \"title\": \"책 17\",\n                \"author\": \"저자7\",\n                \"price\": 20006,\n                \"stock\": 26,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 18,\n                \"title\": \"책 18\",\n                \"author\": \"저자1\",\n                \"price\": 27297,\n                \"stock\": 12,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 19,\n                \"title\": \"책 19\",\n                \"author\": \"저자8\",\n                \"price\": 28977,\n                \"stock\": 33,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 20,\n                \"title\": \"책 20\",\n                \"author\": \"저자1\",\n                \"price\": 22386,\n                \"stock\": 10,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            },\n            {\n                \"id\": 1,\n                \"title\": \"책 1\",\n                \"author\": \"저자5\",\n                \"price\": 16629,\n                \"stock\": 12,\n                \"coverImageUrl\": null,\n                \"createdAt\": \"2025-12-14T09:40:42.565Z\"\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 100,\n            \"hasNext\": true\n        }\n    }\n}"}],"_postman_id":"e4216aaf-8369-49cc-bbbe-55a47bb0e716"},{"name":"도서 생성","id":"bc33ad0d-f32f-4398-a555-542d79a9e8f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"title\": \"React 완벽 가이드\",\r\n  \"author\": \"홍길동\",\r\n  \"price\": 25000,\r\n  \"stock\": 10,\r\n  \"description\": \"리액트 입문서\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/","urlObject":{"path":["books",""],"host":[""],"query":[],"variable":[]}},"response":[{"id":"40dbab4b-98c9-4c94-a862-b216350e3d13","name":"201","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"title\": \"React 완벽 가이드\",\r\n  \"author\": \"홍길동\",\r\n  \"price\": 25000,\r\n  \"stock\": 10,\r\n  \"description\": \"리액트 입문서\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"92"},{"key":"Date","value":"Sun, 14 Dec 2025 12:41:36 GMT"},{"key":"X-RateLimit-Reset","value":"1765716937"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"284"},{"key":"ETag","value":"W/\"11c-lkJrq9V0EMtnA0Xgfwr1PwMWFVc\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 등록 완료\",\n    \"data\": {\n        \"book\": {\n            \"id\": 101,\n            \"title\": \"React 완벽 가이드\",\n            \"author\": \"홍길동\",\n            \"price\": 25000,\n            \"stock\": 10,\n            \"isbn\": null,\n            \"description\": \"리액트 입문서\",\n            \"coverImageUrl\": null,\n            \"createdAt\": \"2025-12-14T12:41:36.719Z\",\n            \"deletedAt\": null\n        }\n    }\n}"},{"id":"a94ee084-bec9-4ef7-b289-38b335cbe6ea","name":"401","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"title\": \"React 완벽 가이드\",\r\n  \"author\": \"홍길동\",\r\n  \"price\": 25000,\r\n  \"stock\": 10,\r\n  \"description\": \"리액트 입문서\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"89"},{"key":"Date","value":"Sun, 14 Dec 2025 10:51:54 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"138"},{"key":"ETag","value":"W/\"8a-IHvPFEa8UQ8VoydoYbYdGztBb7c\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:51:54.715Z\",\n    \"path\": \"/books/\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"9b0c6991-ce32-4c82-a138-3f2da222945e","name":"403","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"title\": \"React 완벽 가이드\",\r\n  \"author\": \"홍길동\",\r\n  \"price\": 25000,\r\n  \"stock\": 10,\r\n  \"description\": \"리액트 입문서\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"90"},{"key":"Date","value":"Sun, 14 Dec 2025 10:51:35 GMT"},{"key":"X-RateLimit-Reset","value":"1765709876"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"115"},{"key":"ETag","value":"W/\"73-llZF0wTU2yhMEEtwhkJ+tt1Ymjs\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T10:51:35.867Z\",\n    \"path\": \"/books/\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"},{"id":"f456c4b1-a28e-4679-9006-75e5f35fa858","name":"422","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"title\": \"React 완벽 가이드\",\r\n  \"author\": \"홍길동\",\r\n  \"price\": 25000,\r\n  \"stock\": 10,\r\n  \"description\": \"리액트 입문서\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"98"},{"key":"Date","value":"Sun, 14 Dec 2025 12:50:08 GMT"},{"key":"X-RateLimit-Reset","value":"1765717469"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"292"},{"key":"ETag","value":"W/\"124-7z/e8o7hSr/5xpOMq0WOg6zGBUE\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:50:08.773Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"입력값 검증 실패\",\n    \"details\": {\n        \"formErrors\": [],\n        \"fieldErrors\": {\n            \"price\": [\n                \"Invalid input: expected number, received undefined\"\n            ],\n            \"stock\": [\n                \"Invalid input: expected number, received undefined\"\n            ]\n        }\n    }\n}"}],"_postman_id":"bc33ad0d-f32f-4398-a555-542d79a9e8f7"},{"name":"도서 상세 조회","id":"9b9ee206-0fb8-48b8-8b75-511bf276ceaa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"/books/1000","urlObject":{"path":["books","1000"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"7f0e01e4-7d83-47d5-a73f-61dc2334c201","name":"200","originalRequest":{"method":"GET","header":[],"url":"/books/1"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"87"},{"key":"Date","value":"Sun, 14 Dec 2025 11:35:14 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"273"},{"key":"ETag","value":"W/\"111-xebL8XcMPnsXGH3tARpCguugE/c\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 상세 조회 완료\",\n    \"data\": {\n        \"book\": {\n            \"id\": 1,\n            \"title\": \"책 1\",\n            \"author\": \"저자5\",\n            \"price\": 16629,\n            \"stock\": 12,\n            \"isbn\": \"ISBN-1\",\n            \"description\": \"적당한 도서 1\",\n            \"coverImageUrl\": null,\n            \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n            \"deletedAt\": null\n        }\n    }\n}"},{"id":"e6376136-52a3-4ee4-9c00-9f4a38813ec0","name":"404","originalRequest":{"method":"GET","header":[],"url":"/books/1000"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"85"},{"key":"Date","value":"Sun, 14 Dec 2025 11:35:59 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"148"},{"key":"ETag","value":"W/\"94-2ZofV8L7msQK5xsoXnjkeEJMj6Y\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:35:59.494Z\",\n    \"path\": \"/books/1000\",\n    \"status\": 404,\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"도서를 찾을 수 없습니다\"\n}"}],"_postman_id":"9b9ee206-0fb8-48b8-8b75-511bf276ceaa"},{"name":"리뷰 통계","id":"9fe75bff-9097-4395-a845-a11255225f59","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"/books/20/stats","urlObject":{"path":["books","20","stats"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"bee581bf-03bd-45c9-bc88-93b6fa9c8508","name":"200","originalRequest":{"method":"GET","header":[],"url":"/books/20/stats"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"82"},{"key":"Date","value":"Sun, 14 Dec 2025 11:38:37 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"121"},{"key":"ETag","value":"W/\"79-ESLmYpLtu4r7m4MeU+5FFAQ8UwM\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 통계 조회 완료\",\n    \"data\": {\n        \"averageRating\": 3,\n        \"reviewCount\": 1,\n        \"favoriteCount\": 0\n    }\n}"}],"_postman_id":"9fe75bff-9097-4395-a845-a11255225f59"},{"name":"도서 수정","id":"8ef8477c-22a5-4bf5-8431-a60504f4e401","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"price\": 20000,\r\n  \"stock\": 5\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/10","urlObject":{"path":["books","10"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"1aaa0add-359c-4595-93ee-7acfb698bcaf","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"price\": 20000,\r\n  \"stock\": 5\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/10"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"96"},{"key":"Date","value":"Sun, 14 Dec 2025 12:51:54 GMT"},{"key":"X-RateLimit-Reset","value":"1765717469"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"270"},{"key":"ETag","value":"W/\"10e-xGug7Mbj8I5T2oiiINTrlH+TuYs\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 수정 완료\",\n    \"data\": {\n        \"book\": {\n            \"id\": 10,\n            \"title\": \"책 10\",\n            \"author\": \"저자10\",\n            \"price\": 20000,\n            \"stock\": 5,\n            \"isbn\": \"ISBN-10\",\n            \"description\": \"적당한 도서 10\",\n            \"coverImageUrl\": null,\n            \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n            \"deletedAt\": null\n        }\n    }\n}"},{"id":"23685607-9104-49cb-b253-0e523e01ecbe","name":"401","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"price\": 20000,\r\n  \"stock\": 5\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"80"},{"key":"Date","value":"Sun, 14 Dec 2025 11:39:24 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"139"},{"key":"ETag","value":"W/\"8b-4s1rUIn3ejlGVVboaDvQEhW9EHo\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:39:24.903Z\",\n    \"path\": \"/books/1\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"561118cb-44ed-412c-acdf-135f20cd6212","name":"403","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"price\": 20000,\r\n  \"stock\": 5\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/1"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"81"},{"key":"Date","value":"Sun, 14 Dec 2025 11:39:06 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"116"},{"key":"ETag","value":"W/\"74-se5qDXXZzyuU7mkY+/DO2hr7G58\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:39:06.569Z\",\n    \"path\": \"/books/1\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"},{"id":"7bd3bbee-0fe6-4707-bd89-efc266d83ac7","name":"404","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"price\": 20000,\r\n  \"stock\": 5\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/1000000000"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"99"},{"key":"Date","value":"Sun, 14 Dec 2025 12:49:28 GMT"},{"key":"X-RateLimit-Reset","value":"1765717469"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"154"},{"key":"ETag","value":"W/\"9a-CoznZsqe2RONbdmzqZUME3B45nU\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:49:29.029Z\",\n    \"path\": \"/books/1000000000\",\n    \"status\": 404,\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"도서를 찾을 수 없습니다\"\n}"}],"_postman_id":"8ef8477c-22a5-4bf5-8431-a60504f4e401"},{"name":"도서 삭제(소프트딜리트)","id":"32bc791c-a36e-4ef5-af7c-693a3a353287","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/books/1","urlObject":{"path":["books","1"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"33ceb591-cd84-492d-8403-23837bcdb2d1","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/books/1"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"94"},{"key":"Date","value":"Sun, 14 Dec 2025 12:53:16 GMT"},{"key":"X-RateLimit-Reset","value":"1765717469"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-riWGtkz1tfuZkQuGGLaM+s20piI\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"도서 삭제 완료\",\n    \"data\": {}\n}"},{"id":"9a12befd-1c43-4792-9f5d-976bbf470c77","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/books/1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"77"},{"key":"Date","value":"Sun, 14 Dec 2025 11:40:34 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"139"},{"key":"ETag","value":"W/\"8b-DJklrPVOs4ciJaQS1lNLK2zEM8M\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:40:34.907Z\",\n    \"path\": \"/books/1\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"ab12ea02-3e76-4470-9227-3000649a4c3f","name":"403","originalRequest":{"method":"DELETE","header":[],"url":"/books/1"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"78"},{"key":"Date","value":"Sun, 14 Dec 2025 11:40:15 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"116"},{"key":"ETag","value":"W/\"74-HVrLG3+ZYl8aXkIKq9BAn3aNb7g\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:40:15.375Z\",\n    \"path\": \"/books/1\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"},{"id":"65a7d702-ecd3-4a06-b24d-10463d978911","name":"404","originalRequest":{"method":"DELETE","header":[],"url":"/books/10000"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"95"},{"key":"Date","value":"Sun, 14 Dec 2025 12:52:45 GMT"},{"key":"X-RateLimit-Reset","value":"1765717469"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"149"},{"key":"ETag","value":"W/\"95-kBOhamgWscNSRy+eZNiY5hplqSw\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:52:45.533Z\",\n    \"path\": \"/books/10000\",\n    \"status\": 404,\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"도서를 찾을 수 없습니다\"\n}"}],"_postman_id":"32bc791c-a36e-4ef5-af7c-693a3a353287"}],"id":"25171d88-a67e-46ee-ac74-cf60d775a0b1","_postman_id":"25171d88-a67e-46ee-ac74-cf60d775a0b1","description":""},{"name":"admin","item":[{"name":"유저 목록","id":"8ec6599c-b200-4747-b1fd-ddd1c21b880e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/admin/users","urlObject":{"path":["admin","users"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"fa8ab027-4ba1-48ce-b72a-f2fd0df44781","name":"200","originalRequest":{"method":"GET","header":[],"url":"/admin/users"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"2275"},{"key":"ETag","value":"W/\"8e3-ZZCzzCDq6ipxzXN9mSMyQ8PIcro\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:54:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"유저 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 21,\n                \"email\": \"user1111@test.com\",\n                \"name\": \"유저1111\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T10:46:07.239Z\"\n            },\n            {\n                \"id\": 2,\n                \"email\": \"seller1@test.com\",\n                \"name\": \"판매자1\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 3,\n                \"email\": \"seller2@test.com\",\n                \"name\": \"판매자2\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 4,\n                \"email\": \"seller3@test.com\",\n                \"name\": \"판매자3\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 5,\n                \"email\": \"seller4@test.com\",\n                \"name\": \"판매자4\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 7,\n                \"email\": \"user2@test.com\",\n                \"name\": \"유저2\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 8,\n                \"email\": \"user3@test.com\",\n                \"name\": \"유저3\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 9,\n                \"email\": \"user4@test.com\",\n                \"name\": \"유저4\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 10,\n                \"email\": \"user5@test.com\",\n                \"name\": \"유저5\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 11,\n                \"email\": \"user6@test.com\",\n                \"name\": \"유저6\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 12,\n                \"email\": \"user7@test.com\",\n                \"name\": \"유저7\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 13,\n                \"email\": \"user8@test.com\",\n                \"name\": \"유저8\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 14,\n                \"email\": \"user9@test.com\",\n                \"name\": \"유저9\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 15,\n                \"email\": \"user10@test.com\",\n                \"name\": \"유저10\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 16,\n                \"email\": \"user11@test.com\",\n                \"name\": \"유저11\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 17,\n                \"email\": \"user12@test.com\",\n                \"name\": \"유저12\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 18,\n                \"email\": \"user13@test.com\",\n                \"name\": \"유저13\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 19,\n                \"email\": \"user14@test.com\",\n                \"name\": \"유저14\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 20,\n                \"email\": \"user15@test.com\",\n                \"name\": \"유저15\",\n                \"role\": \"USER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 1,\n                \"email\": \"admin@test.com\",\n                \"name\": \"관리자\",\n                \"role\": \"ADMIN\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 21,\n            \"hasNext\": true\n        }\n    }\n}"},{"id":"86dfa65a-972f-4f4d-88d0-292ec77f80c8","name":"쿼리,정렬,페이지네이션","originalRequest":{"method":"GET","header":[],"url":{"raw":"/admin/users?page=1&limit=20&sort=createdAt&order=desc&role=SELLER","host":[""],"path":["admin","users"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"20"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"},{"key":"role","value":"SELLER"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"578"},{"key":"ETag","value":"W/\"242-Z5TDCX6Wh822oOebcx6aZwE/rjk\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:56:15 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"유저 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 2,\n                \"email\": \"seller1@test.com\",\n                \"name\": \"판매자1\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 3,\n                \"email\": \"seller2@test.com\",\n                \"name\": \"판매자2\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 4,\n                \"email\": \"seller3@test.com\",\n                \"name\": \"판매자3\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            },\n            {\n                \"id\": 5,\n                \"email\": \"seller4@test.com\",\n                \"name\": \"판매자4\",\n                \"role\": \"SELLER\",\n                \"createdAt\": \"2025-12-14T09:40:42.554Z\"\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 4,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"586e7597-c1ea-46f4-a5c0-64ccff7d02b3","name":"401","originalRequest":{"method":"GET","header":[],"url":"/admin/users"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-1x1QW8HFkAo7sCmOVLy6aWZnsqI\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:56:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:56:58.279Z\",\n    \"path\": \"/admin/users\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"20173660-c2e6-42a8-81e4-fc213b8d3a1a","name":"403","originalRequest":{"method":"GET","header":[],"url":"/admin/users"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"120"},{"key":"ETag","value":"W/\"78-NC0fbEewMDvtOCgAvOcRIr567k0\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:24:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:24:18.983Z\",\n    \"path\": \"/admin/users\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"8ec6599c-b200-4747-b1fd-ddd1c21b880e"},{"name":"유저 정지","id":"46da3784-5679-43bc-9180-aa8e797bf543","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/admin/users/1","urlObject":{"path":["admin","users","1"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"cac77c37-74a1-4b4d-8983-f6077f7cf825","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/admin/users/5"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-EVqdNZ1ZHaU1BnsZ0Pcrro6L6yY\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:59:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"회원 정지 완료\",\n    \"data\": {}\n}"},{"id":"150620c6-4cf7-4ad1-a4de-90c6914398a8","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/admin/users/5"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"145"},{"key":"ETag","value":"W/\"91-icowPDNpBvPf1mgxujJ/DsAh47s\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:00:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:00:54.296Z\",\n    \"path\": \"/admin/users/5\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"c95cbd7b-fb1d-4dc4-bacd-b663acfe17dd","name":"409","originalRequest":{"method":"DELETE","header":[],"url":"/admin/users/1"},"status":"Conflict","code":409,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"170"},{"key":"ETag","value":"W/\"aa-+afuj+9wkLkF0kSCjNjaVyKXT+0\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:01:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:01:51.453Z\",\n    \"path\": \"/admin/users/1\",\n    \"status\": 409,\n    \"code\": \"STATE_CONFLICT\",\n    \"message\": \"관리자는 자기 자신을 정지할 수 없습니다\"\n}"},{"id":"0fca695b-e452-47a3-8140-7aa7ad0e1698","name":"403","originalRequest":{"method":"DELETE","header":[],"url":"/admin/users/1"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"122"},{"key":"ETag","value":"W/\"7a-D2xBkHlV0odsqNzEcqSVLnFGo7Q\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:27:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:27:06.396Z\",\n    \"path\": \"/admin/users/1\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"46da3784-5679-43bc-9180-aa8e797bf543"},{"name":"유저정보수정","id":"795b2d7b-4ed3-426e-acad-e4a86a2dfcbb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"restore\": true,\r\n  \"resetPassword\": true\r\n}\r\n//아래는 request body이며, 선택필드입니다.\r\n// {\r\n//   \"role\": \"SELLER\",//role 변경\r\n//   \"resetPassword\": true, //패스워드 초기화\r\n//   \"restore\": true //정지유저(softdelete)복구\r\n// }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/users/10","urlObject":{"path":["admin","users","10"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"936c5088-1875-44cd-87c7-68bea60d5b64","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"restore\": true,\r\n  \"resetPassword\": true\r\n}\r\n//아래는 request body이며, 선택필드입니다.\r\n// {\r\n//   \"role\": \"SELLER\",//role 변경\r\n//   \"resetPassword\": true, //패스워드 초기화\r\n//   \"restore\": true //정지유저(softdelete)복구\r\n// }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/users/8"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"154"},{"key":"ETag","value":"W/\"9a-NUGi8aJPnnLZh0IXshDKquvel4k\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:03:46 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"유저 정보 수정 완료\",\n    \"data\": {\n        \"resetPassword\": true,\n        \"tempPassword\": \"h8gcxm9xqi\",\n        \"restored\": true,\n        \"roleChanged\": false\n    }\n}"},{"id":"fa10ba51-4c81-44eb-a16c-a54480bccab1","name":"404","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"restore\": true,\r\n  \"resetPassword\": true\r\n}\r\n//아래는 request body이며, 선택필드입니다.\r\n// {\r\n//   \"role\": \"SELLER\",//role 변경\r\n//   \"resetPassword\": true, //패스워드 초기화\r\n//   \"restore\": true //정지유저(softdelete)복구\r\n// }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/users/1000"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"150"},{"key":"ETag","value":"W/\"96-5U6SD/KJswvORfs7Dc49IkDdXvc\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:05:05 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:05:05.312Z\",\n    \"path\": \"/admin/users/1000\",\n    \"status\": 404,\n    \"code\": \"USER_NOT_FOUND\",\n    \"message\": \"유저를 찾을 수 없습니다\"\n}"},{"id":"2e7870e1-0385-4b5f-889e-6a4c2d865640","name":"409","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"restore\": true,\r\n  \"resetPassword\": true\r\n}\r\n//아래는 request body이며, 선택필드입니다.\r\n// {\r\n//   \"role\": \"SELLER\",//role 변경\r\n//   \"resetPassword\": true, //패스워드 초기화\r\n//   \"restore\": true //정지유저(softdelete)복구\r\n// }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/users/1"},"status":"Conflict","code":409,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"157"},{"key":"ETag","value":"W/\"9d-SYzII28+S61ON0HdjHRDtuZq/Ic\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:04:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:04:23.513Z\",\n    \"path\": \"/admin/users/1\",\n    \"status\": 409,\n    \"code\": \"STATE_CONFLICT\",\n    \"message\": \"자기 자신은 수정할 수 없습니다\"\n}"},{"id":"3b5b5971-b79a-4166-882a-679e766a45ae","name":"403","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"restore\": true,\r\n  \"resetPassword\": true\r\n}\r\n//아래는 request body이며, 선택필드입니다.\r\n// {\r\n//   \"role\": \"SELLER\",//role 변경\r\n//   \"resetPassword\": true, //패스워드 초기화\r\n//   \"restore\": true //정지유저(softdelete)복구\r\n// }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/users/10"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"123"},{"key":"ETag","value":"W/\"7b-d+c2qPGRqV7X5QBGqNQ5DnUVrWg\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:30:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:30:16.676Z\",\n    \"path\": \"/admin/users/10\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"795b2d7b-4ed3-426e-acad-e4a86a2dfcbb"},{"name":"전체 주문 목록","id":"a90d1751-876e-4cf6-aa65-a4c5600f6d00","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/admin/orders","urlObject":{"path":["admin","orders"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"78aba2ef-65c3-4be7-9e7e-007602335a98","name":"200","originalRequest":{"method":"GET","header":[],"url":"/admin/orders"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"5712"},{"key":"ETag","value":"W/\"1650-J+NIZ6aNpgaXX7jobJj365GKGHU\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:06:14 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"전체 주문 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 21,\n                \"userId\": 6,\n                \"totalAmount\": 24752,\n                \"status\": \"CANCELLED\",\n                \"createdAt\": \"2025-12-14T12:27:43.730Z\",\n                \"user\": {\n                    \"id\": 6,\n                    \"email\": \"user1@test.com\",\n                    \"name\": \"유저1\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 21,\n                        \"orderId\": 21,\n                        \"bookId\": 2,\n                        \"quantity\": 2,\n                        \"unitPrice\": 12376,\n                        \"book\": {\n                            \"id\": 2,\n                            \"title\": \"책 2\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 20,\n                \"userId\": 16,\n                \"totalAmount\": 29315,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.755Z\",\n                \"user\": {\n                    \"id\": 16,\n                    \"email\": \"user11@test.com\",\n                    \"name\": \"유저11\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 20,\n                        \"orderId\": 20,\n                        \"bookId\": 49,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29315,\n                        \"book\": {\n                            \"id\": 49,\n                            \"title\": \"책 49\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 19,\n                \"userId\": 20,\n                \"totalAmount\": 26828,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.753Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 19,\n                        \"orderId\": 19,\n                        \"bookId\": 93,\n                        \"quantity\": 2,\n                        \"unitPrice\": 13414,\n                        \"book\": {\n                            \"id\": 93,\n                            \"title\": \"책 93\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 18,\n                \"userId\": 11,\n                \"totalAmount\": 45639,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.750Z\",\n                \"user\": {\n                    \"id\": 11,\n                    \"email\": \"user6@test.com\",\n                    \"name\": \"유저6\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 18,\n                        \"orderId\": 18,\n                        \"bookId\": 73,\n                        \"quantity\": 3,\n                        \"unitPrice\": 15213,\n                        \"book\": {\n                            \"id\": 73,\n                            \"title\": \"책 73\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 17,\n                \"userId\": 20,\n                \"totalAmount\": 26344,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.748Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 17,\n                        \"orderId\": 17,\n                        \"bookId\": 41,\n                        \"quantity\": 2,\n                        \"unitPrice\": 13172,\n                        \"book\": {\n                            \"id\": 41,\n                            \"title\": \"책 41\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 16,\n                \"userId\": 9,\n                \"totalAmount\": 78921,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.746Z\",\n                \"user\": {\n                    \"id\": 9,\n                    \"email\": \"user4@test.com\",\n                    \"name\": \"유저4\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 16,\n                        \"orderId\": 16,\n                        \"bookId\": 5,\n                        \"quantity\": 3,\n                        \"unitPrice\": 26307,\n                        \"book\": {\n                            \"id\": 5,\n                            \"title\": \"책 5\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 15,\n                \"userId\": 10,\n                \"totalAmount\": 52604,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.744Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 15,\n                        \"orderId\": 15,\n                        \"bookId\": 37,\n                        \"quantity\": 2,\n                        \"unitPrice\": 26302,\n                        \"book\": {\n                            \"id\": 37,\n                            \"title\": \"책 37\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 14,\n                \"userId\": 9,\n                \"totalAmount\": 29277,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.742Z\",\n                \"user\": {\n                    \"id\": 9,\n                    \"email\": \"user4@test.com\",\n                    \"name\": \"유저4\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 14,\n                        \"orderId\": 14,\n                        \"bookId\": 10,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29277,\n                        \"book\": {\n                            \"id\": 10,\n                            \"title\": \"책 10\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 13,\n                \"userId\": 6,\n                \"totalAmount\": 28555,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.740Z\",\n                \"user\": {\n                    \"id\": 6,\n                    \"email\": \"user1@test.com\",\n                    \"name\": \"유저1\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 13,\n                        \"orderId\": 13,\n                        \"bookId\": 89,\n                        \"quantity\": 1,\n                        \"unitPrice\": 28555,\n                        \"book\": {\n                            \"id\": 89,\n                            \"title\": \"책 89\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 12,\n                \"userId\": 8,\n                \"totalAmount\": 20706,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.738Z\",\n                \"user\": {\n                    \"id\": 8,\n                    \"email\": \"user3@test.com\",\n                    \"name\": \"유저3\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 12,\n                        \"orderId\": 12,\n                        \"bookId\": 7,\n                        \"quantity\": 1,\n                        \"unitPrice\": 20706,\n                        \"book\": {\n                            \"id\": 7,\n                            \"title\": \"책 7\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 11,\n                \"userId\": 13,\n                \"totalAmount\": 32518,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.736Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 11,\n                        \"orderId\": 11,\n                        \"bookId\": 75,\n                        \"quantity\": 2,\n                        \"unitPrice\": 16259,\n                        \"book\": {\n                            \"id\": 75,\n                            \"title\": \"책 75\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 10,\n                \"userId\": 10,\n                \"totalAmount\": 14673,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.734Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 10,\n                        \"orderId\": 10,\n                        \"bookId\": 46,\n                        \"quantity\": 1,\n                        \"unitPrice\": 14673,\n                        \"book\": {\n                            \"id\": 46,\n                            \"title\": \"책 46\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 9,\n                \"userId\": 10,\n                \"totalAmount\": 23754,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.731Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 9,\n                        \"orderId\": 9,\n                        \"bookId\": 15,\n                        \"quantity\": 2,\n                        \"unitPrice\": 11877,\n                        \"book\": {\n                            \"id\": 15,\n                            \"title\": \"책 15\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 8,\n                \"userId\": 12,\n                \"totalAmount\": 11877,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.729Z\",\n                \"user\": {\n                    \"id\": 12,\n                    \"email\": \"user7@test.com\",\n                    \"name\": \"유저7\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 8,\n                        \"orderId\": 8,\n                        \"bookId\": 15,\n                        \"quantity\": 1,\n                        \"unitPrice\": 11877,\n                        \"book\": {\n                            \"id\": 15,\n                            \"title\": \"책 15\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 7,\n                \"userId\": 13,\n                \"totalAmount\": 30426,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.727Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 7,\n                        \"orderId\": 7,\n                        \"bookId\": 73,\n                        \"quantity\": 2,\n                        \"unitPrice\": 15213,\n                        \"book\": {\n                            \"id\": 73,\n                            \"title\": \"책 73\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 6,\n                \"userId\": 14,\n                \"totalAmount\": 29263,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.725Z\",\n                \"user\": {\n                    \"id\": 14,\n                    \"email\": \"user9@test.com\",\n                    \"name\": \"유저9\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 6,\n                        \"orderId\": 6,\n                        \"bookId\": 64,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29263,\n                        \"book\": {\n                            \"id\": 64,\n                            \"title\": \"책 64\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 5,\n                \"userId\": 19,\n                \"totalAmount\": 20117,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.722Z\",\n                \"user\": {\n                    \"id\": 19,\n                    \"email\": \"user14@test.com\",\n                    \"name\": \"유저14\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 5,\n                        \"orderId\": 5,\n                        \"bookId\": 94,\n                        \"quantity\": 1,\n                        \"unitPrice\": 20117,\n                        \"book\": {\n                            \"id\": 94,\n                            \"title\": \"책 94\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 4,\n                \"userId\": 13,\n                \"totalAmount\": 16249,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.719Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 4,\n                        \"orderId\": 4,\n                        \"bookId\": 6,\n                        \"quantity\": 1,\n                        \"unitPrice\": 16249,\n                        \"book\": {\n                            \"id\": 6,\n                            \"title\": \"책 6\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 3,\n                \"userId\": 18,\n                \"totalAmount\": 54030,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.715Z\",\n                \"user\": {\n                    \"id\": 18,\n                    \"email\": \"user13@test.com\",\n                    \"name\": \"유저13\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 3,\n                        \"orderId\": 3,\n                        \"bookId\": 78,\n                        \"quantity\": 3,\n                        \"unitPrice\": 18010,\n                        \"book\": {\n                            \"id\": 78,\n                            \"title\": \"책 78\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 2,\n                \"userId\": 20,\n                \"totalAmount\": 11267,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.713Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 2,\n                        \"orderId\": 2,\n                        \"bookId\": 68,\n                        \"quantity\": 1,\n                        \"unitPrice\": 11267,\n                        \"book\": {\n                            \"id\": 68,\n                            \"title\": \"책 68\"\n                        }\n                    }\n                ]\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 21,\n            \"hasNext\": true\n        }\n    }\n}"},{"id":"e1ef1697-0008-4dad-a22b-96ea833610e0","name":"페이지네이션,정렬,쿼리","originalRequest":{"method":"GET","header":[],"url":{"raw":"/admin/orders?page=1&limit=20&sort=createdAt&order=desc&status=PAID","host":[""],"path":["admin","orders"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"20"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"},{"key":"status","value":"PAID"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"5710"},{"key":"ETag","value":"W/\"164e-bv8C+a/IpTJwBwWKbqc2ODwOU/4\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:07:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"전체 주문 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 20,\n                \"userId\": 16,\n                \"totalAmount\": 29315,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.755Z\",\n                \"user\": {\n                    \"id\": 16,\n                    \"email\": \"user11@test.com\",\n                    \"name\": \"유저11\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 20,\n                        \"orderId\": 20,\n                        \"bookId\": 49,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29315,\n                        \"book\": {\n                            \"id\": 49,\n                            \"title\": \"책 49\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 19,\n                \"userId\": 20,\n                \"totalAmount\": 26828,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.753Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 19,\n                        \"orderId\": 19,\n                        \"bookId\": 93,\n                        \"quantity\": 2,\n                        \"unitPrice\": 13414,\n                        \"book\": {\n                            \"id\": 93,\n                            \"title\": \"책 93\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 18,\n                \"userId\": 11,\n                \"totalAmount\": 45639,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.750Z\",\n                \"user\": {\n                    \"id\": 11,\n                    \"email\": \"user6@test.com\",\n                    \"name\": \"유저6\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 18,\n                        \"orderId\": 18,\n                        \"bookId\": 73,\n                        \"quantity\": 3,\n                        \"unitPrice\": 15213,\n                        \"book\": {\n                            \"id\": 73,\n                            \"title\": \"책 73\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 17,\n                \"userId\": 20,\n                \"totalAmount\": 26344,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.748Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 17,\n                        \"orderId\": 17,\n                        \"bookId\": 41,\n                        \"quantity\": 2,\n                        \"unitPrice\": 13172,\n                        \"book\": {\n                            \"id\": 41,\n                            \"title\": \"책 41\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 16,\n                \"userId\": 9,\n                \"totalAmount\": 78921,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.746Z\",\n                \"user\": {\n                    \"id\": 9,\n                    \"email\": \"user4@test.com\",\n                    \"name\": \"유저4\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 16,\n                        \"orderId\": 16,\n                        \"bookId\": 5,\n                        \"quantity\": 3,\n                        \"unitPrice\": 26307,\n                        \"book\": {\n                            \"id\": 5,\n                            \"title\": \"책 5\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 15,\n                \"userId\": 10,\n                \"totalAmount\": 52604,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.744Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 15,\n                        \"orderId\": 15,\n                        \"bookId\": 37,\n                        \"quantity\": 2,\n                        \"unitPrice\": 26302,\n                        \"book\": {\n                            \"id\": 37,\n                            \"title\": \"책 37\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 14,\n                \"userId\": 9,\n                \"totalAmount\": 29277,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.742Z\",\n                \"user\": {\n                    \"id\": 9,\n                    \"email\": \"user4@test.com\",\n                    \"name\": \"유저4\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 14,\n                        \"orderId\": 14,\n                        \"bookId\": 10,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29277,\n                        \"book\": {\n                            \"id\": 10,\n                            \"title\": \"책 10\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 13,\n                \"userId\": 6,\n                \"totalAmount\": 28555,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.740Z\",\n                \"user\": {\n                    \"id\": 6,\n                    \"email\": \"user1@test.com\",\n                    \"name\": \"유저1\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 13,\n                        \"orderId\": 13,\n                        \"bookId\": 89,\n                        \"quantity\": 1,\n                        \"unitPrice\": 28555,\n                        \"book\": {\n                            \"id\": 89,\n                            \"title\": \"책 89\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 12,\n                \"userId\": 8,\n                \"totalAmount\": 20706,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.738Z\",\n                \"user\": {\n                    \"id\": 8,\n                    \"email\": \"user3@test.com\",\n                    \"name\": \"유저3\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 12,\n                        \"orderId\": 12,\n                        \"bookId\": 7,\n                        \"quantity\": 1,\n                        \"unitPrice\": 20706,\n                        \"book\": {\n                            \"id\": 7,\n                            \"title\": \"책 7\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 11,\n                \"userId\": 13,\n                \"totalAmount\": 32518,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.736Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 11,\n                        \"orderId\": 11,\n                        \"bookId\": 75,\n                        \"quantity\": 2,\n                        \"unitPrice\": 16259,\n                        \"book\": {\n                            \"id\": 75,\n                            \"title\": \"책 75\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 10,\n                \"userId\": 10,\n                \"totalAmount\": 14673,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.734Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 10,\n                        \"orderId\": 10,\n                        \"bookId\": 46,\n                        \"quantity\": 1,\n                        \"unitPrice\": 14673,\n                        \"book\": {\n                            \"id\": 46,\n                            \"title\": \"책 46\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 9,\n                \"userId\": 10,\n                \"totalAmount\": 23754,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.731Z\",\n                \"user\": {\n                    \"id\": 10,\n                    \"email\": \"user5@test.com\",\n                    \"name\": \"유저5\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 9,\n                        \"orderId\": 9,\n                        \"bookId\": 15,\n                        \"quantity\": 2,\n                        \"unitPrice\": 11877,\n                        \"book\": {\n                            \"id\": 15,\n                            \"title\": \"책 15\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 8,\n                \"userId\": 12,\n                \"totalAmount\": 11877,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.729Z\",\n                \"user\": {\n                    \"id\": 12,\n                    \"email\": \"user7@test.com\",\n                    \"name\": \"유저7\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 8,\n                        \"orderId\": 8,\n                        \"bookId\": 15,\n                        \"quantity\": 1,\n                        \"unitPrice\": 11877,\n                        \"book\": {\n                            \"id\": 15,\n                            \"title\": \"책 15\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 7,\n                \"userId\": 13,\n                \"totalAmount\": 30426,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.727Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 7,\n                        \"orderId\": 7,\n                        \"bookId\": 73,\n                        \"quantity\": 2,\n                        \"unitPrice\": 15213,\n                        \"book\": {\n                            \"id\": 73,\n                            \"title\": \"책 73\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 6,\n                \"userId\": 14,\n                \"totalAmount\": 29263,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.725Z\",\n                \"user\": {\n                    \"id\": 14,\n                    \"email\": \"user9@test.com\",\n                    \"name\": \"유저9\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 6,\n                        \"orderId\": 6,\n                        \"bookId\": 64,\n                        \"quantity\": 1,\n                        \"unitPrice\": 29263,\n                        \"book\": {\n                            \"id\": 64,\n                            \"title\": \"책 64\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 5,\n                \"userId\": 19,\n                \"totalAmount\": 20117,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.722Z\",\n                \"user\": {\n                    \"id\": 19,\n                    \"email\": \"user14@test.com\",\n                    \"name\": \"유저14\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 5,\n                        \"orderId\": 5,\n                        \"bookId\": 94,\n                        \"quantity\": 1,\n                        \"unitPrice\": 20117,\n                        \"book\": {\n                            \"id\": 94,\n                            \"title\": \"책 94\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 4,\n                \"userId\": 13,\n                \"totalAmount\": 16249,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.719Z\",\n                \"user\": {\n                    \"id\": 13,\n                    \"email\": \"user8@test.com\",\n                    \"name\": \"유저8\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 4,\n                        \"orderId\": 4,\n                        \"bookId\": 6,\n                        \"quantity\": 1,\n                        \"unitPrice\": 16249,\n                        \"book\": {\n                            \"id\": 6,\n                            \"title\": \"책 6\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 3,\n                \"userId\": 18,\n                \"totalAmount\": 54030,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.715Z\",\n                \"user\": {\n                    \"id\": 18,\n                    \"email\": \"user13@test.com\",\n                    \"name\": \"유저13\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 3,\n                        \"orderId\": 3,\n                        \"bookId\": 78,\n                        \"quantity\": 3,\n                        \"unitPrice\": 18010,\n                        \"book\": {\n                            \"id\": 78,\n                            \"title\": \"책 78\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 2,\n                \"userId\": 20,\n                \"totalAmount\": 11267,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.713Z\",\n                \"user\": {\n                    \"id\": 20,\n                    \"email\": \"user15@test.com\",\n                    \"name\": \"유저15\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 2,\n                        \"orderId\": 2,\n                        \"bookId\": 68,\n                        \"quantity\": 1,\n                        \"unitPrice\": 11267,\n                        \"book\": {\n                            \"id\": 68,\n                            \"title\": \"책 68\"\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 1,\n                \"userId\": 14,\n                \"totalAmount\": 88617,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.708Z\",\n                \"user\": {\n                    \"id\": 14,\n                    \"email\": \"user9@test.com\",\n                    \"name\": \"유저9\",\n                    \"role\": \"USER\"\n                },\n                \"items\": [\n                    {\n                        \"id\": 1,\n                        \"orderId\": 1,\n                        \"bookId\": 77,\n                        \"quantity\": 3,\n                        \"unitPrice\": 29539,\n                        \"book\": {\n                            \"id\": 77,\n                            \"title\": \"책 77\"\n                        }\n                    }\n                ]\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 20,\n            \"total\": 20,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"7a595fe0-f0b9-473d-acd9-06637f090a18","name":"401","originalRequest":{"method":"GET","header":[],"url":"/admin/orders"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"144"},{"key":"ETag","value":"W/\"90-1qah13QdkqElBemWpDnWCGYk3GI\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:07:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:07:58.262Z\",\n    \"path\": \"/admin/orders\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"5aeccb80-80f1-4e1b-8eea-a0fe65183591","name":"403","originalRequest":{"method":"GET","header":[],"url":"/admin/orders"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"121"},{"key":"ETag","value":"W/\"79-N4LSFa2f1faAxSMgD41n7okO6Jk\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:31:59 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:31:59.813Z\",\n    \"path\": \"/admin/orders\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"a90d1751-876e-4cf6-aa65-a4c5600f6d00"},{"name":"주문 상태 변경","id":"fc946fab-68e6-453f-a2b3-76fe1437c3d1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{ \"status\": \"PAID\" }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/orders/100/status","urlObject":{"path":["admin","orders","100","status"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"d1e48268-cb23-41a2-ba00-9fbc30dfda47","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{ \"status\": \"PAID\" }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/orders/1/status"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"163"},{"key":"ETag","value":"W/\"a3-hpGJzildB4VIDChSJQIGaw6l8RE\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:09:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"주문 상태 변경 완료\",\n    \"data\": {\n        \"id\": 1,\n        \"userId\": 14,\n        \"totalAmount\": 88617,\n        \"status\": \"PAID\",\n        \"createdAt\": \"2025-12-14T09:40:42.708Z\"\n    }\n}"},{"id":"15039eeb-aa07-4a59-9822-d93886da28ed","name":"401","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{ \"status\": \"PAID\" }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/orders/1/status"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"153"},{"key":"ETag","value":"W/\"99-WLBNFqyjNGjpUky0MXRVOWCcezA\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:15:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:15:18.517Z\",\n    \"path\": \"/admin/orders/1/status\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"dab99c97-d051-4e28-8785-b21f6ef70e65","name":"404","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{ \"status\": \"PAID\" }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/orders/100/status"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"130"},{"key":"ETag","value":"W/\"82-YfNZjLF1zAS+GI6tCJtY87JyxpU\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:16:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:16:00.399Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"주문을 찾을 수 없습니다\"\n}"},{"id":"09d803d2-24c6-45a8-8036-82255c633b52","name":"403","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{ \"status\": \"PAID\" }\r\n","options":{"raw":{"language":"json"}}},"url":"/admin/orders/100/status"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"132"},{"key":"ETag","value":"W/\"84-snAkvJWohO060gkiTGH2wniONIM\""},{"key":"Date","value":"Sun, 14 Dec 2025 13:37:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T13:37:25.544Z\",\n    \"path\": \"/admin/orders/100/status\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"fc946fab-68e6-453f-a2b3-76fe1437c3d1"}],"id":"93d6a0a6-121c-4b8a-8759-bee0a7e133da","_postman_id":"93d6a0a6-121c-4b8a-8759-bee0a7e133da","description":""},{"name":"reviews","item":[{"name":"리뷰작성","id":"e37a4129-6081-460f-9812-7ab8e8ec24ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"rating\": 4,\r\n  \"comment\": \"정말 도움이 많이 되는 책입니다.\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/20/reviews","urlObject":{"path":["books","20","reviews"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"fc03f2dc-2ba4-421b-a225-c269c3fc8c4b","name":"201","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"rating\": 4,\r\n  \"comment\": \"정말 도움이 많이 되는 책입니다.\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/20/reviews"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"90"},{"key":"Date","value":"Sun, 14 Dec 2025 11:53:28 GMT"},{"key":"X-RateLimit-Reset","value":"1765713822"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"211"},{"key":"ETag","value":"W/\"d3-VmjEVaeQFfplOYA53y4XOZoWeIM\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"리뷰 작성 완료\",\n    \"data\": {\n        \"review\": {\n            \"id\": 51,\n            \"userId\": 6,\n            \"bookId\": 20,\n            \"rating\": 4,\n            \"comment\": \"정말 도움이 많이 되는 책입니다.\",\n            \"createdAt\": \"2025-12-14T11:53:28.483Z\"\n        }\n    }\n}"},{"id":"f56fa91c-2231-4add-ba07-6528eb904f0c","name":"401","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"rating\": 4,\r\n  \"comment\": \"정말 도움이 많이 되는 책입니다.\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/20/reviews"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"88"},{"key":"Date","value":"Sun, 14 Dec 2025 11:54:45 GMT"},{"key":"X-RateLimit-Reset","value":"1765713822"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"148"},{"key":"ETag","value":"W/\"94-2vfsMG2AauS3YvXYb8azjeccNjo\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:54:45.506Z\",\n    \"path\": \"/books/20/reviews\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"d181e0d7-a5f7-47d6-b4c8-fa765f55afb3","name":"422","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"rating\": 4\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/books/20/reviews"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"89"},{"key":"Date","value":"Sun, 14 Dec 2025 11:54:14 GMT"},{"key":"X-RateLimit-Reset","value":"1765713822"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"119"},{"key":"ETag","value":"W/\"77-K3sQP++BtQVGotmJcwNoE1zmJNY\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:54:14.866Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"Invalid request data\"\n}"}],"_postman_id":"e37a4129-6081-460f-9812-7ab8e8ec24ab"},{"name":"리뷰수정","id":"1c4d2786-67d0-4d41-b409-ec7dcd07ba86","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"comment\": \"흠.......\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/reviews/51","urlObject":{"path":["reviews","51"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"f84471a1-6388-4293-8b46-d1c02a9a5950","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"comment\": \"흠.......\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/reviews/51"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"177"},{"key":"ETag","value":"W/\"b1-6+LHyh/EuYSD9+m1yKeneJGUd5o\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:58:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"리뷰 수정 완료\",\n    \"data\": {\n        \"review\": {\n            \"id\": 51,\n            \"userId\": 6,\n            \"bookId\": 20,\n            \"rating\": 4,\n            \"comment\": \"흠.......\",\n            \"createdAt\": \"2025-12-14T11:53:28.483Z\"\n        }\n    }\n}"},{"id":"d1a9faf7-7989-4a1f-9e94-a6fd5884bbc5","name":"401","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"comment\": \"흠.......\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/reviews/51"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"142"},{"key":"ETag","value":"W/\"8e-0I3HEu0AWIqeI0s88UXCWveYprI\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:59:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:59:30.841Z\",\n    \"path\": \"/reviews/51\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"64c98276-4de1-4d5a-b1ab-cd16f1cf3bb5","name":"403","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"comment\": \"흠.......\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/reviews/20"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"119"},{"key":"ETag","value":"W/\"77-TfIDlgqz6wq+rt512Q3drVp7kjs\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:56:08 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:56:08.503Z\",\n    \"path\": \"/reviews/20\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"},{"id":"b3a31633-ddd8-4c03-ace4-c4dcba08d969","name":"404","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"comment\": \"흠.......\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/reviews/60"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"148"},{"key":"ETag","value":"W/\"94-Xe31HZC+fe3XQuhyvOvax2I4DKM\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:55:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:55:43.200Z\",\n    \"path\": \"/reviews/60\",\n    \"status\": 404,\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"리뷰를 찾을 수 없습니다\"\n}"}],"_postman_id":"1c4d2786-67d0-4d41-b409-ec7dcd07ba86"},{"name":"리뷰 삭제","id":"e645f73e-8172-4dde-b634-ec5e03f87bb9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/reviews/51","urlObject":{"path":["reviews","51"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"5ca7dc23-df01-43c3-84eb-dd73a7b8ac36","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/reviews/51"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-vW8J4HSqL6kD0AbEjzRkH2NeWkk\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:02:35 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"리뷰 삭제 완료\",\n    \"data\": {}\n}"},{"id":"8465beea-07a7-439d-b2d8-d50a8d664297","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/reviews/1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"141"},{"key":"ETag","value":"W/\"8d-A89Xvd2MXSRs/3lHTrr5CNEK6p8\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:02:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:02:02.344Z\",\n    \"path\": \"/reviews/1\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"444274c9-3299-4ee5-be6c-4cebd0a5cd62","name":"403","originalRequest":{"method":"DELETE","header":[],"url":"/reviews/1"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-S0sEYxpfpdqLC21hYgJScIqXnGQ\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:01:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:01:38.313Z\",\n    \"path\": \"/reviews/1\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"},{"id":"249722c8-1c08-48c3-95f6-1995a75721d2","name":"404","originalRequest":{"method":"DELETE","header":[],"url":"/reviews/541"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"149"},{"key":"ETag","value":"W/\"95-IBOnR2HuwZmjdczZOlOKXLRXY1k\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:01:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:01:06.051Z\",\n    \"path\": \"/reviews/541\",\n    \"status\": 404,\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"리뷰를 찾을 수 없습니다\"\n}"}],"_postman_id":"e645f73e-8172-4dde-b634-ec5e03f87bb9"},{"name":"내가 쓴 리뷰 목록","id":"875c4b13-a6e4-4ba3-b468-ad7db590ca05","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/users/me/reviews?page=1&limit=10","urlObject":{"path":["users","me","reviews"],"host":[""],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}],"variable":[]}},"response":[{"id":"1f3f267a-1b40-477f-a517-3b2b48dd7221","name":"200","originalRequest":{"method":"GET","header":[],"url":"/users/me/reviews"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"451"},{"key":"ETag","value":"W/\"1c3-MzlJWrjcjky4jDKTd3XHhNtFz+g\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:57:41 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"내 리뷰 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 51,\n                \"userId\": 6,\n                \"bookId\": 20,\n                \"rating\": 4,\n                \"comment\": \"정말 도움이 많이 되는 책입니다.\",\n                \"createdAt\": \"2025-12-14T11:53:28.483Z\",\n                \"book\": {\n                    \"id\": 20,\n                    \"title\": \"책 20\"\n                }\n            },\n            {\n                \"id\": 44,\n                \"userId\": 6,\n                \"bookId\": 44,\n                \"rating\": 4,\n                \"comment\": \"리뷰 내용 44\",\n                \"createdAt\": \"2025-12-14T09:40:42.633Z\",\n                \"book\": {\n                    \"id\": 44,\n                    \"title\": \"책 44\"\n                }\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 2,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"db8cdf5e-b493-4442-b72b-9b1b606b06a7","name":"401","originalRequest":{"method":"GET","header":[],"url":{"raw":"/users/me/reviews?page=1&limit=10","host":[""],"path":["users","me","reviews"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"164"},{"key":"ETag","value":"W/\"a4-s2PquxckaGhlVk1WEhGC6SNuRKg\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:57:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T11:57:12.759Z\",\n    \"path\": \"/users/me/reviews?page=1&limit=10\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"b9f8c2c8-534f-4af9-b278-bdeb5be700f9","name":"페이지네이션","originalRequest":{"method":"GET","header":[],"url":{"raw":"/users/me/reviews?page=1&limit=10","host":[""],"path":["users","me","reviews"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"451"},{"key":"ETag","value":"W/\"1c3-MzlJWrjcjky4jDKTd3XHhNtFz+g\""},{"key":"Date","value":"Sun, 14 Dec 2025 11:58:01 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"내 리뷰 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 51,\n                \"userId\": 6,\n                \"bookId\": 20,\n                \"rating\": 4,\n                \"comment\": \"정말 도움이 많이 되는 책입니다.\",\n                \"createdAt\": \"2025-12-14T11:53:28.483Z\",\n                \"book\": {\n                    \"id\": 20,\n                    \"title\": \"책 20\"\n                }\n            },\n            {\n                \"id\": 44,\n                \"userId\": 6,\n                \"bookId\": 44,\n                \"rating\": 4,\n                \"comment\": \"리뷰 내용 44\",\n                \"createdAt\": \"2025-12-14T09:40:42.633Z\",\n                \"book\": {\n                    \"id\": 44,\n                    \"title\": \"책 44\"\n                }\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 2,\n            \"hasNext\": false\n        }\n    }\n}"}],"_postman_id":"875c4b13-a6e4-4ba3-b468-ad7db590ca05"},{"name":"도서 리뷰 목록","id":"053fa341-2618-4b18-985a-443c9cb52ce4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"/books/20/reviews","urlObject":{"path":["books","20","reviews"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"c1b22c72-48c5-4b60-8748-ce8f5dc06e0e","name":"200","originalRequest":{"method":"GET","header":[],"url":"/books/20/reviews"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"83"},{"key":"Date","value":"Sun, 14 Dec 2025 11:38:11 GMT"},{"key":"X-RateLimit-Reset","value":"1765712845"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"258"},{"key":"ETag","value":"W/\"102-qLEx90wCnA6NRBGjCUMZUfFzho0\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"리뷰 목록 조회 완료\",\n    \"data\": {\n        \"items\": [\n            {\n                \"id\": 21,\n                \"rating\": 3,\n                \"comment\": \"리뷰 내용 21\",\n                \"createdAt\": \"2025-12-14T09:40:42.610Z\",\n                \"user\": {\n                    \"id\": 19,\n                    \"name\": \"유저14\"\n                }\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 1,\n            \"hasNext\": false\n        }\n    }\n}"}],"_postman_id":"053fa341-2618-4b18-985a-443c9cb52ce4"}],"id":"f65e581e-658f-424a-9152-50f26eef6189","_postman_id":"f65e581e-658f-424a-9152-50f26eef6189","description":""},{"name":"favorites","item":[{"name":"찜 추가","id":"7d84bbab-8b5d-4a85-9a3b-e53f5ab063c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"url":"/books/2/favorite","urlObject":{"path":["books","2","favorite"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"58547c41-e2e6-4834-88ce-d40d7502f927","name":"201","originalRequest":{"method":"POST","header":[],"url":"/books/2/favorite"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"98"},{"key":"Date","value":"Sun, 14 Dec 2025 12:07:23 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"60"},{"key":"ETag","value":"W/\"3c-GUGMkHlIvhOZAWIkfS68JUpskPw\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"찜 추가 완료\",\n    \"data\": {}\n}"},{"id":"ab199210-920e-4157-9ae1-85cc63e27586","name":"401","originalRequest":{"method":"POST","header":[],"url":"/books/2/favorite"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"96"},{"key":"Date","value":"Sun, 14 Dec 2025 12:08:19 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"148"},{"key":"ETag","value":"W/\"94-7Ay9Z0DtSCjkEN4co8ItZQNWDk8\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:08:19.058Z\",\n    \"path\": \"/books/2/favorite\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"fb8d8f05-9042-4b88-93d1-1bdf1e993cf9","name":"409","originalRequest":{"method":"POST","header":[],"url":"/books/2/favorite"},"status":"Conflict","code":409,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"97"},{"key":"Date","value":"Sun, 14 Dec 2025 12:07:48 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"150"},{"key":"ETag","value":"W/\"96-khJFHTZBQcyxmJ1rsAyRPTpecuw\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:07:48.364Z\",\n    \"path\": \"/books/2/favorite\",\n    \"status\": 409,\n    \"code\": \"DUPLICATE_RESOURCE\",\n    \"message\": \"이미 찜한 도서입니다\"\n}"},{"id":"c31008cd-5be0-4c2f-a8f7-d0d2e6425a23","name":"500","originalRequest":{"method":"POST","header":[],"url":"/books/3352/favorite"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"99"},{"key":"Date","value":"Sun, 14 Dec 2025 12:06:33 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"198"},{"key":"ETag","value":"W/\"c6-3zfYqxwQ7uGqay02REa113DIbEA\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:06:33.093Z\",\n    \"status\": \"error\",\n    \"code\": \"DATABASE_ERROR\",\n    \"message\": \"\\nInvalid `prisma.favorite.create()` invocation:\\n\\n\\nForeign key constraint violated: `(not available)`\"\n}"}],"_postman_id":"7d84bbab-8b5d-4a85-9a3b-e53f5ab063c2"},{"name":"찜 목록 조회","id":"46f20464-0b57-4100-86e7-41f726c3f807","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/users/me/favorites?page=1&limit=10","urlObject":{"path":["users","me","favorites"],"host":[""],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}],"variable":[]}},"response":[{"id":"352566dc-24c1-4d52-8a55-e643080950f8","name":"200","originalRequest":{"method":"GET","header":[],"url":"/users/me/favorites"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"380"},{"key":"ETag","value":"W/\"17c-p7/aeuoeCp8vHcqnjwDK0bhn2Pg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:04:52 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"내 찜 목록 조회 완료\",\n    \"data\": {\n        \"favorites\": [\n            {\n                \"id\": 19,\n                \"userId\": 6,\n                \"bookId\": 47,\n                \"book\": {\n                    \"id\": 47,\n                    \"title\": \"책 47\",\n                    \"author\": \"저자5\",\n                    \"price\": 22078,\n                    \"coverImageUrl\": null\n                }\n            },\n            {\n                \"id\": 8,\n                \"userId\": 6,\n                \"bookId\": 30,\n                \"book\": {\n                    \"id\": 30,\n                    \"title\": \"책 30\",\n                    \"author\": \"저자4\",\n                    \"price\": 13985,\n                    \"coverImageUrl\": null\n                }\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 2,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"343e70ec-280b-4416-b570-0a42e95d2403","name":"페이지네이션","originalRequest":{"method":"GET","header":[],"url":{"raw":"/users/me/favorites?page=1&limit=10","host":[""],"path":["users","me","favorites"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"380"},{"key":"ETag","value":"W/\"17c-p7/aeuoeCp8vHcqnjwDK0bhn2Pg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:04:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"내 찜 목록 조회 완료\",\n    \"data\": {\n        \"favorites\": [\n            {\n                \"id\": 19,\n                \"userId\": 6,\n                \"bookId\": 47,\n                \"book\": {\n                    \"id\": 47,\n                    \"title\": \"책 47\",\n                    \"author\": \"저자5\",\n                    \"price\": 22078,\n                    \"coverImageUrl\": null\n                }\n            },\n            {\n                \"id\": 8,\n                \"userId\": 6,\n                \"bookId\": 30,\n                \"book\": {\n                    \"id\": 30,\n                    \"title\": \"책 30\",\n                    \"author\": \"저자4\",\n                    \"price\": 13985,\n                    \"coverImageUrl\": null\n                }\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 2,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"87736279-766b-4db4-8da7-e824da26b320","name":"401","originalRequest":{"method":"GET","header":[],"url":{"raw":"/users/me/favorites?page=1&limit=10","host":[""],"path":["users","me","favorites"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"166"},{"key":"ETag","value":"W/\"a6-SadBuQ07U/4Cc8cOo9af9ybBs+k\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:05:23 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:05:23.565Z\",\n    \"path\": \"/users/me/favorites?page=1&limit=10\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"46f20464-0b57-4100-86e7-41f726c3f807"},{"name":"찜 해제","id":"ac64735d-38ac-49b6-b56d-75727b42ce6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/books/2/favorite","urlObject":{"path":["books","2","favorite"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"01498215-872c-4193-97df-e7e002ca5e22","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/books/2/favorite"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"93"},{"key":"Date","value":"Sun, 14 Dec 2025 12:14:17 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"60"},{"key":"ETag","value":"W/\"3c-8r8UGp+W9ZPzIAZlJZorrGNLCgs\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"찜 제거 완료\",\n    \"data\": {}\n}"},{"id":"86c23914-8824-421f-bc9e-04f09f3b920a","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/books/850/favorite"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"94"},{"key":"Date","value":"Sun, 14 Dec 2025 12:13:45 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"150"},{"key":"ETag","value":"W/\"96-neWlcgNE5TxwhGvswogOcGR4yJ4\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:13:45.390Z\",\n    \"path\": \"/books/850/favorite\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"ac5a6816-944f-428c-abf4-4d9357d2ef48","name":"404","originalRequest":{"method":"DELETE","header":[],"url":"/books/850/favorite"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"95"},{"key":"Date","value":"Sun, 14 Dec 2025 12:09:10 GMT"},{"key":"X-RateLimit-Reset","value":"1765714894"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"129"},{"key":"ETag","value":"W/\"81-3UPUiOtKMZhVkov0HcPH/fke3pk\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:09:10.545Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"Record to delete does not exist.\"\n}"}],"_postman_id":"ac64735d-38ac-49b6-b56d-75727b42ce6a"}],"id":"61b7814e-8f10-4f67-9a8c-d409d556db3b","_postman_id":"61b7814e-8f10-4f67-9a8c-d409d556db3b","description":""},{"name":"cart","item":[{"name":"장바구니 조회","event":[{"listen":"test","script":{"id":"207bef0e-22ed-4540-a54a-023b130cfef8","exec":["pm.test(\"Unauthorized without token\", () => {\r","  pm.response.to.have.status(401);\r","});\r","\r","const json = pm.response.json();\r","pm.expect(json.status).to.eql(\"fail\");\r","pm.expect(json.code).to.eql(\"UNAUTHORIZED\");\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"8c44e2df-5664-4948-9380-48b745ace250","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/cart","urlObject":{"path":["cart"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"c41c2f59-6253-41dd-8b00-0fce8b5587b8","name":"200","originalRequest":{"method":"GET","header":[],"url":"/cart"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"353"},{"key":"ETag","value":"W/\"161-R4ZaiHcc7yYwHWRhRPxD2QTIfyI\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:19:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"장바구니 조회 완료\",\n    \"data\": {\n        \"cart\": {\n            \"id\": 1,\n            \"userId\": 6,\n            \"items\": [\n                {\n                    \"id\": 1,\n                    \"cartId\": 1,\n                    \"bookId\": 2,\n                    \"quantity\": 2,\n                    \"book\": {\n                        \"id\": 2,\n                        \"title\": \"책 2\",\n                        \"author\": \"저자1\",\n                        \"price\": 12376,\n                        \"stock\": 37,\n                        \"isbn\": \"ISBN-2\",\n                        \"description\": \"적당한 도서 2\",\n                        \"coverImageUrl\": null,\n                        \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n                        \"deletedAt\": null\n                    }\n                }\n            ]\n        }\n    }\n}"},{"id":"0d51d0fb-4c61-4426-b28c-22f75b8fcfe9","name":"401","originalRequest":{"method":"GET","header":[],"url":"/cart"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"ETag","value":"W/\"88-F00dwmuSN/2jnPOIPwq9+Tc23ZA\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:19:41 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:19:41.920Z\",\n    \"path\": \"/cart\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"8c44e2df-5664-4948-9380-48b745ace250"},{"name":"책 담기","id":"37d8c174-2db1-4c72-a092-452da386b9c7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{ \r\n    \"bookId\": 2,\r\n    \"quantity\": 2\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items","urlObject":{"path":["cart","items"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"4b1952ab-f29e-452c-9938-1e12248207cb","name":"201","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{ \r\n    \"bookId\": 2,\r\n    \"quantity\": 2\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"ETag","value":"W/\"86-jr4HoQX1KCdMhbMYYnxaEPTA7Ps\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:17:39 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"장바구니에 추가되었습니다\",\n    \"data\": {\n        \"cartItem\": {\n            \"id\": 1,\n            \"cartId\": 1,\n            \"bookId\": 2,\n            \"quantity\": 2\n        }\n    }\n}"},{"id":"39bd4edf-e8ac-407e-ac03-c0ada62c0021","name":"401","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{ \r\n    \"bookId\": 850,\r\n    \"quantity\": 2\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"142"},{"key":"ETag","value":"W/\"8e-zR93lo/fP2CSw+4UgttbNWVXoE0\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:16:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:16:17.702Z\",\n    \"path\": \"/cart/items\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"e25df06b-249f-4194-9a81-38e002821ac3","name":"404","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{ \r\n    \"bookId\": 850,\r\n    \"quantity\": 2\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"130"},{"key":"ETag","value":"W/\"82-QFj3mF9w8ALVBIkuy7MWSu0PZPQ\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:17:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:17:11.885Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"도서를 찾을 수 없습니다\"\n}"},{"id":"3c0ecdd7-28c3-4639-941c-5630df49fca4","name":"422","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{ \r\n    \"bookId\": 2\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"119"},{"key":"ETag","value":"W/\"77-2GzRKN+hPB93w42usNAluehldrg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:18:04 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:18:04.480Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"Invalid request data\"\n}"}],"_postman_id":"37d8c174-2db1-4c72-a092-452da386b9c7"},{"name":"수량 변경","id":"59110e7c-fb82-4c66-91c1-5da0fc20abf5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"quantity\": 3\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items/1","urlObject":{"path":["cart","items","1"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"e99699d4-6816-4d9d-b541-f009cc1eee9b","name":"200","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"quantity\": 3\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items/1"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"ETag","value":"W/\"75-z1Q/IXYH/2pXSot0/gZD+9+jL4g\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:21:07 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"수량 변경 완료\",\n    \"data\": {\n        \"cartItem\": {\n            \"id\": 1,\n            \"cartId\": 1,\n            \"bookId\": 2,\n            \"quantity\": 3\n        }\n    }\n}"},{"id":"ef0780cb-a39e-4e89-9d66-3efd1891839a","name":"401","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"quantity\": 3\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items/1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"144"},{"key":"ETag","value":"W/\"90-9Z5Spn8NW2IJvlOUkG7V4d2o2Po\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:21:32 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:21:32.002Z\",\n    \"path\": \"/cart/items/1\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"a973cf2c-708d-46ef-8cf5-b4028975fe6c","name":"404","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n  \"quantity\": 3\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items/12"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-ru76+egeCIoy7Z9n4nrborkanLY\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:21:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:21:54.106Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"장바구니 항목을 찾을 수 없습니다\"\n}"},{"id":"81ad83a8-bc02-477f-96d0-8abc32bb7428","name":"422","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"{\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/cart/items/12"},"status":"Unprocessable Entity","code":422,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"119"},{"key":"ETag","value":"W/\"77-yH875GJ4v/02dRFQq03WGEjUEjU\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:23:03 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:23:03.789Z\",\n    \"status\": \"fail\",\n    \"code\": \"UNPROCESSABLE_ENTITY\",\n    \"message\": \"Invalid request data\"\n}"}],"_postman_id":"59110e7c-fb82-4c66-91c1-5da0fc20abf5"},{"name":"항목 삭제","id":"fa5a9092-b7ec-4e86-900d-29535be04751","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/cart/items/1","urlObject":{"path":["cart","items","1"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"f342f1fd-ea3f-43de-8316-5365fb1a7e93","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/cart/items/1"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"63"},{"key":"ETag","value":"W/\"3f-rbkN2e0uNsnrWY6VNlvS2xtEqMY\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:24:15 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"항목 삭제 완료\",\n    \"data\": {}\n}"},{"id":"56ef2256-f586-4896-9f8c-389a5471b91c","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/cart/items/1"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"144"},{"key":"ETag","value":"W/\"90-jcm3vn6b4iPZ6g5Qhr3iCbTjNPc\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:23:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:23:55.138Z\",\n    \"path\": \"/cart/items/1\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"c58dddab-45fe-4780-9a0d-00f8aa96df98","name":"404","originalRequest":{"method":"DELETE","header":[],"url":"/cart/items/1"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-WHYwg70IBnGUDapsrtrOElu/zSg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:24:36 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:24:36.252Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"장바구니 항목을 찾을 수 없습니다\"\n}"}],"_postman_id":"fa5a9092-b7ec-4e86-900d-29535be04751"},{"name":"전체 삭제","id":"96c394fd-ef3e-4e42-97ae-16420be5f932","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"DELETE","header":[],"url":"/cart","urlObject":{"path":["cart"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"f12b693e-5ef8-48a8-867c-b4a5d849174d","name":"200","originalRequest":{"method":"DELETE","header":[],"url":"/cart"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"72"},{"key":"ETag","value":"W/\"48-oiW6C+j2ugu39oFXjTwkE2F+vVo\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:25:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"장바구니 비우기 완료\",\n    \"data\": {}\n}"},{"id":"25b1c313-4b34-4d17-8447-10a6e91af939","name":"401","originalRequest":{"method":"DELETE","header":[],"url":"/cart"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"ETag","value":"W/\"88-NgLH2bQfXTxUUg5XwkAePN/FCT4\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:25:55 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:25:55.329Z\",\n    \"path\": \"/cart\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"96c394fd-ef3e-4e42-97ae-16420be5f932"}],"id":"c52da5d8-3340-40e6-a014-c8d29c0864da","_postman_id":"c52da5d8-3340-40e6-a014-c8d29c0864da","description":""},{"name":"order","item":[{"name":"주문 생성","id":"759da1d1-ba47-4257-bb89-286d03ab5a6d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"url":"/orders","urlObject":{"path":["orders"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"746cc92b-e311-4c61-9e3a-4e82cb5c154f","name":"201","originalRequest":{"method":"POST","header":[],"url":"/orders"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"448"},{"key":"ETag","value":"W/\"1c0-2d19AzYQJoUJ5Lr8+Hgi6OTFdhk\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:27:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"주문 생성 완료\",\n    \"data\": {\n        \"order\": {\n            \"id\": 21,\n            \"userId\": 6,\n            \"totalAmount\": 24752,\n            \"status\": \"PENDING\",\n            \"createdAt\": \"2025-12-14T12:27:43.730Z\",\n            \"items\": [\n                {\n                    \"id\": 21,\n                    \"orderId\": 21,\n                    \"bookId\": 2,\n                    \"quantity\": 2,\n                    \"unitPrice\": 12376,\n                    \"book\": {\n                        \"id\": 2,\n                        \"title\": \"책 2\",\n                        \"author\": \"저자1\",\n                        \"price\": 12376,\n                        \"stock\": 37,\n                        \"isbn\": \"ISBN-2\",\n                        \"description\": \"적당한 도서 2\",\n                        \"coverImageUrl\": null,\n                        \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n                        \"deletedAt\": null\n                    }\n                }\n            ]\n        }\n    }\n}"},{"id":"1597b825-75b8-4b89-a498-adcab93760fd","name":"401","originalRequest":{"method":"POST","header":[],"url":"/orders"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"138"},{"key":"ETag","value":"W/\"8a-miRuw1sOAGLvB/kihokIX+3k00g\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:31:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:31:11.824Z\",\n    \"path\": \"/orders\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"eeff213e-2c67-4a4e-a389-05fc75197809","name":"409","originalRequest":{"method":"POST","header":[],"url":"/orders"},"status":"Conflict","code":409,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"127"},{"key":"ETag","value":"W/\"7f-DRPbMANFNk54hdtBtZjHe3+YKqY\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:29:53 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:29:53.920Z\",\n    \"status\": \"fail\",\n    \"code\": \"STATE_CONFLICT\",\n    \"message\": \"장바구니가 비어있습니다\"\n}"}],"_postman_id":"759da1d1-ba47-4257-bb89-286d03ab5a6d"},{"name":"내 주문 목록","id":"8ab34289-7ff7-439a-bd30-cda0d32c9dfa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/orders?page=1&limit=10&sort=createdAt&order=desc","urlObject":{"path":["orders"],"host":[""],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"}],"variable":[]}},"response":[{"id":"59e179a3-84e0-4c32-9b6d-3f47df8e4410","name":"200(페이지네이션,정렬)","originalRequest":{"method":"GET","header":[],"url":{"raw":"/orders?page=1&limit=10&sort=createdAt&order=desc","host":[""],"path":["orders"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"593"},{"key":"ETag","value":"W/\"251-vAwsVPA1mJDOAn2/GIWJXUUYQh0\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:28:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"내 주문 목록 조회 완료\",\n    \"data\": {\n        \"orders\": [\n            {\n                \"id\": 21,\n                \"userId\": 6,\n                \"totalAmount\": 24752,\n                \"status\": \"PENDING\",\n                \"createdAt\": \"2025-12-14T12:27:43.730Z\",\n                \"items\": [\n                    {\n                        \"id\": 21,\n                        \"orderId\": 21,\n                        \"bookId\": 2,\n                        \"quantity\": 2,\n                        \"unitPrice\": 12376,\n                        \"book\": {\n                            \"id\": 2,\n                            \"title\": \"책 2\",\n                            \"coverImageUrl\": null\n                        }\n                    }\n                ]\n            },\n            {\n                \"id\": 13,\n                \"userId\": 6,\n                \"totalAmount\": 28555,\n                \"status\": \"PAID\",\n                \"createdAt\": \"2025-12-14T09:40:42.740Z\",\n                \"items\": [\n                    {\n                        \"id\": 13,\n                        \"orderId\": 13,\n                        \"bookId\": 89,\n                        \"quantity\": 1,\n                        \"unitPrice\": 28555,\n                        \"book\": {\n                            \"id\": 89,\n                            \"title\": \"책 89\",\n                            \"coverImageUrl\": null\n                        }\n                    }\n                ]\n            }\n        ],\n        \"meta\": {\n            \"page\": 1,\n            \"limit\": 10,\n            \"total\": 2,\n            \"hasNext\": false\n        }\n    }\n}"},{"id":"de7ea0ab-b684-4343-8361-fd078b212d43","name":"401","originalRequest":{"method":"GET","header":[],"url":{"raw":"/orders?page=1&limit=10&sort=createdAt&order=desc","host":[""],"path":["orders"],"query":[{"key":"page","value":"1"},{"key":"limit","value":"10"},{"key":"sort","value":"createdAt"},{"key":"order","value":"desc"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"180"},{"key":"ETag","value":"W/\"b4-TFYN1LtGkx6z1LXvVOSlFpeu41s\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:32:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:32:38.467Z\",\n    \"path\": \"/orders?page=1&limit=10&sort=createdAt&order=desc\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"}],"_postman_id":"8ab34289-7ff7-439a-bd30-cda0d32c9dfa"},{"name":"내 주문 상세보기","id":"d35e610f-d8c3-46ce-b1dd-e65513e5058e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/orders/21","urlObject":{"path":["orders","21"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"0c318fa4-db0c-4aa0-8118-d2a60bbbd713","name":"200","originalRequest":{"method":"GET","header":[],"url":"/orders/21"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"455"},{"key":"ETag","value":"W/\"1c7-JMfbbwZXZj8H6ArvDsXb+HeAhjE\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:35:31 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"주문 상세 조회 완료\",\n    \"data\": {\n        \"order\": {\n            \"id\": 21,\n            \"userId\": 6,\n            \"totalAmount\": 24752,\n            \"status\": \"PENDING\",\n            \"createdAt\": \"2025-12-14T12:27:43.730Z\",\n            \"items\": [\n                {\n                    \"id\": 21,\n                    \"orderId\": 21,\n                    \"bookId\": 2,\n                    \"quantity\": 2,\n                    \"unitPrice\": 12376,\n                    \"book\": {\n                        \"id\": 2,\n                        \"title\": \"책 2\",\n                        \"author\": \"저자1\",\n                        \"price\": 12376,\n                        \"stock\": 35,\n                        \"isbn\": \"ISBN-2\",\n                        \"description\": \"적당한 도서 2\",\n                        \"coverImageUrl\": null,\n                        \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n                        \"deletedAt\": null\n                    }\n                }\n            ]\n        }\n    }\n}"},{"id":"03e84cb6-9cfb-4552-a105-c59c61ca708a","name":"401","originalRequest":{"method":"GET","header":[],"url":"/orders/1000"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-icoc/JmynptGD21xol5Q0NX+sYg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:34:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:34:24.202Z\",\n    \"path\": \"/orders/1000\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"7fdf55d1-84be-4e93-9fa0-ac26178592d2","name":"403","originalRequest":{"method":"GET","header":[],"url":"/orders/10"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"ETag","value":"W/\"75-BnVcTjcp6iHEGiVlS4UHUAWTzDY\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:33:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:33:18.438Z\",\n    \"status\": \"fail\",\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"접근 권한이 없습니다\"\n}"},{"id":"28ec1327-2586-4fbf-ad7a-2e19a0d3bc4b","name":"404","originalRequest":{"method":"GET","header":[],"url":"/orders/1000"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"130"},{"key":"ETag","value":"W/\"82-Q7sag4CuVpbDPfbrJGXO6/BK9FI\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:33:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:33:58.087Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"주문을 찾을 수 없습니다\"\n}"}],"_postman_id":"d35e610f-d8c3-46ce-b1dd-e65513e5058e"},{"name":"주문 취소","id":"37c41272-63c4-4ab6-b511-47eb564b9244","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"url":"/orders/21/cancel","urlObject":{"path":["orders","21","cancel"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"8220d9ed-c80f-4a4d-94a7-52e0cbe60809","name":"200","originalRequest":{"method":"POST","header":[],"url":"/orders/21/cancel"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"450"},{"key":"ETag","value":"W/\"1c2-W32utAxd3h1KnigjzBqMUOrz8Eg\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:38:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\",\n    \"message\": \"주문 취소 완료\",\n    \"data\": {\n        \"order\": {\n            \"id\": 21,\n            \"userId\": 6,\n            \"totalAmount\": 24752,\n            \"status\": \"CANCELLED\",\n            \"createdAt\": \"2025-12-14T12:27:43.730Z\",\n            \"items\": [\n                {\n                    \"id\": 21,\n                    \"orderId\": 21,\n                    \"bookId\": 2,\n                    \"quantity\": 2,\n                    \"unitPrice\": 12376,\n                    \"book\": {\n                        \"id\": 2,\n                        \"title\": \"책 2\",\n                        \"author\": \"저자1\",\n                        \"price\": 12376,\n                        \"stock\": 35,\n                        \"isbn\": \"ISBN-2\",\n                        \"description\": \"적당한 도서 2\",\n                        \"coverImageUrl\": null,\n                        \"createdAt\": \"2025-12-14T09:40:42.565Z\",\n                        \"deletedAt\": null\n                    }\n                }\n            ]\n        }\n    }\n}"},{"id":"8176dd2d-7847-4cff-9610-160fea3371ae","name":"401","originalRequest":{"method":"POST","header":[],"url":"/orders/1/cancel"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"147"},{"key":"ETag","value":"W/\"93-NJH86UyexgEPK5aZ3qzDBoSufbc\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:37:19 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:37:19.672Z\",\n    \"path\": \"/orders/1/cancel\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"6ec725e9-ae33-4095-8f79-529bcb1be53f","name":"403","originalRequest":{"method":"POST","header":[],"url":"/orders/1/cancel"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"ETag","value":"W/\"75-gkuAhLzTxlKH70meS26s+y1G30U\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:36:43 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:36:43.201Z\",\n    \"status\": \"fail\",\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"접근 권한이 없습니다\"\n}"},{"id":"340001fa-5579-4579-96a3-8635bc7fdf8d","name":"404","originalRequest":{"method":"POST","header":[],"url":"/orders/2221/cancel"},"status":"Not Found","code":404,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"130"},{"key":"ETag","value":"W/\"82-aU8zxZflZklLrh3UKYojWaXZI+U\""},{"key":"Date","value":"Sun, 14 Dec 2025 12:37:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T12:37:57.438Z\",\n    \"status\": \"fail\",\n    \"code\": \"RESOURCE_NOT_FOUND\",\n    \"message\": \"주문을 찾을 수 없습니다\"\n}"}],"_postman_id":"37c41272-63c4-4ab6-b511-47eb564b9244"}],"id":"14590ab4-99e0-4473-b547-0ce543a186ef","_postman_id":"14590ab4-99e0-4473-b547-0ce543a186ef","description":""},{"name":"metrics","item":[{"name":"시스템 메트릭 조회","id":"a29cd18b-d819-48ca-bf94-f08b0da1ffe5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"GET","header":[],"url":"/metrics","urlObject":{"path":["metrics"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"806db156-ca34-48c4-9b66-9138fa620159","name":"200","originalRequest":{"method":"GET","header":[],"url":"/metrics"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"135"},{"key":"ETag","value":"W/\"87-65FzOxk1ipUccVMnBT9CchsIwjo\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:09:16 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"totalRequests\": 116,\n    \"totalErrors\": 96,\n    \"avgLatency\": 7.198275862068965,\n    \"errorRate\": 82.75862068965517,\n    \"requestsPerMinute\": 16,\n    \"uptime\": 469\n}"},{"id":"940bd2e1-a73d-4b97-98b1-c9dd12b3757f","name":"401","originalRequest":{"method":"GET","header":[],"url":"/metrics"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"139"},{"key":"ETag","value":"W/\"8b-lsTFmKrdS28pSe6vKuLO1oQjygw\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:08:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T20:08:57.622Z\",\n    \"path\": \"/metrics\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"97464ce3-f3a9-458f-8463-3eb5597e4c2b","name":"403","originalRequest":{"method":"GET","header":[],"url":"/metrics"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"116"},{"key":"ETag","value":"W/\"74-6Ws7wMIlDsuns0AIHCF6rBQje3Y\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:10:05 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T20:10:05.833Z\",\n    \"path\": \"/metrics\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"a29cd18b-d819-48ca-bf94-f08b0da1ffe5"},{"name":"메트릭 초기화","id":"d250fdcb-85c4-4ee8-a8d9-efa882bd8fb8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":""}]},"isInherited":false},"method":"POST","header":[],"url":"/metrics/reset","urlObject":{"path":["metrics","reset"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"0d8f4bc0-b3df-408b-b887-813adf78eff9","name":"200","originalRequest":{"method":"POST","header":[],"url":"/metrics/reset"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"52"},{"key":"ETag","value":"W/\"34-kC1gSMc2OtLvoHaM00J7qTPb48M\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:09:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"메트릭이 초기화되었습니다.\"\n}"},{"id":"974c236c-c4f8-4bae-b94e-9ed286dc1c0c","name":"401","originalRequest":{"method":"POST","header":[],"url":"/metrics/reset"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"145"},{"key":"ETag","value":"W/\"91-NHeHsQqBV9t/nL5H4wwUEvH4Lbk\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:09:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T20:09:38.684Z\",\n    \"path\": \"/metrics/reset\",\n    \"status\": 401,\n    \"code\": \"UNAUTHORIZED\",\n    \"message\": \"인증 토큰이 필요합니다.\"\n}"},{"id":"2e9a5f3f-2b99-478e-8400-6f37af951578","name":"403","originalRequest":{"method":"POST","header":[],"url":"/metrics/reset"},"status":"Forbidden","code":403,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"122"},{"key":"ETag","value":"W/\"7a-13tZAEBGbxypKurU7NJtcs0H8yg\""},{"key":"Date","value":"Sun, 14 Dec 2025 20:10:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"timestamp\": \"2025-12-14T20:10:13.910Z\",\n    \"path\": \"/metrics/reset\",\n    \"status\": 403,\n    \"code\": \"FORBIDDEN\",\n    \"message\": \"권한 없음\"\n}"}],"_postman_id":"d250fdcb-85c4-4ee8-a8d9-efa882bd8fb8"}],"id":"40f25a19-ccf4-4a09-85a3-042cac600b21","_postman_id":"40f25a19-ccf4-4a09-85a3-042cac600b21","description":""},{"name":"health","id":"3b9687a4-007c-40be-8f30-05f2d3f735c0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"/health","urlObject":{"path":["health"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"3928918a-0232-4fa0-ab8a-2c68c2e6400f","name":"health","originalRequest":{"method":"GET","header":[],"url":"/health"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"http://localhost:5173"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Credentials","value":"true"},{"key":"X-RateLimit-Limit","value":"100"},{"key":"X-RateLimit-Remaining","value":"98"},{"key":"Date","value":"Sun, 14 Dec 2025 11:49:26 GMT"},{"key":"X-RateLimit-Reset","value":"1765713822"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"88"},{"key":"ETag","value":"W/\"58-e6/+3kZ8Ms7TijiToEyHziSNjeM\""},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"ok\",\n    \"version\": \"1.0.0\",\n    \"buildTime\": \"2025-12-14T00:00:00Z\",\n    \"uptime\": 54.8976135\n}"}],"_postman_id":"3b9687a4-007c-40be-8f30-05f2d3f735c0"}],"event":[{"listen":"prerequest","script":{"id":"19255618-1c5a-43ff-874c-e36dfb0a4599","type":"text/javascript","packages":{},"requests":{},"exec":[""]}},{"listen":"test","script":{"id":"2548a073-e8bd-41f3-ab4f-bc1d3db43df7","type":"text/javascript","packages":{},"requests":{},"exec":[""]}}],"variable":[{"key":"baseUrl","value":""},{"key":"accessToken","value":""},{"key":"refreshToken","value":""}]}