# Variables API Variables API は一時的な状態のための高速キーバリューストアです。メモリ(インデックス化、検索可能、構造化)とは異なり、変数は迅速な読み書きアクセスに最適化されており、カウンター、フラグ、セッション状態に最適です。 ## エンドポイント ### POST /var 変数を設定または更新します。 ```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 単一変数を取得します。 ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` レスポンス: ```json { "key": "last_session_at", "value": "2026-06-27T14:00:00Z", "updated_at": "..." } ``` ### GET /var すべての変数を一覧表示します。 ```bash curl -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var ``` ### DELETE /var/:key 変数を削除します。 ```bash curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \ https://synapse.schaefer.zone/var/last_session_at ``` ## 変数とメモリの使い分け | ユースケース | 使用するもの | |----------|-----| | ユーザー名、設定 | Memory(検索可能、構造化) | | 最終セッションのタイムスタンプ | Variable(一時状態) | | カウンター(例:送信メッセージ数) | Variable(頻繁な更新) | | ワークフロー状態(「5 ステップ中 3 ステップ完了」など) | Variable(一時的) | | 長文のプロジェクトメモ | Memory(フルテキストインデックス付き) | | 再利用可能なスクリプト | Script store(名前付き、バージョン管理) | ## よくあるパターン ### 最終セッションの追跡 ```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) ``` ### カウンターパターン ```bash # Increment N=$(curl .../var/api_calls | jq -r .value) curl -X POST .../var -d "{\"key\": \"api_calls\", \"value\": $((N+1))}" ``` ### フィーチャーフラグ ```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 ``` ## 次のステップ - [Memory API](/docs/api/memory) — 構造化された検索可能なデータ向け - [Cron & Scheduler](/docs/api/cron)