# Variables-API Die Variables-API ist ein schneller Key-Value-Store für flüchtigen Status. Im Gegensatz zu Memories (die indiziert, durchsuchbar und strukturiert sind) sind Variablen für schnelle Lese-/Schreibzugriffe optimiert — perfekt für Zähler, Flags und Session-Status. ## Endpunkte ### POST /var Eine Variable setzen oder aktualisieren. ```bash curl -X POST https://synapse.schaefer.zone/var \ -H "Authorization: Bearer YOUR_MIND_KEY" \ -H "Content-Type: application/json" \ -d '{"key": "last_session_at", "value": "2026-06-27T14:00:00Z"}' ``` ### GET /var/:key Eine einzelne Variable abrufen. ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` Antwort: ```json { "key": "last_session_at", "value": "2026-06-27T14:00:00Z", "updated_at": "..." } ``` ### GET /var Alle Variablen auflisten. ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var ``` ### DELETE /var/:key Eine Variable löschen. ```bash curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` ## Wann Variablen statt Memory verwenden? | Anwendungsfall | Verwende | |----------------|----------| | Nutzername, Präferenzen | Memory (durchsuchbar, strukturiert) | | Zeitstempel der letzten Session | Variable (flüchtiger Status) | | Zähler (z. B. gesendete Nachrichten) | Variable (häufige Updates) | | Workflow-Status („Schritt 3 von 5 erledigt") | Variable (vorübergehend) | | Ausführliche Projektnotizen | Memory (volltextindiziert) | | Wiederverwendbare Scripts | Script-Speicher (benannt, versioniert) | ## Häufige Patterns ### Letzte Session verfolgen ```bash # At session end curl -X POST .../var -d '{"key": "last_session_at", "value": "'$(date -Iseconds)'"}' # At session start LAST=$(curl .../var/last_session_at | jq -r .value) curl .../memory/diff?since=$(date -d "$LAST" +%s) ``` ### Zähler-Pattern ```bash # Increment N=$(curl .../var/api_calls | jq -r .value) curl -X POST .../var -d "{\"key\": \"api_calls\", \"value\": $((N+1))}" ``` ### Feature-Flags ```bash curl -X POST .../var -d '{"key": "feature_x_enabled", "value": "true"}' # Check ENABLED=$(curl .../var/feature_x_enabled | jq -r .value) if [ "$ENABLED" = "true" ]; then ... fi ``` ## Nächste Schritte - [Memory-API](/docs/api/memory) — für strukturierte, durchsuchbare Daten - [Cron & Scheduler](/docs/api/cron)