{"title":"Troubleshooting-FAQ","slug":"troubleshooting","category":"faq","summary":"Oplossingen voor veelvoorkomende Synapse-problemen — auth, netwerk, data, deployment.","audience":["human","llm"],"tags":["faq","troubleshooting","problems","solutions"],"difficulty":"beginner","updated":"2026-06-27","word_count":606,"read_minutes":3,"lang":"nl","translated":true,"requested_lang":"nl","content_markdown":"\n# Troubleshooting-FAQ\n\nOplossingen voor veelvoorkomende Synapse-problemen.\n\n## Ik kan niet inloggen\n\n### Symptomen\n\n- `POST /login` retourneert 401\n- \"Invalid email or password\"\n\n### Oplossingen\n\n1. **Verifieer dat e-mail correct is** — hoofdlettergevoelig\n2. **Controleer wachtwoord** — minimaal 6 tekens\n3. **Registreer eerst** als u geen account heeft: `POST /register`\n4. **Reset wachtwoord** (indien SMTP geconfigureerd) via de web-UI\n\n## Ik ben mijn Mind Key kwijt\n\n### Symptomen\n\n- Kan herinneringen niet benaderen\n- Mind Key is verwijderd/verloren\n\n### Oplossingen\n\nMind Keys kunnen niet worden hersteld. U moet:\n\n1. Inloggen om JWT te krijgen: `POST /login`\n2. Minds tonen: `GET /minds` (met JWT)\n3. Nieuwe mind aanmaken: `POST /minds`\n4. Nieuwe Mind Key opslaan\n5. (Optioneel) Oude mind verwijderen: `DELETE /minds/:id`\n\n**Data in de oude mind is verloren** tenzij u de Mind Key kunt vinden.\n\n## API-aanroepen retourneren 401\n\n### Symptomen\n\n- Alle API-aanroepen retourneren 401 Unauthorized\n- \"Mind Key fehlt oder ungültig\"\n\n### Oplossingen\n\n1. **Verifieer header-formaat**: `Authorization: Bearer mk_...`\n2. **Controleer dat Mind Key begint met `mk_`** (niet `eyJ` wat JWT is)\n3. **Test direct**:\n   ```bash\n   curl -H \"Authorization: Bearer mk_YOUR_KEY\" \\\n        https://synapse.schaefer.zone/memory/recall\n   ```\n4. **Mind Key kan zijn ingetrokken** — maak een nieuwe mind aan\n\nZie [Authenticatie](/docs/getting-started/authentication).\n\n## API-aanroepen retourneren 404\n\n### Symptomen\n\n- 404 Not Found\n- \"Route not found\"\n\n### Oplossingen\n\n> [!CRITICAL]\n> Raad geen eindpuntpaden. Alleen paden in `GET /endpoints` bestaan.\n\n1. **Controleer geldige eindpunten**: `curl https://synapse.schaefer.zone/endpoints`\n2. **Vergelijk URL exact** — hoofdlettergevoelig, geen afsluitende slashes\n3. **Controleer HTTP-methode** — `GET /memory` vs `POST /memory` zijn verschillend\n\n## API-aanroepen retourneren 429\n\n### Symptomen\n\n- 429 Too Many Requests\n- \"Rate limit exceeded\"\n\n### Oplossingen\n\n1. **Schakel over naar header-auth** (geen ratelimit):\n   ```bash\n   # Niet\n   curl \".../memory/recall?key=mk_...\"\n   \n   # Wel\n   curl -H \"Authorization: Bearer mk_...\" .../memory/recall\n   ```\n2. **Wacht `Retry-After` seconden** als u `?key=` moet gebruiken\n\nZie [Ratelimits](/docs/api/rate-limits).\n\n## Memory-zoekopdracht retourneert geen resultaten\n\n### Symptomen\n\n- `GET /memory/search?q=...` retourneert leeg\n- Weet dat herinneringen bestaan\n\n### Oplossingen\n\n1. **Verifieer dat herinneringen bestaan**: `GET /memory/recall`\n2. **Controleer zoeksyntaxis** — FTS5 heeft specifieke syntaxis\n3. **Probeer eenvoudigere query** — `?q=docker` in plaats van `?q=docker+swarm+deployment`\n4. **Gebruik semantisch zoeken** voor conceptuele query's: `GET /memory/semantic-search?q=...`\n\nZie [FTS5-zoekopdracht](/docs/concepts/fts5-search).\n\n## Herinneringen worden niet persistent gemaakt\n\n### Symptomen\n\n- POST /memory retourneert succes\n- GET /memory/recall toont ze niet\n\n### Oplossingen\n\n1. **Verifieer dezelfde Mind Key** — verschillende sleutels = verschillende minds\n2. **Controleer respons** — POST retourneert `{ \"id\": \"mem_...\", \"status\": \"stored\" }`\n3. **Probeer GET /memory** (JSON-lijst) in plaats van /memory/recall (tekst)\n4. **Controleer filter** — `?category=` of `?tag=` verbergen ze mogelijk\n\n## Tools verschijnen niet in Claude Desktop\n\n### Symptomen\n\n- Claude Desktop toont 0 tools\n- Geen 🔌-icoon\n\n### Oplossingen\n\n1. **Herstart Claude Desktop volledig** (Cmd+Q)\n2. **Verifieer configuratiebestand** is geldige JSON\n3. **Controleer Node.js 18+** geïnstalleerd\n4. **Draai MCP handmatig**: `npx -y synapse-mcp-api@latest`\n5. **Controleer logs**: `~/Library/Logs/Claude/mcp.log`\n\nZie [MCP Troubleshooting](/docs/mcp/troubleshooting).\n\n## Synapse is offline\n\n### Symptomen\n\n- Kan synapse.schaefer.zone niet bereiken\n- curl time-out\n\n### Oplossingen\n\n1. **Controleer uw internet** — probeer een andere site\n2. **Controleer Synapse-gezondheid**: `curl https://synapse.schaefer.zone/health`\n3. **Wacht** — kan tijdelijke storing of deployment zijn\n4. **Controleer statuspagina** (indien beschikbaar)\n\nVoor self-hosted: controleer Docker-containerstatus, databaseverbinding.\n\n## Database-fouten\n\n### Symptomen\n\n- 500 Internal Server Error\n- \"Database connection failed\"\n\n### Oplossingen\n\nVoor self-hosted:\n\n1. **Controleer dat PostgreSQL draait**: `docker ps | grep postgres`\n2. **Controleer DATABASE_URL** in env\n3. **Controleer migraties**: `npm run migrate:check`\n4. **Controleer schijfruimte**: `df -h`\n\nVoor gehost: meld bij support.\n\n## Webhook vuurt niet\n\n### Symptomen\n\n- Geregistreerde webhook maar ontvangt geen callbacks\n- Geen POST naar uw URL\n\n### Oplossingen\n\n1. **Verifieer dat URL bereikbaar is**: `curl -X POST your-url -d '{}'`\n2. **Controleer events-filter** — `memory.*` komt overeen met alle memory-events\n3. **Test webhook**: `POST /webhooks/:id/test`\n4. **Controleer dat webhook is ingeschakeld**: `GET /webhooks/:id`\n5. **Verifieer SSL** — Synapse vereist geldige HTTPS voor webhook-URL's\n\nZie [Webhooks API](/docs/api/webhooks).\n\n## Cron-job draait niet\n\n### Symptomen\n\n- Cron-job aangemaakt maar vuurt niet\n- `next_run` wordt niet bijgewerkt\n\n### Oplossingen\n\n1. **Controleer schema-syntaxis** — moet geldige 5-veld cron OF gehele seconden zijn\n2. **Verifieer dat eindpunt is toegestaan** — moet http(s) zijn, geen privé-IP's\n3. **Controleer dat job is ingeschakeld**: `GET /cron`\n4. **Wacht op volgende geplande tijd** — cron is niet onmiddellijk\n\nZie [Cron & Scheduler](/docs/api/cron).\n\n## Meer hulp nodig?\n\n1. **Controleer bestaande docs**: <https://synapse.schaefer.zone/docs>\n2. **Doorzoek docs**: `GET /docs/search?q=your+question`\n3. **Open issue**: <https://gitlab.com/schaefer-services/synapse/-/issues>\n4. **Contact**: zie `/support`-pagina\n\n## Volgende stappen\n\n- [Fouten & Foutafhandeling](/docs/api/errors)\n- [API-FAQ](/docs/faq/api-faq)\n- [MCP Troubleshooting](/docs/mcp/troubleshooting)\n","content_html":"<h1>Troubleshooting-FAQ</h1>\n<p>Oplossingen voor veelvoorkomende Synapse-problemen.</p>\n<h2>Ik kan niet inloggen</h2>\n<h3>Symptomen</h3>\n<ul>\n<li><code>POST /login</code> retourneert 401</li>\n<li>&quot;Invalid email or password&quot;</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Verifieer dat e-mail correct is</strong> — hoofdlettergevoelig</li>\n<li><strong>Controleer wachtwoord</strong> — minimaal 6 tekens</li>\n<li><strong>Registreer eerst</strong> als u geen account heeft: <code>POST /register</code></li>\n<li><strong>Reset wachtwoord</strong> (indien SMTP geconfigureerd) via de web-UI</li>\n</ol>\n<h2>Ik ben mijn Mind Key kwijt</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Kan herinneringen niet benaderen</li>\n<li>Mind Key is verwijderd/verloren</li>\n</ul>\n<h3>Oplossingen</h3>\n<p>Mind Keys kunnen niet worden hersteld. U moet:</p>\n<ol>\n<li>Inloggen om JWT te krijgen: <code>POST /login</code></li>\n<li>Minds tonen: <code>GET /minds</code> (met JWT)</li>\n<li>Nieuwe mind aanmaken: <code>POST /minds</code></li>\n<li>Nieuwe Mind Key opslaan</li>\n<li>(Optioneel) Oude mind verwijderen: <code>DELETE /minds/:id</code></li>\n</ol>\n<p><strong>Data in de oude mind is verloren</strong> tenzij u de Mind Key kunt vinden.</p>\n<h2>API-aanroepen retourneren 401</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Alle API-aanroepen retourneren 401 Unauthorized</li>\n<li>&quot;Mind Key fehlt oder ungültig&quot;</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Verifieer header-formaat</strong>: <code>Authorization: Bearer mk_...</code></li>\n<li><strong>Controleer dat Mind Key begint met <code>mk_</code></strong> (niet <code>eyJ</code> wat JWT is)</li>\n<li><strong>Test direct</strong>:<pre><code class=\"hljs language-bash\">curl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_YOUR_KEY&quot;</span> \\\n     https://synapse.schaefer.zone/memory/recall</code></pre></li>\n<li><strong>Mind Key kan zijn ingetrokken</strong> — maak een nieuwe mind aan</li>\n</ol>\n<p>Zie <a href=\"/docs/getting-started/authentication\">Authenticatie</a>.</p>\n<h2>API-aanroepen retourneren 404</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>404 Not Found</li>\n<li>&quot;Route not found&quot;</li>\n</ul>\n<h3>Oplossingen</h3>\n<div class=\"callout callout-critical\">Raad geen eindpuntpaden. Alleen paden in `GET /endpoints` bestaan.</div><ol>\n<li><strong>Controleer geldige eindpunten</strong>: <code>curl https://synapse.schaefer.zone/endpoints</code></li>\n<li><strong>Vergelijk URL exact</strong> — hoofdlettergevoelig, geen afsluitende slashes</li>\n<li><strong>Controleer HTTP-methode</strong> — <code>GET /memory</code> vs <code>POST /memory</code> zijn verschillend</li>\n</ol>\n<h2>API-aanroepen retourneren 429</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>429 Too Many Requests</li>\n<li>&quot;Rate limit exceeded&quot;</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Schakel over naar header-auth</strong> (geen ratelimit):<pre><code class=\"hljs language-bash\"><span class=\"hljs-comment\"># Niet</span>\ncurl <span class=\"hljs-string\">&quot;.../memory/recall?key=mk_...&quot;</span>\n\n<span class=\"hljs-comment\"># Wel</span>\ncurl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_...&quot;</span> .../memory/recall</code></pre></li>\n<li><strong>Wacht <code>Retry-After</code> seconden</strong> als u <code>?key=</code> moet gebruiken</li>\n</ol>\n<p>Zie <a href=\"/docs/api/rate-limits\">Ratelimits</a>.</p>\n<h2>Memory-zoekopdracht retourneert geen resultaten</h2>\n<h3>Symptomen</h3>\n<ul>\n<li><code>GET /memory/search?q=...</code> retourneert leeg</li>\n<li>Weet dat herinneringen bestaan</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Verifieer dat herinneringen bestaan</strong>: <code>GET /memory/recall</code></li>\n<li><strong>Controleer zoeksyntaxis</strong> — FTS5 heeft specifieke syntaxis</li>\n<li><strong>Probeer eenvoudigere query</strong> — <code>?q=docker</code> in plaats van <code>?q=docker+swarm+deployment</code></li>\n<li><strong>Gebruik semantisch zoeken</strong> voor conceptuele query&#39;s: <code>GET /memory/semantic-search?q=...</code></li>\n</ol>\n<p>Zie <a href=\"/docs/concepts/fts5-search\">FTS5-zoekopdracht</a>.</p>\n<h2>Herinneringen worden niet persistent gemaakt</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>POST /memory retourneert succes</li>\n<li>GET /memory/recall toont ze niet</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Verifieer dezelfde Mind Key</strong> — verschillende sleutels = verschillende minds</li>\n<li><strong>Controleer respons</strong> — POST retourneert <code>{ &quot;id&quot;: &quot;mem_...&quot;, &quot;status&quot;: &quot;stored&quot; }</code></li>\n<li><strong>Probeer GET /memory</strong> (JSON-lijst) in plaats van /memory/recall (tekst)</li>\n<li><strong>Controleer filter</strong> — <code>?category=</code> of <code>?tag=</code> verbergen ze mogelijk</li>\n</ol>\n<h2>Tools verschijnen niet in Claude Desktop</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Claude Desktop toont 0 tools</li>\n<li>Geen 🔌-icoon</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Herstart Claude Desktop volledig</strong> (Cmd+Q)</li>\n<li><strong>Verifieer configuratiebestand</strong> is geldige JSON</li>\n<li><strong>Controleer Node.js 18+</strong> geïnstalleerd</li>\n<li><strong>Draai MCP handmatig</strong>: <code>npx -y synapse-mcp-api@latest</code></li>\n<li><strong>Controleer logs</strong>: <code>~/Library/Logs/Claude/mcp.log</code></li>\n</ol>\n<p>Zie <a href=\"/docs/mcp/troubleshooting\">MCP Troubleshooting</a>.</p>\n<h2>Synapse is offline</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Kan synapse.schaefer.zone niet bereiken</li>\n<li>curl time-out</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Controleer uw internet</strong> — probeer een andere site</li>\n<li><strong>Controleer Synapse-gezondheid</strong>: <code>curl https://synapse.schaefer.zone/health</code></li>\n<li><strong>Wacht</strong> — kan tijdelijke storing of deployment zijn</li>\n<li><strong>Controleer statuspagina</strong> (indien beschikbaar)</li>\n</ol>\n<p>Voor self-hosted: controleer Docker-containerstatus, databaseverbinding.</p>\n<h2>Database-fouten</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>500 Internal Server Error</li>\n<li>&quot;Database connection failed&quot;</li>\n</ul>\n<h3>Oplossingen</h3>\n<p>Voor self-hosted:</p>\n<ol>\n<li><strong>Controleer dat PostgreSQL draait</strong>: <code>docker ps | grep postgres</code></li>\n<li><strong>Controleer DATABASE_URL</strong> in env</li>\n<li><strong>Controleer migraties</strong>: <code>npm run migrate:check</code></li>\n<li><strong>Controleer schijfruimte</strong>: <code>df -h</code></li>\n</ol>\n<p>Voor gehost: meld bij support.</p>\n<h2>Webhook vuurt niet</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Geregistreerde webhook maar ontvangt geen callbacks</li>\n<li>Geen POST naar uw URL</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Verifieer dat URL bereikbaar is</strong>: <code>curl -X POST your-url -d &#39;{}&#39;</code></li>\n<li><strong>Controleer events-filter</strong> — <code>memory.*</code> komt overeen met alle memory-events</li>\n<li><strong>Test webhook</strong>: <code>POST /webhooks/:id/test</code></li>\n<li><strong>Controleer dat webhook is ingeschakeld</strong>: <code>GET /webhooks/:id</code></li>\n<li><strong>Verifieer SSL</strong> — Synapse vereist geldige HTTPS voor webhook-URL&#39;s</li>\n</ol>\n<p>Zie <a href=\"/docs/api/webhooks\">Webhooks API</a>.</p>\n<h2>Cron-job draait niet</h2>\n<h3>Symptomen</h3>\n<ul>\n<li>Cron-job aangemaakt maar vuurt niet</li>\n<li><code>next_run</code> wordt niet bijgewerkt</li>\n</ul>\n<h3>Oplossingen</h3>\n<ol>\n<li><strong>Controleer schema-syntaxis</strong> — moet geldige 5-veld cron OF gehele seconden zijn</li>\n<li><strong>Verifieer dat eindpunt is toegestaan</strong> — moet http(s) zijn, geen privé-IP&#39;s</li>\n<li><strong>Controleer dat job is ingeschakeld</strong>: <code>GET /cron</code></li>\n<li><strong>Wacht op volgende geplande tijd</strong> — cron is niet onmiddellijk</li>\n</ol>\n<p>Zie <a href=\"/docs/api/cron\">Cron &amp; Scheduler</a>.</p>\n<h2>Meer hulp nodig?</h2>\n<ol>\n<li><strong>Controleer bestaande docs</strong>: <a href=\"https://synapse.schaefer.zone/docs\">https://synapse.schaefer.zone/docs</a></li>\n<li><strong>Doorzoek docs</strong>: <code>GET /docs/search?q=your+question</code></li>\n<li><strong>Open issue</strong>: <a href=\"https://gitlab.com/schaefer-services/synapse/-/issues\">https://gitlab.com/schaefer-services/synapse/-/issues</a></li>\n<li><strong>Contact</strong>: zie <code>/support</code>-pagina</li>\n</ol>\n<h2>Volgende stappen</h2>\n<ul>\n<li><a href=\"/docs/api/errors\">Fouten &amp; Foutafhandeling</a></li>\n<li><a href=\"/docs/faq/api-faq\">API-FAQ</a></li>\n<li><a href=\"/docs/mcp/troubleshooting\">MCP Troubleshooting</a></li>\n</ul>\n","urls":{"html":"/docs/faq/troubleshooting","text":"/docs/faq/troubleshooting?format=text","json":"/docs/faq/troubleshooting?format=json","llm":"/docs/faq/troubleshooting?format=llm"},"translations_available":["en","zh","hi","es","fr","ar","pt","ru","ja","de","it","ko","nl","pl","tr","sv","vi","th","id","uk"]}