Jeder Endpunkt, eine Basis-URL.
Kein SDK erforderlich - jeder HTTP-Client funktioniert. Basis-URL https://api.wontopos.com, Authentifizierung über den X-API-Key-Header, JSON rein und raus. Memory-Operationen sind POST; die Verwaltung von Stores nutzt POST / GET / DELETE auf /collection. Ein Store muss zuerst existieren (siehe Stores), sonst liefern Operationen im Store 404.
Header
| Header | Wozu er dient |
|---|---|
| X-API-Key | Bei jedem Aufruf erforderlich. Ihr Schlüssel, in der Konsole ausgestellt. |
| X-WOS-Model | Optional. Legt fest, welche Engine antwortet. Lassen Sie ihn weg, wird der Standard des Kontos verwendet. GET /api/v1/models listet die Modelle auf, die Ihr Schlüssel wählen darf; ein Endpunkt, den eine ältere Engine nicht bedienen kann, antwortet mit 501 und nennt dieses Modell. |
| Idempotency-Key | Optional, bei Schreibvorgängen. Derselbe Schlüssel mit demselben Body spielt die erste Antwort erneut ab, statt erneut zu speichern - siehe den Hinweis unten. |
Endpunkt
| Endpunkt | Zweck | Body-Felder |
|---|---|---|
| POST /api/v1/memory/collection | Store anlegen | user_id |
| GET /api/v1/memory/collections | Ihre Stores auflisten | (keine) |
| DELETE /api/v1/memory/collection | Store + seine Erinnerungen löschen | user_id |
| /api/v1/memory/store | eine Erinnerung speichern | user_id · content · metadata? (event_date · speaker) · image? |
| /api/v1/memory/store-turn | einen Gesprächszug speichern | user_id · user_msg · assistant_msg |
| POST /api/v1/memory/speakers | Sprecher registrieren (explizit, bis 50) | user_id · speaker |
| GET /api/v1/memory/speakers | registrierte Sprecher + Zähler auflisten | user_id |
| DELETE /api/v1/memory/speakers | Sprecher abmelden (Erinnerungen bleiben) | user_id · speaker |
| /api/v1/memory/by-speaker | was eine Person gesagt hat, neueste zuerst („me“ = der Agent) | user_id · speaker · limit? · before? · skip_ids? |
| POST /api/v1/memory/image | das Bild, das wir zu einer Bild-Erinnerung vorhalten - nicht Ihr Original | user_id · memory_id |
| DELETE /api/v1/memory/image | das Bild entfernen, die Bildunterschrift behalten | user_id · memory_id · preview? |
| /api/v1/memory/images | die Bilder eines Stores, neueste zuerst (+ Gesamtzahl) | user_id · limit? · before? · skip_ids? |
| /api/v1/memory/lineage | die Änderungskette einer Erinnerung, älteste zuerst | user_id · memory_id |
| GET /api/v1/won/usage | Was dieser Schlüssel ausgegeben hat und was übrig ist — damit ein Modell entscheiden kann, ob es weitermacht. Kostenlos. | days? |
| GET /api/v1/memory/usage | Was dieser Schlüssel ausgegeben hat und was übrig ist — damit ein Modell entscheiden kann, ob es weitermacht. Kostenlos. | days? |
| /api/v1/won/revisions | wie viel eines Stores überschrieben wurde. Kostenlos | user_id · include? · limit? · before? · skip_ids? |
| /api/v1/memory/revisions | derselbe Aufruf unter der Memory-Ebene. Kostenlos | user_id · include? · limit? · before? · skip_ids? |
| /api/v1/memory/bulk-store | einen Textblock nachladen | user_id · content · category? · timestamp? |
| /api/v1/memory/search | semantische Suche | user_id · query · max_results? · speaker? · cache_control? · filters? · verify? · max_images? |
| /api/v1/memory/recall | Kurzzeit + Langzeit + Kontext | user_id · query · limit? · context_limit? |
| /api/v1/memory/get | eine Erinnerung per id | user_id · memory_id |
| /api/v1/memory/list | einen Store durchblättern | user_id · limit? · cursor? |
| /api/v1/memory/history | jüngste Gesprächszüge | user_id |
| /api/v1/memory/stats | Anzahl der Erinnerungen | user_id |
| /api/v1/memory/supersede | einen geänderten Fakt ersetzen | user_id · old_memory_id · new_content |
| /api/v1/memory/forget | eine (oder alle) löschen | user_id · memory_id? (weglassen = alle löschen) |
| GET /api/v1/engram | Engramme, die dieses Modell ausführen kann | (keine) |
| POST /api/v1/engram/run | ein Engramm ausführen | name · user_id · query · form? · tz? |
| GET /api/v1/models | verfügbare Modelle | (keine) |
Schreibvorgänge akzeptieren einen
Idempotency-Key-Header. Derselbe Schlüssel mit demselben Body spielt die erste Antwort erneut ab, statt erneut zu speichern (10 Minuten); derselbe Schlüssel mit einem anderen Body antwortet mit 422. Nur 2xx werden zwischengespeichert, ein fehlgeschlagener Aufruf ist also sofort wiederholbar.# create the store once (stores are explicit) curl -X POST https://api.wontopos.com/api/v1/memory/collection \ -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \ -d '{"user_id":"alice"}' # store a memory curl -X POST https://api.wontopos.com/api/v1/memory/store \ -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \ -d '{"user_id":"alice","content":"she prefers tea over coffee"}' # recall - one call, ready for your prompt curl -X POST https://api.wontopos.com/api/v1/memory/recall \ -H "X-API-Key: $WOS_API_KEY" -H "Content-Type: application/json" \ -d '{"user_id":"alice","query":"what does alice drink?"}'
Tatsächliche Antwort - store
{"id": "576700aa-f0e0-4c26-99a0-10e2d5b0d624", "status": "stored (1 chunks)"}