# Variables API Variables API är ett snabbt nyckel-värde-lager för efemärt tillstånd. Till skillnad från minnen (som indexeras, är sökbara och strukturerade) är variabler optimerade för snabb läs/skriv-åtkomst — perfekt för räknare, flaggor och sessionstillstånd. ## Endpoints ### POST /var Sätt eller uppdatera en variabel. ```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 Hämta en enskild variabel. ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` Svar: ```json { "key": "last_session_at", "value": "2026-06-27T14:00:00Z", "updated_at": "..." } ``` ### GET /var Lista alla variabler. ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var ``` ### DELETE /var/:key Ta bort en variabel. ```bash curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` ## När variabler ska användas vs minne | Användningsområde | Använd | |----------|-----| | Användarnamn, inställningar | Minne (sökbart, strukturerat) | | Tidsstämpel för senaste session | Variabel (efemärt tillstånd) | | Räknare (t.ex. skickade meddelanden) | Variabel (frekventa uppdateringar) | | Arbetsflödestillstånd ("steg 3 av 5 klart") | Variabel (övergående) | | Långformiga projektanteckningar | Minne (fulltextindexerat) | | Återanvändbara skript | Skriptlager (namngivet, versionshanterat) | ## Vanliga mönster ### Spåra senaste session ```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) ``` ### Räknarmönster ```bash # Increment N=$(curl .../var/api_calls | jq -r .value) curl -X POST .../var -d "{\"key\": \"api_calls\", \"value\": $((N+1))}" ``` ### Funktionsflaggor ```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ästa steg - [Memory API](/docs/api/memory) — för strukturerad, sökbar data - [Cron & Scheduler](/docs/api/cron)