{"info":{"_postman_id":"2552566d-c0e9-4a94-8d0d-600a9d1eb5e7","name":"Recova API","description":"<html><head></head><body><p>Ini adalah dokumentasi resmi untuk API backend aplikasi Recova. Recova adalah platform pendamping digital berbasis AI yang dirancang untuk membantu pengguna dalam perjalanan pemulihan dari kecanduan pornografi melalui pendekatan yang suportif, terstruktur, dan anonim.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"38960737","collectionId":"2552566d-c0e9-4a94-8d0d-600a9d1eb5e7","publishedId":"2sB3QJQBZ8","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2025-10-08T10:28:51.000Z"},"item":[{"name":"Welcome","item":[{"name":"Welcome Message","id":"abe85305-cf91-4024-8aa8-27f52f632fd9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"http://localhost:3000","urlObject":{"protocol":"http","port":"3000","host":["localhost"],"query":[],"variable":[]}},"response":[{"id":"609578cd-35f2-400a-bffc-3a996fa206f0","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"http://localhost:3000"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"1553"},{"key":"ETag","value":"W/\"611-AK8bzIXHHze7lrffBCa5TVKDk2k\""},{"key":"Date","value":"Wed, 08 Oct 2025 10:14:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html>\n<html lang=\"id\">\n    <head>\n        <meta charset=\"UTF-8\" />\n        <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n        <title>Welcome to Recova API</title>\n        <style>\r\n      body {\r\n        background-color: #121212;\r\n        color: #e0e0e0;\r\n        font-family:\r\n          -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;\r\n        display: flex;\r\n        justify-content: center;\r\n        align-items: center;\r\n        height: 100vh;\r\n        margin: 0;\r\n        text-align: center;\r\n      }\r\n\r\n      .container {\r\n        max-width: 600px;\r\n        padding: 40px;\r\n      }\r\n\r\n      h1 {\r\n        font-size: 3rem;\r\n        font-weight: 700;\r\n        color: #ffffff;\r\n        margin-bottom: 1rem;\r\n      }\r\n\r\n      p {\r\n        font-size: 1.2rem;\r\n        line-height: 1.6;\r\n        margin-bottom: 2rem;\r\n      }\r\n\r\n      a {\r\n        color: #4caf50;\r\n        text-decoration: none;\r\n        font-weight: 600;\r\n        border-bottom: 2px solid transparent;\r\n        transition: border-bottom 0.3s ease;\r\n      }\r\n\r\n      a:hover {\r\n        border-bottom: 2px solid #4caf50;\r\n      }\r\n    </style>\n    </head>\n    <body>\n        <div class=\"container\">\n            <h1>Welcome to Recova API</h1>\n            <p>\r\n        Untuk melihat daftar menu dan cara kerja API, silakan kunjungi\r\n        \n                <a href=\"https://documenter.getpostman.com/view/YOUR_COLLECTION_ID\" target=\"_blank\" rel=\"noopener noreferrer\"\r\n          >dokumentasi kami</a\r\n        >.\n            </p>\n        </div>\n    </body>\n</html>"}],"_postman_id":"abe85305-cf91-4024-8aa8-27f52f632fd9"}],"id":"99f0fc12-efa2-4acb-b13b-21f3da53f7b3","description":"<p>Endpoint untuk tampilan awal.</p>\n","_postman_id":"99f0fc12-efa2-4acb-b13b-21f3da53f7b3"},{"name":"Auth and Onboarding","item":[{"name":"Register and Login","id":"84ec15c9-42f4-4e92-819c-317edba6f7fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsImtpZCI6ImZiOWY5MzcxZDU3NTVmM2UzODNhNDBhYjNhMTcyY2Q4YmFjYTUxN2YiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhenAiOiIxNTczMTU1NTIyMDctdGxwbDhhZHV1Z2RwdGVydXBodHEyNDY3bzhkOGxtcmQuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiIxNTczMTU1NTIyMDctdGxwbDhhZHV1Z2RwdGVydXBodHEyNDY3bzhkOGxtcmQuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMTQ0MDg3NzgwODI5NTc0OTUxODYiLCJlbWFpbCI6InNhbG1hbmFiZHVycmFobWFuMTIzNDVAZ21haWwuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImF0X2hhc2giOiJid0ViaktaRWhJOVlnSTNHQXBOSjZnIiwiaWF0IjoxNzYxMjMxMTUzLCJleHAiOjE3NjEyMzQ3NTN9.C_SuKu0LPuPrc30AT7IjyB-wk-RkFuqs6u1Y-YC6P6kmQp13Fsc_4YHhwvhQyksbjd8ZZYbIDGmGZ1VT-d2BGUX9TLp4a9DsABspy3CE4ZzWVGEr-9F8H733pvJZBENuTWfmWMAiYxwUDf0cSO7qqBskhskX7bLU3KywKN2l9ob74q1N4FcISGwLp6zjXEDh4O7mDlx0pnignhvM8XeC8ttva3vz637knu-635MFf4GPAf2qkin2hXcq5D9aMh5hnJxUuOAb8RfPK0svMDNn8GV6rdldTa8I62CiPITyrHH5tIwIZaejQQDMqRT3_lTaGo52o2VbS-fe-SoJ8AlPNA\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/google","description":"<p>Endpoint ini adalah titik masuk utama. Ia menerima token ID Google dari aplikasi mobile, memverifikasinya, lalu membuat pengguna baru jika belum ada, atau langsung memberikan akses jika sudah terdaftar.</p>\n","urlObject":{"path":["auth","google"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"2ccfac8f-cca3-42d6-8464-24c8536bdc29","name":"500 Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ik1hbiJ9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/google"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"826"},{"key":"ETag","value":"W/\"33a-HHdifWma/Bo0vJzMc0oIwpu2F0M\""},{"key":"Date","value":"Sat, 04 Oct 2025 11:58:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"No pem found for envelope: {\\\"alg\\\":\\\"RS256\\\",\\\"typ\\\":\\\"JWT\\\"}\",\n    \"data\": null,\n    \"error\": \"Error: No pem found for envelope: {\\\"alg\\\":\\\"RS256\\\",\\\"typ\\\":\\\"JWT\\\"}\\n    at OAuth2Client.verifySignedJwtWithCertsAsync (C:\\\\Users\\\\Man\\\\Desktop\\\\recova-backend-api\\\\node_modules\\\\google-auth-library\\\\build\\\\src\\\\auth\\\\oauth2client.js:724:19)\\n    at OAuth2Client.verifyIdTokenAsync (C:\\\\Users\\\\Man\\\\Desktop\\\\recova-backend-api\\\\node_modules\\\\google-auth-library\\\\build\\\\src\\\\auth\\\\oauth2client.js:541:34)\\n    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\\n    at async verifyGoogleTokenAndLogin (C:\\\\Users\\\\Man\\\\Desktop\\\\recova-backend-api\\\\src\\\\api\\\\auth\\\\auth.service.ts:9:18)\\n    at async <anonymous> (C:\\\\Users\\\\Man\\\\Desktop\\\\recova-backend-api\\\\src\\\\api\\\\auth\\\\auth.controller.ts:8:20)\"\n}"}],"_postman_id":"84ec15c9-42f4-4e92-819c-317edba6f7fa"},{"name":"Create Onboarding Data","id":"fe727480-73cd-4a07-b06a-f8244e45b0c6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\",\r\n      \"checkinTime\": \"11:00\",\r\n      \"userWhy\": \"Saya ingin pulih dari kecanduan ini untuk memperbaiki hubungan dengan pasangan dan menjadi pribadi yang lebih baik bagi keluarga saya\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding","description":"<p>Setelah pengguna baru menjawab serangkaian kuesioner di aplikasi, endpoint ini dipanggil untuk menyimpan semua jawaban dan hasil analisis awal ke database.</p>\n","urlObject":{"path":["auth","onboarding"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"e1653ea5-807b-4d48-81f5-ea518c886902","name":"201 Created","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\",\r\n      \"checkinTime\": \"11:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"98"},{"key":"RateLimit-Reset","value":"849"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"554"},{"key":"ETag","value":"W/\"22a-MBgTQ8JcsLPqnhMdk7c0tciNn/0\""},{"key":"Date","value":"Wed, 15 Oct 2025 11:55:24 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Data onboarding berhasil disimpan\",\n    \"data\": {\n        \"id\": \"f34037cc-eec8-4112-a710-cbb1686c0d3f\",\n        \"answers\": {\n            \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\n            \"support_system\": \"Konselor online, grup recovery\",\n            \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\n            \"durasi_kecanduan\": \"1 tahun\",\n            \"frekuensi_harian\": \"5 kali per hari\"\n        },\n        \"dependencyLevel\": \"Medium\",\n        \"aiSummary\": null,\n        \"createdAt\": \"2025-10-15T11:55:24.022Z\",\n        \"updatedAt\": \"2025-10-15T11:55:24.022Z\",\n        \"userId\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\"\n    },\n    \"error\": null\n}"},{"id":"532dc256-cc82-428a-add6-256ed88b9ff5","name":"201 Created - MVP","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\",\r\n      \"checkinTime\": \"11:00\",\r\n      \"userWhy\": \"Saya ingin pulih dari kecanduan ini untuk memperbaiki hubungan dengan pasangan dan menjadi pribadi yang lebih baik bagi keluarga saya\",\r\n      \"userId\": \"f202df0f-fe47-4fb8-8c59-054391d639df\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"94"},{"key":"RateLimit-Reset","value":"692"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1331"},{"key":"ETag","value":"W/\"533-tMwODltgQrM4jDzN5MQA7Vv2mtQ\""},{"key":"Date","value":"Fri, 14 Nov 2025 14:36:29 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Data onboarding berhasil disimpan\",\n    \"data\": {\n        \"id\": \"5b15cc06-b934-4aec-b073-8c89ff421362\",\n        \"answers\": {\n            \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\n            \"support_system\": \"Konselor online, grup recovery\",\n            \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\n            \"durasi_kecanduan\": \"1 tahun\",\n            \"frekuensi_harian\": \"5 kali per hari\"\n        },\n        \"dependencyLevel\": \"Medium\",\n        \"aiSummary\": {\n            \"level\": \"Tinggi\",\n            \"title\": \"Analisis Awal: Ketergantungan Tinggi\",\n            \"level_description\": \"Jawabanmu menunjukkan adanya kecenderungan tinggi terhadap ketergantungan. Frekuensi penggunaan yang tinggi dan dampak kesehatan yang dilaporkan mengindikasikan bahwa ini mungkin sulit dikendalikan dan mempengaruhi kualitas hidupmu.\",\n            \"pattern_analysis\": \"Pola utamamu tampaknya adalah penggunaan sebagai pelarian dari stres kerja, kesepian, dan kurangnya kasih sayang. Ini mengindikasikan adanya kebutuhan emosional yang belum terpenuhi.\",\n            \"encouragement\": \"Hasil ini tidak mendefinisikan dirimu. Mengakui adanya masalah adalah langkah pertama yang penting. Dengan dukungan konselor online dan grup recovery, serta kemauan untuk berubah, kamu mampu mengendalikan situasi ini. Kami percaya padamu.\"\n        },\n        \"createdAt\": \"2025-11-14T14:36:21.764Z\",\n        \"updatedAt\": \"2025-11-14T14:36:21.764Z\",\n        \"userId\": \"f202df0f-fe47-4fb8-8c59-054391d639df\"\n    },\n    \"error\": null\n}"},{"id":"a3a4410e-a348-48f0-a77d-7d51ea05263a","name":"201 Created - AI Model Get Limited","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\",\r\n      \"checkinTime\": \"11:00\",\r\n      \"userWhy\": \"Saya ingin pulih dari kecanduan ini untuk memperbaiki hubungan dengan pasangan dan menjadi pribadi yang lebih baik bagi keluarga saya\",\r\n      \"userId\": \"f202df0f-fe47-4fb8-8c59-054391d639df\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"96"},{"key":"RateLimit-Reset","value":"777"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"596"},{"key":"ETag","value":"W/\"254-UeFWWAmayo1XMwrL7vpg8BB+YOE\""},{"key":"Date","value":"Fri, 14 Nov 2025 14:35:05 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Data onboarding berhasil disimpan\",\n    \"data\": {\n        \"id\": \"f6b37e35-63b9-4a7e-9333-2cf77b1cf948\",\n        \"answers\": {\n            \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\n            \"support_system\": \"Konselor online, grup recovery\",\n            \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\n            \"durasi_kecanduan\": \"1 tahun\",\n            \"frekuensi_harian\": \"5 kali per hari\"\n        },\n        \"dependencyLevel\": \"Medium\",\n        \"aiSummary\": {\n            \"error\": \"AI summary tidak tersedia saat ini\"\n        },\n        \"createdAt\": \"2025-11-14T14:34:57.398Z\",\n        \"updatedAt\": \"2025-11-14T14:34:57.398Z\",\n        \"userId\": \"f202df0f-fe47-4fb8-8c59-054391d639df\"\n    },\n    \"error\": null\n}"},{"id":"3ce932de-7f3d-4358-9e1e-fb5c8e4ef2b2","name":"400 Bad Request - Validation Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"\",\r\n      \"checkinTime\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"181"},{"key":"ETag","value":"W/\"b5-S86RI5rhfaLotYHUaijJ0Ma4TyU\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:02:34 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Kesalahan validasi\",\n    \"data\": null,\n    \"error\": {\n        \"dependencyLevel\": \"Tingkat ketergantungan harus diisi\",\n        \"checkinTime\": \"Format waktu check-in tidak valid, gunakan format HH:mm\"\n    }\n}"},{"id":"e7e7014e-e579-4694-8bb9-2cc1a169eb87","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang \",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Pasangan (sudah cerita), konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"119"},{"key":"ETag","value":"W/\"77-N4IaKaJ9bDZQrHR53QsRtchqhB4\""},{"key":"Date","value":"Wed, 15 Oct 2025 11:31:06 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak valid\",\n    \"data\": null,\n    \"error\": \"Token tidak valid: invalid signature\"\n}"},{"id":"ab26f316-7ea8-462b-b767-c1496fd162db","name":"500 Internal Server Error - User Already Onboarding","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"answers\": {\r\n        \"durasi_kecanduan\": \"1 tahun\",\r\n        \"frekuensi_harian\": \"5 kali per hari\",\r\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\r\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\r\n        \"support_system\": \"Konselor online, grup recovery\"\r\n      },\r\n      \"dependencyLevel\": \"Medium\",\r\n      \"checkinTime\": \"11:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/auth/onboarding"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"97"},{"key":"RateLimit-Reset","value":"831"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"342"},{"key":"ETag","value":"W/\"156-XMACZk6t4XOqeHOIjbjC56cF4Dc\""},{"key":"Date","value":"Wed, 15 Oct 2025 11:55:42 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Pengguna sudah menyelesaikan onboarding\",\n    \"data\": null,\n    \"error\": \"Error: Pengguna sudah menyelesaikan onboarding\\n    at saveOnboardingData (/mnt/OS/Users/Man/Desktop/recova-backend-api/src/api/auth/auth.service.ts:63:11)\\n    at async <anonymous> (/mnt/OS/Users/Man/Desktop/recova-backend-api/src/api/auth/auth.controller.ts:26:19)\"\n}"}],"_postman_id":"fe727480-73cd-4a07-b06a-f8244e45b0c6"}],"id":"86c93374-412c-40aa-91e1-7ce9bd966ce4","description":"<p>Endpoint dalam folder ini bertanggung jawab untuk proses \"gerbang masuk\" pengguna, mulai dari autentikasi hingga penyiapan awal akun.</p>\n","_postman_id":"86c93374-412c-40aa-91e1-7ce9bd966ce4"},{"name":"Users","item":[{"name":"Get User Data","id":"93f75244-8085-48ec-92a7-d4e1adb5d2c3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/me","description":"<p>Mengembalikan data profil lengkap dari pengguna yang sedang login. Data sensitif seperti <code>googleId</code> tidak akan disertakan.</p>\n","urlObject":{"path":["users","me"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"35ed3ac6-9094-47ad-a57f-3b7d1d68a749","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/users/me"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"96"},{"key":"RateLimit-Reset","value":"537"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"303"},{"key":"ETag","value":"W/\"12f-zR96GcjOIlq1MbtXslXOOglzhIs\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:08:38 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Profil pengguna berhasil diambil\",\n    \"data\": {\n        \"id\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\",\n        \"email\": \"agilganteng@gmail.com\",\n        \"nickname\": \"agilganteng\",\n        \"userWhy\": \"Karena ingin belajar konsisten journaling\",\n        \"checkinTime\": \"1970-01-01T04:00:00.000Z\",\n        \"createdAt\": \"2025-10-15T17:59:37.268Z\"\n    },\n    \"error\": null\n}"},{"id":"5979e28c-8c85-43b0-a9aa-0c3fe72ea3e9","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/users/me"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"95"},{"key":"RateLimit-Reset","value":"521"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:08:54 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"93f75244-8085-48ec-92a7-d4e1adb5d2c3"},{"name":"Update User Settings","id":"2d1714c9-936a-42b8-8c92-259257400649","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"nickname\": \"agilgantengduniaakhirat\",\r\n    \"userWhy\": \"Agar bisa menjadi lebih fokus untuk bekerja dan kuliah\",\r\n    \"checkinTime\": \"09:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/settings","description":"<p>Memungkinkan pengguna untuk mengubah data personal mereka seperti <code>nickname</code>, <code>userWhy</code>, atau <code>checkin_time</code>.</p>\n","urlObject":{"path":["users","settings"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"8d329469-96a7-4f37-83db-3a40fe9c1ad0","name":"200 OK","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"nickname\": \"agilgantengduniaakhirat\",\r\n    \"userWhy\": \"Agar bisa menjadi lebih fokus untuk bekerja dan kuliah\",\r\n    \"checkinTime\": \"09:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/settings"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"92"},{"key":"RateLimit-Reset","value":"399"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"335"},{"key":"ETag","value":"W/\"14f-fMO7K1OE64/GuzmZijXDn0+ii2k\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:10:56 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Pengaturan pengguna berhasil diperbarui\",\n    \"data\": {\n        \"id\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\",\n        \"email\": \"agilganteng@gmail.com\",\n        \"nickname\": \"agilgantengduniaakhirat\",\n        \"userWhy\": \"Agar bisa menjadi lebih fokus untuk bekerja dan kuliah\",\n        \"checkinTime\": \"1970-01-01T02:00:00.000Z\",\n        \"createdAt\": \"2025-10-15T17:59:37.268Z\"\n    },\n    \"error\": null\n}"},{"id":"f83bb031-7fb3-4fd5-b774-cb51f128d0cc","name":"400 Bad Request - Validation Error","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"nickname\": \"agilgantengduniaakhirat\",\r\n    \"userWhy\": \"\",\r\n    \"checkinTime\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/settings"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"91"},{"key":"RateLimit-Reset","value":"385"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"189"},{"key":"ETag","value":"W/\"bd-HBnt0Vh4NrPLROhzUkN5BDLHlKE\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:11:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Kesalahan validasi\",\n    \"data\": null,\n    \"error\": {\n        \"userWhy\": \"Alasan Anda harus terdiri dari minimal 10 karakter\",\n        \"checkinTime\": \"Format waktu check-in tidak valid, gunakan format HH:mm\"\n    }\n}"},{"id":"d409279c-35b5-41f8-9592-1869497898dc","name":"401 Unauthorized","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"nickname\": \"agilgantengduniaakhirat\",\r\n    \"userWhy\": \"Agar bisa menjadi lebih fokus untuk bekerja dan kuliah\",\r\n    \"checkinTime\": \"09:00\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/settings"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"93"},{"key":"RateLimit-Reset","value":"411"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:10:44 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"2d1714c9-936a-42b8-8c92-259257400649"},{"name":"Reset User Data","id":"a0a251c2-dbc2-404a-81bc-36984283ed5f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/users/me/reset-data","description":"<p>Endpoint untuk melakukan reset data untuk pengguna.</p>\n","urlObject":{"path":["users","me","reset-data"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"a5d07db2-0c24-4048-b5cc-47e48bb66ef5","name":"200 OK","originalRequest":{"method":"DELETE","header":[],"url":"{{base_url}}/users/me/reset-data"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"309"},{"key":"ETag","value":"W/\"135-jMo8ljoJJP/YAF/w8CcIHHYVmHY\""},{"key":"Date","value":"Fri, 24 Oct 2025 03:05:47 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Data pengguna berhasil direset\",\n    \"data\": {\n        \"id\": \"ed34152a-9b31-4150-8716-621eb47b7f7c\",\n        \"googleId\": \"108234567890123456789\",\n        \"email\": \"andre.wijaya@gmail.com\",\n        \"nickname\": \"Andre\",\n        \"userWhy\": null,\n        \"checkinTime\": null,\n        \"createdAt\": \"2025-10-15T10:40:03.076Z\",\n        \"updatedAt\": \"2025-10-24T03:05:47.316Z\"\n    },\n    \"error\": null\n}"},{"id":"ce7fb68f-c2e0-4f68-84f0-301605fa7652","name":"401 Unauthorized","originalRequest":{"method":"DELETE","header":[],"url":"{{base_url}}/users/me/reset-data"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Fri, 24 Oct 2025 03:02:01 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"a0a251c2-dbc2-404a-81bc-36984283ed5f"}],"id":"4b2124e1-c15e-4966-857a-a2ee7cdd18b4","description":"<p>Endpoint untuk mengelola semua data yang melekat pada profil pengguna.</p>\n","_postman_id":"4b2124e1-c15e-4966-857a-a2ee7cdd18b4"},{"name":"Routine","item":[{"name":"Daily Checkin","id":"f1ee6f01-0ca8-4b9c-b46c-857468bc8bc5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"mood\": \"Motivated\",\r\n    \"isSuccessful\": true,\r\n    \"content\": \"Saya berjanji bahwa saya akan akan menjadi lebih baik lagi\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/checkin","description":"<p>Endpoint yang dipanggil setiap kali pengguna melakukan <em>check-in</em>. Backend akan secara otomatis mengelola logika untuk melanjutkan atau mereset <em>streak</em>.</p>\n","urlObject":{"path":["routine","checkin"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"aade92b6-6a8f-4c8d-b010-e0bc7696d2a3","name":"200 OK","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"mood\": \"Motivated\",\r\n    \"isSuccessful\": true,\r\n    \"content\": \"Saya berjanji bahwa saya akan akan menjadi lebih baik lagi\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/checkin"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"88"},{"key":"RateLimit-Reset","value":"133"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"215"},{"key":"ETag","value":"W/\"d7-ZqExZnFeNF6pVMy86xOTQ5Jcssc\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:15:22 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Check-in berhasil\",\n    \"data\": {\n        \"id\": \"77566f55-fb97-47b4-9253-fa29d0b4b8ff\",\n        \"startDate\": \"2025-10-15T12:15:22.234Z\",\n        \"endDate\": null,\n        \"isActive\": true,\n        \"userId\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\"\n    },\n    \"error\": null\n}"},{"id":"9e3b2f71-f58e-4245-8a68-cb1f1f54671b","name":"400 Bad Request - Validation Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"mood\": \"\",\r\n    \"isSuccessful\": true,\r\n    \"content\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/checkin"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"97"},{"key":"RateLimit-Reset","value":"820"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"80"},{"key":"ETag","value":"W/\"50-DWKQuLCSyAZcKrNiqXRm/75cmvs\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:19:13 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Kesalahan validasi\",\n    \"data\": null,\n    \"error\": {\n        \"mood\": \"Mood harus diisi\"\n    }\n}"},{"id":"3d758e50-ba3c-498e-9672-00168e35a8e8","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"mood\": \"Motivated\",\r\n    \"isSuccessful\": true,\r\n    \"content\": \"Saya berjanji bahwa saya akan akan menjadi lebih baik lagi\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/checkin"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"89"},{"key":"RateLimit-Reset","value":"144"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:15:10 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"},{"id":"cc9889d9-b849-43e8-8422-c0271e697f70","name":"500 Internal Server Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"mood\": \"Motivated\",\r\n    \"isSuccessful\": true,\r\n    \"content\": \"Saya berjanji bahwa saya akan akan menjadi lebih baik lagi\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/checkin"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"87"},{"key":"RateLimit-Reset","value":"125"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"513"},{"key":"ETag","value":"W/\"201-a++4geYtUdhjbhnzMRX83t1sHQM\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:15:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Pengguna sudah melakukan check-in hari ini.\",\n    \"data\": null,\n    \"error\": \"Error: Pengguna sudah melakukan check-in hari ini.\\n    at <anonymous> (/mnt/OS/Users/Man/Desktop/recova-backend-api/src/api/routine/routine.service.ts:23:13)\\n    at async Proxy._transactionWithCallback (/mnt/OS/Users/Man/Desktop/recova-backend-api/node_modules/@prisma/client/src/runtime/getPrismaClient.ts:722:18)\\n    at async <anonymous> (/mnt/OS/Users/Man/Desktop/recova-backend-api/src/api/routine/routine.controller.ts:19:25)\"\n}"}],"_postman_id":"f1ee6f01-0ca8-4b9c-b46c-857468bc8bc5"},{"name":"Get All Statistics","id":"f86f3691-f042-4f5c-b1dc-c80681910e38","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token2}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/statistics","description":"<p>Mengembalikan objek berisi semua data statistik yang dibutuhkan untuk halaman visualisasi, termasuk <em>streak</em> saat ini, rekor <em>streak</em>, dan data untuk kalender.</p>\n","urlObject":{"path":["routine","statistics"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"3c1e4ef7-e59c-4fe3-93ce-00496b042387","name":"200 OK","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"{{base_url}}/routine/statistics"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"98"},{"key":"RateLimit-Reset","value":"891"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"148"},{"key":"ETag","value":"W/\"94-c2b764sIgPo7hQ6jgt/yScqILP4\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:18:02 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Statistik berhasil diambil\",\n    \"data\": {\n        \"currentStreak\": 1,\n        \"longestStreak\": 1,\n        \"totalCheckins\": 1,\n        \"streakCalendar\": [\n            \"2025-10-15\"\n        ]\n    },\n    \"error\": null\n}"},{"id":"e3c638c5-c2c8-49ba-8bbf-de950250d59f","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"{{base_url}}/routine/statistics"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:17:52 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"f86f3691-f042-4f5c-b1dc-c80681910e38"},{"name":"Get All Relapses Data","id":"bd66e810-2d71-4574-856f-153f400c8a38","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/relapses","urlObject":{"path":["routine","relapses"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"4bc9e2d5-55ee-4269-959d-b65b0e621dcf","name":"200 OK","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/relapses"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"81"},{"key":"RateLimit-Reset","value":"613"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"69"},{"key":"ETag","value":"W/\"45-mn+f6ghat+MNAhrWjGWwKmq1XZg\""},{"key":"Date","value":"Thu, 06 Nov 2025 16:09:18 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Riwayat relapse berhasil diambil\",\n    \"data\": [],\n    \"error\": null\n}"},{"id":"f3fa6f74-f9d4-4705-b96f-d09278bb4eb4","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/routine/relapses"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"96"},{"key":"RateLimit-Reset","value":"665"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"96"},{"key":"ETag","value":"W/\"60-pxguV7K2g9RvUM9agajRMFTygdU\""},{"key":"Date","value":"Tue, 06 Jan 2026 05:00:25 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Tidak diizinkan\",\n    \"data\": null,\n    \"error\": \"ID pengguna tidak ditemukan dalam permintaan\"\n}"}],"_postman_id":"bd66e810-2d71-4574-856f-153f400c8a38"}],"id":"f4cd614f-15c7-445e-876d-aa2668fc0018","description":"<p>Jantung dari aplikasi Recova. Folder ini berisi semua logika untuk membangun kebiasaan dan melacak progres.</p>\n","_postman_id":"f4cd614f-15c7-445e-876d-aa2668fc0018"},{"name":"Journals","item":[{"name":"Get All Journals","id":"e8843537-5b5f-4a54-98b8-2640df277567","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/journals","description":"<p>Mengembalikan daftar semua entri jurnal milik pengguna, diurutkan dari yang terbaru.</p>\n","urlObject":{"path":["journals"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"b330fe40-444a-4508-982c-b0d24a80314e","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/journals"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"96"},{"key":"RateLimit-Reset","value":"596"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"314"},{"key":"ETag","value":"W/\"13a-cAv7XARBGzXGPGMFFQOBMYjBtDk\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:22:57 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Jurnal berhasil diambil\",\n    \"data\": [\n        {\n            \"id\": \"abaf2ace-2c4a-4f44-83f8-ab34e524f0b4\",\n            \"content\": \"Saya berjanji bahwa saya akan akan menjadi lebih baik lagi\",\n            \"createdAt\": \"2025-10-15T12:15:22.247Z\",\n            \"userId\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\",\n            \"checkinId\": \"a70fb177-c1af-4445-a761-701ec37bd5fc\"\n        }\n    ],\n    \"error\": null\n}"},{"id":"2f2d7d52-ab19-4e7c-99fa-a2fb6242d338","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/journals"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"95"},{"key":"RateLimit-Reset","value":"586"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:23:07 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"e8843537-5b5f-4a54-98b8-2640df277567"}],"id":"a2d84bf6-a6b2-4f6b-8aa8-8a1b1499362f","description":"<p>Fitur untuk refleksi diri. Semua endpoint di sini berhubungan dengan catatan pribadi pengguna.</p>\n","_postman_id":"a2d84bf6-a6b2-4f6b-8aa8-8a1b1499362f"},{"name":"Community","item":[{"name":"Get All Community Posts","id":"74a11aa4-efd6-49b1-bc24-34d8c759bc47","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token2}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"formdata","formdata":[]},"url":"{{base_url}}/community","description":"<p>Mengembalikan daftar semua postingan di forum, lengkap dengan <code>nickname</code> pembuatnya (anonim), jumlah komentar, dan jumlah <em>like</em>.</p>\n","urlObject":{"path":["community"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"a5802b31-20bb-4444-9d7a-24758bcc06f8","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/community"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"95"},{"key":"RateLimit-Reset","value":"696"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"3629"},{"key":"ETag","value":"W/\"e2d-h6+T6izC7u18AOIt+yKkCVxUYQ4\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:32:15 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Postingan berhasil diambil\",\n    \"data\": [\n        {\n            \"id\": \"dd3dbdc6-7634-467d-ab5a-a0aafe2857fd\",\n            \"title\": \"Rekomendasi Buku/Video untuk Recovery\",\n            \"content\": \"Hi everyone! Ada rekomendasi buku atau video yang membantu proses recovery? Aku butuh penguat motivasi dan mindset. Thanks in advance!\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:04.042Z\",\n            \"author\": {\n                \"nickname\": \"Andre\",\n                \"currentStreak\": 15\n            }\n        },\n        {\n            \"id\": \"8ae597f5-e635-47d0-a021-6214f2a16a6c\",\n            \"title\": \"Perubahan yang Kurasakan Setelah 60 Hari\",\n            \"content\": \"Guys! 2 bulan clean! Perubahan yang aku rasakan: 1) Lebih fokus dan tenang dalam beraktivitas, 2) Energi dan produktivitas kerja meningkat 200%, 3) Confidence naik drastis, 4) Hubungan dengan pasangan membaik signifikan, 5) Lebih bisa kontrol emosi. Sungguh worth it! 💪\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:04.029Z\",\n            \"author\": {\n                \"nickname\": \"Budi\",\n                \"currentStreak\": 22\n            }\n        },\n        {\n            \"id\": \"e3353662-4fb5-445f-8ebd-4f40e279044e\",\n            \"title\": \"Cara Menghadapi Trigger dari Media Sosial\",\n            \"content\": \"Friends, gimana caranya kalau trigger datang dari media sosial? Instagram dan TikTok penuh konten yang bisa jadi trigger. Udah coba unfollow tapi kadang masih muncul di explore. Ada saran praktis?\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:04.016Z\",\n            \"author\": {\n                \"nickname\": \"David\",\n                \"currentStreak\": 22\n            }\n        },\n        {\n            \"id\": \"2ba076c2-5b7f-45cc-bf95-c4d22840b693\",\n            \"title\": \"Accountability Partner - Siapa yang Butuh?\",\n            \"content\": \"Hi all! Aku ngerasa butuh accountability partner untuk saling support dan check-in harian. Ada yang mau join? Kita bisa bikin grup kecil untuk saling reminder dan motivasi. PM me if interested!\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:04.005Z\",\n            \"author\": {\n                \"nickname\": \"Budi\",\n                \"currentStreak\": 22\n            }\n        },\n        {\n            \"id\": \"8816230f-cff1-4c6e-a32e-c515caf5cc31\",\n            \"title\": \"Relapse Setelah 14 Hari, Merasa Gagal Total\",\n            \"content\": \"Kemarin aku relapse setelah 14 hari clean. Rasanya semua usaha hancur. Rasa bersalah dan malu sangat berat. Gimana cara bangkit lagi? Aku merasa seperti gagal karena sudah niat tapi masih jatuh lagi.\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:03.992Z\",\n            \"author\": {\n                \"nickname\": \"Eric\",\n                \"currentStreak\": 8\n            }\n        },\n        {\n            \"id\": \"886f0a91-e7cf-4d54-bfe2-6e1dfe791c7f\",\n            \"title\": \"Sukses 30 Hari Clean! 🎉\",\n            \"content\": \"Everyone! Aku berhasil 30 hari tanpa PMO untuk pertama kalinya dalam 5 tahun! Rasanya hidup lebih bermakna, tidur lebih nyenyak, dan confidence meningkat drastis. Untuk yang baru mulai, IT DOES GET BETTER! Jangan menyerah, kalian bisa!\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:03.974Z\",\n            \"author\": {\n                \"nickname\": \"Faisal\",\n                \"currentStreak\": 29\n            }\n        },\n        {\n            \"id\": \"b8eac2cd-9dab-4c98-8d27-cea599ed39b2\",\n            \"title\": \"Hari ke-21 dan Brain Fog Masih Kuat\",\n            \"content\": \"Udah 3 minggu clean tapi brain fog dan flatline masih berasa banget. Kadang ngerasa hopeless dan mikir \\\"kapan normal lagi ya?\\\". Ada yang pernah ngerasa kayak gini juga? Ini normal ga sih? Butuh support 😢\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:03.960Z\",\n            \"author\": {\n                \"nickname\": \"Ryan\",\n                \"currentStreak\": 15\n            }\n        },\n        {\n            \"id\": \"98288f33-9166-4769-8f9e-7dfad8fabc83\",\n            \"title\": \"Tips Mengatasi Urge di Minggu Pertama\",\n            \"content\": \"Hi everyone! Mau share tips yang efektif buat aku di minggu pertama: 1) Langsung lakukan aktivitas fisik (push-up, jalan kaki), 2) Keluar rumah dan cari lingkungan yang ramai, 3) Cold shower untuk instant reset, 4) Meditasi atau breathing exercise. Yang paling penting adalah avoid being alone dengan gadget. Stay strong!\",\n            \"commentCount\": 0,\n            \"likeCount\": 0,\n            \"createdAt\": \"2025-10-15T10:40:03.939Z\",\n            \"author\": {\n                \"nickname\": \"Andre\",\n                \"currentStreak\": 15\n            }\n        }\n    ],\n    \"error\": null\n}"},{"id":"0c818ad5-2bb2-4ffb-9d44-273f94477dae","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/community"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"94"},{"key":"RateLimit-Reset","value":"675"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:32:36 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"74a11aa4-efd6-49b1-bc24-34d8c759bc47"},{"name":"Create New Community Post","id":"7e4d55b3-f30c-4ce3-837a-2a834f83545e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Ada yg relate gak gess?\",\r\n    \"content\": \"Gimana ya bun cara mengatasi kecanduan film porno?\",\r\n    \"category\": \"question\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/community","description":"<p>Memungkinkan pengguna untuk membuat postingan baru di forum.</p>\n","urlObject":{"path":["community"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"99ae8ea5-f7cf-4d65-b02d-0f49a7895362","name":"201 Created","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Ada yg relate gak gess?\",\r\n    \"content\": \"Gimana ya bun cara mengatasi kecanduan film porno?\",\r\n    \"category\": \"question\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/community"},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"88"},{"key":"RateLimit-Reset","value":"543"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"342"},{"key":"ETag","value":"W/\"156-AzeuimSiGX8irghB8CImeMQh4Ws\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:34:49 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Postingan berhasil dibuat\",\n    \"data\": {\n        \"id\": \"9471742c-b9e2-4232-ab32-f76843e60697\",\n        \"title\": \"Ada yg relate gak gess?\",\n        \"content\": \"Gimana ya bun cara mengatasi kecanduan film porno?\",\n        \"category\": \"question\",\n        \"commentCount\": 0,\n        \"likeCount\": 0,\n        \"createdAt\": \"2025-10-15T12:34:49.088Z\",\n        \"userId\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\"\n    },\n    \"error\": null\n}"},{"id":"4b115a82-37a3-4967-b1f8-46d8eba7d276","name":"400 Bad Request - Validation Error","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Ada yg relate gak gess?\",\r\n    \"content\": \"Gimana ya bun cara mengatasi kecanduan film porno?\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/community"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"89"},{"key":"RateLimit-Reset","value":"575"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"143"},{"key":"ETag","value":"W/\"8f-gNvqiaCwRHqHgFbWyhnQbipda0o\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:34:17 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Kesalahan validasi\",\n    \"data\": null,\n    \"error\": {\n        \"category\": \"Kategori harus salah satu dari saran, motivasi, cerita, pertanyaan, bantuan\"\n    }\n}"},{"id":"b71f8a5e-3cb8-4a8a-8cf5-ba767b7ac9dd","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"Ada yg relate gak gess?\",\r\n    \"content\": \"Gimana ya bun cara mengatasi kecanduan film porno?\",\r\n    \"category\": \"question\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/community"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"87"},{"key":"RateLimit-Reset","value":"533"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:34:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"7e4d55b3-f30c-4ce3-837a-2a834f83545e"},{"name":"Create Comment For Community Post","id":"7661e67c-c2a1-4a32-bc92-56214f2b8016","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"content\": \"Wah hebat banget! Semoga aku bisa segera menyusul\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/community/:postId/comments","description":"<p>Menambahkan komentar baru pada sebuah postingan spesifik. <code>:postId</code> di URL harus diganti dengan ID postingan yang dituju.</p>\n","urlObject":{"path":["community",":postId","comments"],"host":["{{base_url}}"],"query":[],"variable":[{"type":"any","value":"8816230f-cff1-4c6e-a32e-c515caf5cc31","key":"postId"}]}},"response":[{"id":"2792eae8-fd46-45bd-a281-309014101d38","name":"201 Created","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"content\": \"Wah hebat banget! Semoga aku bisa segera menyusul\"\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{base_url}}/community/:postId/comments","host":["{{base_url}}"],"path":["community",":postId","comments"],"variable":[{"key":"postId","value":"8816230f-cff1-4c6e-a32e-c515caf5cc31"}]}},"status":"Created","code":201,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"86"},{"key":"RateLimit-Reset","value":"446"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"301"},{"key":"ETag","value":"W/\"12d-EO796TqsrEhXm47dGppfZh2z7O4\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:36:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Komentar berhasil dibuat\",\n    \"data\": {\n        \"id\": \"a877c0c0-9f03-4605-aced-813f3fc639be\",\n        \"content\": \"Wah hebat banget! Semoga aku bisa segera menyusul\",\n        \"createdAt\": \"2025-10-15T12:36:26.249Z\",\n        \"userId\": \"927aa485-164b-479d-9f4d-a9a6f6c6f97e\",\n        \"postId\": \"8816230f-cff1-4c6e-a32e-c515caf5cc31\"\n    },\n    \"error\": null\n}"},{"id":"73759c07-1a5f-4887-a3eb-d60da1c206be","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"content\": \"Wah hebat banget! Semoga aku bisa segera menyusul\"\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"{{base_url}}/community/:postId/comments","host":["{{base_url}}"],"path":["community",":postId","comments"],"variable":[{"key":"postId","value":"8816230f-cff1-4c6e-a32e-c515caf5cc31"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"85"},{"key":"RateLimit-Reset","value":"432"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:36:40 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"7661e67c-c2a1-4a32-bc92-56214f2b8016"},{"name":"Give Like or Unlike For Community Post","id":"caefa968-45e0-4917-9541-5cc5c0727f7a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"POST","header":[],"url":"{{base_url}}/community/:postId/like","description":"<p>Memberikan satu \"dukungan\" atau <em>like</em> pada sebuah postingan. Bisa digunakan untuk melakukan unlike juga</p>\n","urlObject":{"path":["community",":postId","like"],"host":["{{base_url}}"],"query":[],"variable":[{"type":"any","value":"b8eac2cd-9dab-4c98-8d27-cea599ed39b2","key":"postId"}]}},"response":[{"id":"7b393cde-411e-4aef-a23f-1ad57fd49487","name":"200 OK - Like a Community Post","originalRequest":{"method":"POST","header":[],"url":{"raw":"{{base_url}}/community/:postId/like","host":["{{base_url}}"],"path":["community",":postId","like"],"variable":[{"key":"postId","value":"b8eac2cd-9dab-4c98-8d27-cea599ed39b2"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"98"},{"key":"RateLimit-Reset","value":"898"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"92"},{"key":"ETag","value":"W/\"5c-YgHvYbLy5pCTZuHkjljevzlyyTc\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:52:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Postingan berhasil disukai\",\n    \"data\": {\n        \"likedCount\": 1,\n        \"isLiked\": true\n    },\n    \"error\": null\n}"},{"id":"b915e5e7-b451-45f5-897f-e71147369e75","name":"200 OK - Unlike a Community Post","originalRequest":{"method":"POST","header":[],"url":{"raw":"{{base_url}}/community/:postId/like","host":["{{base_url}}"],"path":["community",":postId","like"],"variable":[{"key":"postId","value":"b8eac2cd-9dab-4c98-8d27-cea599ed39b2"}]}},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"97"},{"key":"RateLimit-Reset","value":"889"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"97"},{"key":"ETag","value":"W/\"61-eCJSn+KpmIObp8ybYBuPGIZi9rk\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:52:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Suka pada postingan dibatalkan\",\n    \"data\": {\n        \"likedCount\": 0,\n        \"isLiked\": false\n    },\n    \"error\": null\n}"},{"id":"9bf61735-b1de-4cf4-bf7a-7f3aef8b013b","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"url":{"raw":"{{base_url}}/community/:postId/like","host":["{{base_url}}"],"path":["community",":postId","like"],"variable":[{"key":"postId","value":"8816230f-cff1-4c6e-a32e-c515caf5cc31"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"81"},{"key":"RateLimit-Reset","value":"270"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:39:21 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"caefa968-45e0-4917-9541-5cc5c0727f7a"}],"id":"89406e9d-a1b0-4c05-a075-656d8a4b5737","description":"<p>Pilar sosial dari Recova. Endpoint untuk interaksi anonim antar pengguna.</p>\n","_postman_id":"89406e9d-a1b0-4c05-a075-656d8a4b5737"},{"name":"AI","item":[{"name":"Ask to AI Coach","id":"800f523e-a249-4ab5-b4b9-490a1c626309","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token2}}"},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"message\": \"Sekarang berikan tips n trik untuk mengurangi kecanduan pornografi secara berlahan\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/ask-coach","description":"<p>Mengirimkan pesan dari pengguna ke AI Coach dan mengembalikan respons yang dihasilkan oleh Gemini.</p>\n","urlObject":{"path":["ai","ask-coach"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"9c7c7b28-fb1f-49e6-b47f-7505a184109b","name":"200 OK","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"message\": \"Saya merasa sangat sulit untuk menguranginya\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/ask-coach"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"93"},{"key":"RateLimit-Reset","value":"794"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"772"},{"key":"ETag","value":"W/\"304-RD4dmGWz/VQ+bYDd6AF0ecQoIao\""},{"key":"Date","value":"Thu, 06 Nov 2025 16:34:44 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Respon AI Coach berhasil dibuat\",\n    \"data\": {\n        \"response\": \"agilgantengduniaakhirat, terima kasih sudah jujur. Mengurangi kecanduan memang **tidak mudah**, dan mengakui itu adalah langkah pertama yang **sangat berani**. Kamu sudah **berhasil** sejauh ini dengan 23 hari streak, dan itu bukti bahwa kamu punya kekuatan untuk berubah.\\n\\nKarena kamu merasa sulit, coba kita pecah jadi langkah yang lebih kecil. Gimana kalau sekarang kamu coba:\\n\\n*   **Identifikasi pemicunya.** Kapan biasanya kamu merasa dorongan terkuat untuk mengakses pornografi? Apakah ada situasi, emosi, atau waktu tertentu yang memicunya? Mencatat ini bisa membantu.\\n\\nIngat, kamu melakukan ini **Agar bisa menjadi lebih fokus untuk bekerja dan kuliah**. Fokus pada tujuanmu.\\n\"\n    },\n    \"error\": null\n}"},{"id":"86370bc1-43b9-4c2f-ad6c-fdca4ebfe6fc","name":"401 Unauthorized","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"message\": \"Gimana ya cara untuk mengurangi kecanduan pornografi? Karena menurutku itu lumayan mengganggu\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/ask-coach"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"96"},{"key":"RateLimit-Reset","value":"774"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:30:58 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"800f523e-a249-4ab5-b4b9-490a1c626309"},{"name":"Get All Chat History","id":"bd098d6f-7678-4339-ac20-8c2b5606b46b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/chat-history","urlObject":{"path":["ai","chat-history"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"58e8558b-050a-47fb-a861-534fbb12468f","name":"200 OK","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/chat-history"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"94"},{"key":"RateLimit-Reset","value":"630"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"870"},{"key":"ETag","value":"W/\"366-IZlDF1jM8IQzFn2cjGQLSshkxFw\""},{"key":"Date","value":"Tue, 06 Jan 2026 05:01:00 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Riwayat chat berhasil diambil\",\n    \"data\": [\n        {\n            \"id\": \"9025e8c0-0606-4fff-8389-f79984f0da24\",\n            \"role\": \"model\",\n            \"content\": \"Oke, Eric, terima kasih sudah jujur. Ini berat, tapi kamu kuat. Terkadang, dorongan bisa muncul ketika kita sedang menghadapi stres atau emosi yang tidak nyaman. \\n\\nIngat, kamu berjuang untuk **tumbuh secara spiritual dan mental**. Mungkin saat ini, bisa coba berdiri dan pindah ruangan sebentar? Gerakan fisik kecil seperti itu bisa membantumu memutus pola pikir. Apa kamu mau mencoba?\",\n            \"createdAt\": \"2026-01-06T04:43:00.297Z\",\n            \"userId\": \"ffc45800-8149-4a46-a459-ff143b40f33c\"\n        },\n        {\n            \"id\": \"687f1689-9860-4dde-bbce-1070c9ac37f1\",\n            \"role\": \"user\",\n            \"content\": \"Mengapa ya akhir-akhir ini saya semakin sering timbul hasrat untuk melakukan konsumsi pornografi?\",\n            \"createdAt\": \"2026-01-06T04:43:00.297Z\",\n            \"userId\": \"ffc45800-8149-4a46-a459-ff143b40f33c\"\n        }\n    ],\n    \"error\": null\n}"},{"id":"c9107dc9-98a4-4269-9638-a2addb82f303","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/ai/chat-history"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"96"},{"key":"ETag","value":"W/\"60-pxguV7K2g9RvUM9agajRMFTygdU\""},{"key":"Date","value":"Tue, 06 Jan 2026 04:56:30 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Tidak diizinkan\",\n    \"data\": null,\n    \"error\": \"ID pengguna tidak ditemukan dalam permintaan\"\n}"}],"_postman_id":"bd098d6f-7678-4339-ac20-8c2b5606b46b"},{"name":"Get AI Summary","id":"b7f573d9-5f23-4256-a5bd-572d13e9bfea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/summary","description":"<p>Mengambil hasil \"Wawasan Hari Ini\" atau rangkuman AI terakhir yang telah diproses untuk ditampilkan di dasbor.</p>\n","urlObject":{"path":["ai","summary"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"a80c7cd4-b729-43d7-ba9c-feebdd929256","name":"200 OK - With Summary","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/summary"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"82"},{"key":"RateLimit-Reset","value":"710"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"399"},{"key":"ETag","value":"W/\"18f-ywPVZbVNSuQc7FUw4n+P+ie8J1M\""},{"key":"Date","value":"Thu, 06 Nov 2025 16:07:42 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"AI Summary berhasil diambil\",\n    \"data\": \"Budi sangat termotivasi untuk bersih dan membangun hubungan yang sehat. Progress sangat baik dengan 10 hari clean streak saat ini. Visi masa depan yang lebih baik memberinya motivasi ekstra. Tantangan adalah menjaga konsistensi saat menghadapi stress. Disarankan untuk fokus pada tujuan jangka panjang dan melibatkan aktivitas positif.\",\n    \"error\": null\n}"},{"id":"a02effde-68e7-4678-9b0a-fa05b9c861b5","name":"200 OK - Without Summary","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/ai/summary"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"92"},{"key":"RateLimit-Reset","value":"637"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"140"},{"key":"ETag","value":"W/\"8c-9i1HSp2IJgAA/trX4iCWk+RcfJA\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:33:14 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"AI Summary berhasil diambil\",\n    \"data\": \"Insight baru untukmu akan segera tersedia. Teruslah menulis jurnal harianmu!\",\n    \"error\": null\n}"},{"id":"a15b0527-93c7-47d2-be4f-10584e8e002d","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/ai/summary"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"91"},{"key":"RateLimit-Reset","value":"625"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:33:26 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"b7f573d9-5f23-4256-a5bd-572d13e9bfea"},{"name":"Onboarding Analysis","id":"9d338c70-b803-4069-8f15-38326c8e52f0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"answers\": {\n        \"durasi_kecanduan\": \"1 bulan\",\n        \"frekuensi_harian\": \"1 kali per hari\",\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah, menyesal\",\n        \"support_system\": \"Konselor online, grup recovery, teman dekat\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/onboarding-analysis","description":"<p>Mengambil hasil rangkuman dari jawaban onboarding pengguna.</p>\n","urlObject":{"path":["ai","onboarding-analysis"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"79565adc-4463-4445-b3e2-6dba897901f3","name":"200 OK","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"answers\": {\n        \"durasi_kecanduan\": \"1 tahun\",\n        \"frekuensi_harian\": \"5 kali per hari\",\n        \"trigger_utama\": \"Stress kerja, kesepian, kurang kasih sayang\",\n        \"dampak_kesehatan\": \"Gangguan tidur, kelelahan, sulit konsentrasi, rasa bersalah\",\n        \"support_system\": \"Konselor online, grup recovery\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/onboarding-analysis"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"5;w=900"},{"key":"RateLimit-Limit","value":"5"},{"key":"RateLimit-Remaining","value":"4"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1006"},{"key":"ETag","value":"W/\"3ee-RVe00nKsWB0bGkKt1aedZJbe0hI\""},{"key":"Date","value":"Thu, 06 Nov 2025 16:24:12 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Analisis onboarding berhasil dilakukan\",\n    \"data\": {\n        \"level\": \"Tinggi\",\n        \"title\": \"Analisis Awal: Ketergantungan Tinggi\",\n        \"level_description\": \"Jawabanmu menunjukkan adanya kecenderungan tinggi terhadap ketergantungan. Frekuensi penggunaan yang tinggi dan dampak kesehatan yang dilaporkan mengindikasikan bahwa kebiasaan ini mungkin sulit dikendalikan dan mulai memengaruhi kualitas hidupmu.\",\n        \"pattern_analysis\": \"Pola utama yang teridentifikasi adalah penggunaan sebagai respons terhadap stres kerja, kesepian, dan kurangnya kasih sayang. Ini menunjukkan bahwa pornografi digunakan sebagai mekanisme koping untuk mengatasi emosi negatif dan kebutuhan yang tidak terpenuhi.\",\n        \"encouragement\": \"Memulai proses pemulihan adalah langkah berani dan penting. Dukungan dari konselor online dan grup pemulihan adalah sumber daya yang sangat berharga. Ingatlah bahwa perubahan membutuhkan waktu dan kesabaran. Tetaplah berkomitmen pada tujuanmu, dan jangan ragu untuk mencari bantuan saat dibutuhkan.\"\n    },\n    \"error\": null\n}"},{"id":"3d2153ce-84ce-415d-88d9-863e75c82a79","name":"400 Bad Request","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"answers\": {\n        \n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{base_url}}/ai/onboarding-analysis"},"status":"Bad Request","code":400,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"5;w=900"},{"key":"RateLimit-Limit","value":"5"},{"key":"RateLimit-Remaining","value":"2"},{"key":"RateLimit-Reset","value":"794"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"86"},{"key":"ETag","value":"W/\"56-U6LqPFvg/6iJmdFC9YLIz1d9TEc\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:58:15 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Kesalahan validasi\",\n    \"data\": null,\n    \"error\": \"Data jawaban tidak boleh kosong\"\n}"}],"_postman_id":"9d338c70-b803-4069-8f15-38326c8e52f0"}],"id":"28fe2138-9c9a-47ad-be63-a6248b913a0d","description":"<p>Endpoint canggih yang menjadi jembatan ke layanan kecerdasan buatan.</p>\n","_postman_id":"28fe2138-9c9a-47ad-be63-a6248b913a0d"},{"name":"Education","item":[{"name":"Get All Education Contents","id":"46a3a651-0cf2-4618-816e-d5822b4a6441","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{base_url}}/education","description":"<p>Mengembalikan daftar semua konten (video, artikel) yang tersedia di perpustakaan Recova.</p>\n","urlObject":{"path":["education"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"209657b0-c5ef-4379-8810-013b4b5f5fee","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/education"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"94"},{"key":"RateLimit-Reset","value":"541"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"5080"},{"key":"ETag","value":"W/\"13d8-CGyK+uIOs45jmkb2jwgBP4BPxeA\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:23:52 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Konten edukasi berhasil diambil\",\n    \"data\": [\n        {\n            \"id\": \"1c2755f3-98a0-44d4-9464-634a3a434069\",\n            \"title\": \"Building Healthy Habits to Replace Addiction\",\n            \"description\": \"Cara membangun kebiasaan sehat untuk menggantikan kebiasaan buruk. Berdasarkan konsep Atomic Habits yang sangat applicable untuk recovery journey.\",\n            \"url\": \"https://www.youtube.com/watch?v=PZ7lDrwYdZc\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/PZ7lDrwYdZc/maxresdefault.jpg\",\n            \"category\": \"Self-Improvement\"\n        },\n        {\n            \"id\": \"6f51c22b-ea19-490f-88cb-40c4344f7c45\",\n            \"title\": \"Cold Shower Benefits for NoFap Recovery\",\n            \"description\": \"Manfaat cold shower untuk proses recovery dan cara melakukannya dengan benar. Cold shower adalah salah satu tool paling efektif untuk mengatasi urge.\",\n            \"url\": \"https://www.youtube.com/watch?v=ZfZb7LqmD10\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/ZfZb7LqmD10/maxresdefault.jpg\",\n            \"category\": \"Wellness\"\n        },\n        {\n            \"id\": \"724be5e9-9449-417d-8f54-462eaef28afe\",\n            \"title\": \"Dealing with Urges and Triggers - Recovery Tips\",\n            \"description\": \"Teknik dan strategi untuk mengatasi urge dan trigger saat recovery. Video ini memberikan tools praktis yang bisa langsung diterapkan saat menghadapi godaan.\",\n            \"url\": \"https://www.youtube.com/watch?v=kKhAx_cZ-14\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/kKhAx_cZ-14/maxresdefault.jpg\",\n            \"category\": \"Mental Health\"\n        },\n        {\n            \"id\": \"76276156-33df-403b-80ca-1121b3c53819\",\n            \"title\": \"Guided Meditation for Addiction Recovery\",\n            \"description\": \"Meditasi terpandu khusus untuk membantu proses recovery dari kecanduan. Membantu menenangkan pikiran dan mengurangi anxiety. Cocok dilakukan setiap hari.\",\n            \"url\": \"https://www.youtube.com/watch?v=SEfs5TJZ6NA\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/SEfs5TJZ6NA/maxresdefault.jpg\",\n            \"category\": \"Mindfulness\"\n        },\n        {\n            \"id\": \"1a3ebd8c-9ff3-46d7-b5b0-1f17c66acd7e\",\n            \"title\": \"How to Overcome Porn Addiction - Practical Strategy\",\n            \"description\": \"Strategi praktis dan actionable untuk mengatasi kecanduan pornografi. Mencakup tips menghindari trigger, membangun accountability, dan recovery plan.\",\n            \"url\": \"https://www.youtube.com/watch?v=FmjjxdDwOIc\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/FmjjxdDwOIc/maxresdefault.jpg\",\n            \"category\": \"Self-Improvement\"\n        },\n        {\n            \"id\": \"0de69f30-12d0-4913-ab65-832b6af50a40\",\n            \"title\": \"Jangan Berzina! Bahaya dan Hukumnya - Ustadz Hanan Attaki\",\n            \"description\": \"Kajian tentang bahaya zina dan pornografi dari perspektif Islam. Sangat powerful untuk memperkuat motivasi spiritual dalam recovery.\",\n            \"url\": \"https://www.youtube.com/watch?v=rKK5v8vC-kU\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/rKK5v8vC-kU/maxresdefault.jpg\",\n            \"category\": \"Mental Health\"\n        },\n        {\n            \"id\": \"d3b6dc8c-a9a9-477d-b075-f1eddd698839\",\n            \"title\": \"Mengelola Nafsu - Kajian Singkat\",\n            \"description\": \"Kajian Islam tentang cara mengelola nafsu dengan bijak. Memberikan perspektif spiritual yang penting dalam perjalanan recovery.\",\n            \"url\": \"https://www.youtube.com/watch?v=5p7dN8kLcV4\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/5p7dN8kLcV4/maxresdefault.jpg\",\n            \"category\": \"Mental Health\"\n        },\n        {\n            \"id\": \"0fbfd592-4ddd-4891-9564-7f62d8757be5\",\n            \"title\": \"Menjaga Pandangan dalam Islam - Ustadz Khalid Basalamah\",\n            \"description\": \"Kajian mendalam tentang pentingnya menjaga pandangan dalam Islam dan bahaya zina mata. Penguat iman untuk yang sedang berjuang melawan kecanduan.\",\n            \"url\": \"https://www.youtube.com/watch?v=X3kJ_3xJqsM\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/X3kJ_3xJqsM/maxresdefault.jpg\",\n            \"category\": \"Mental Health\"\n        },\n        {\n            \"id\": \"e8c530f6-be57-4b39-8c23-f6ff5ece14b9\",\n            \"title\": \"NoFap Benefits: Real Science & Timeline\",\n            \"description\": \"Penjelasan timeline dan benefits yang akan dirasakan selama proses NoFap/recovery. Berbasis riset dan pengalaman nyata untuk memberikan ekspektasi yang realistis.\",\n            \"url\": \"https://www.youtube.com/watch?v=9mbp7DuiSCQ\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/9mbp7DuiSCQ/maxresdefault.jpg\",\n            \"category\": \"Self-Improvement\"\n        },\n        {\n            \"id\": \"310df2fb-1304-45ca-9c2e-bb9eca18e9d3\",\n            \"title\": \"Sleep Better: Tips for Recovery\",\n            \"description\": \"Tips berbasis sains untuk meningkatkan kualitas tidur. Tidur yang berkualitas sangat crucial dalam proses recovery karena membantu penyembuhan otak.\",\n            \"url\": \"https://www.youtube.com/watch?v=nm1TxQj9IsQ\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/nm1TxQj9IsQ/maxresdefault.jpg\",\n            \"category\": \"Wellness\"\n        },\n        {\n            \"id\": \"8c921437-b874-41dc-852a-5c219ca2393a\",\n            \"title\": \"The Reboot: Rebooting from Porn Addiction\",\n            \"description\": \"Penjelasan lengkap tentang proses reboot/recovery dari kecanduan pornografi. Mencakup fase-fase recovery, flatline, dan tips bertahan hingga akhir.\",\n            \"url\": \"https://www.youtube.com/watch?v=_rz8b2I7H8I\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/_rz8b2I7H8I/maxresdefault.jpg\",\n            \"category\": \"Self-Improvement\"\n        },\n        {\n            \"id\": \"40ad82b8-b265-470b-a2b7-16a0a099aa5d\",\n            \"title\": \"The Science of Pornography Addiction - Your Brain on Porn\",\n            \"description\": \"Penjelasan ilmiah tentang bagaimana pornografi mempengaruhi otak dan menciptakan kecanduan. Video ini membantu memahami mengapa recovery itu penting dan bagaimana proses penyembuhan bekerja.\",\n            \"url\": \"https://www.youtube.com/watch?v=wSF82AwSDiU\",\n            \"thumbnailUrl\": \"https://i.ytimg.com/vi/wSF82AwSDiU/maxresdefault.jpg\",\n            \"category\": \"Mental Health\"\n        }\n    ],\n    \"error\": null\n}"}],"_postman_id":"46a3a651-0cf2-4618-816e-d5822b4a6441"}],"id":"511c19e6-c6a7-4c5c-80bb-32a9c304a3de","description":"<p>Endpoint untuk menyajikan konten edukasi yang dikelola oleh admin.</p>\n","_postman_id":"511c19e6-c6a7-4c5c-80bb-32a9c304a3de"},{"name":"Content","item":[{"name":"Get Daily Motivation and Challenge","id":"da30f548-52ed-466b-bd79-4d99b627cd3c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"token":"{{token}}"},"isInherited":false},"method":"GET","header":[],"url":"{{base_url}}/content/daily","description":"<p>Mengembalikan motivasi dan juga challenge harian untuk memberikan dukungan kepada pengguna</p>\n","urlObject":{"path":["content","daily"],"host":["{{base_url}}"],"query":[],"variable":[]}},"response":[{"id":"d6d5f156-1e9c-47de-885b-9693c9383f78","name":"200 OK","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/content/daily"},"status":"OK","code":200,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"89"},{"key":"RateLimit-Reset","value":"282"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"332"},{"key":"ETag","value":"W/\"14c-dj3hMgErowa3U2c1J4SKxg/KWXI\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:28:11 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Konten harian berhasil diambil\",\n    \"data\": {\n        \"motivation\": \"Kamu lebih kuat dari yang kamu kira. Setiap kali kamu menolak godaan, kamu sedang membangun karakter yang lebih tangguh.\",\n        \"challenge\": \"Tuliskan 5 hal yang kamu syukuri dan 3 kebiasaan buruk yang ingin kamu tinggalkan. Refleksi adalah kunci perubahan.\"\n    },\n    \"error\": null\n}"},{"id":"b5bf0148-c5b8-47ca-8af1-d63604356537","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[],"url":"{{base_url}}/content/daily"},"status":"Unauthorized","code":401,"_postman_previewlanguage":null,"header":[{"key":"X-Powered-By","value":"Express"},{"key":"RateLimit-Policy","value":"100;w=900"},{"key":"RateLimit-Limit","value":"100"},{"key":"RateLimit-Remaining","value":"99"},{"key":"RateLimit-Reset","value":"900"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"118"},{"key":"ETag","value":"W/\"76-HOO+w4c+UQWU/fi95EX4i9i+lko\""},{"key":"Date","value":"Wed, 15 Oct 2025 12:28:51 GMT"},{"key":"Connection","value":"keep-alive"},{"key":"Keep-Alive","value":"timeout=5"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Gagal melakukan autentikasi: Token tidak ditemukan\",\n    \"data\": null,\n    \"error\": \"Token diperlukan untuk rute ini\"\n}"}],"_postman_id":"da30f548-52ed-466b-bd79-4d99b627cd3c"}],"id":"f6a46a1e-89e2-40ac-a25e-abdc56b29506","description":"<p>Endpoint untuk menyajikan motivasi harian dan challenge untuk user.</p>\n","_postman_id":"f6a46a1e-89e2-40ac-a25e-abdc56b29506"},{"name":"New Request","id":"50e37f67-1872-49a5-aa7a-82f96bfc11de","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"urlObject":{"query":[],"variable":[]},"url":""},"response":[],"_postman_id":"50e37f67-1872-49a5-aa7a-82f96bfc11de"}]}