Put something into memory with one call, recall it with another. Add end_user_id (any opaque string) to keep a separate memory under that id; leave it off for one shared memory. Either way the memory is created on first use.
Store#
curl -X POST https://api.fryri.com/v1/capture \
-H "Authorization: Bearer fryri_sk_..." \
-H "Content-Type: application/json" \
-d '{"text": "Prefers window seats. Allergic to peanuts.", "title": "Preferences", "end_user_id": "user-42"}'Recall#
curl -X POST https://api.fryri.com/v1/chat \
-H "Authorization: Bearer fryri_sk_..." \
-H "Content-Type: application/json" \
-d '{"question": "What should I know before booking this trip?", "end_user_id": "user-42"}'The answer is grounded in that user's library only, with sources. GET /v1/search and the other data calls take the same field.
In Python:
import requests
API = "https://api.fryri.com/v1"
H = {"Authorization": "Bearer fryri_sk_..."}
requests.post(f"{API}/capture", headers=H, json={
"text": "Prefers window seats. Allergic to peanuts.",
"end_user_id": "user-42",
})
answer = requests.post(f"{API}/chat", headers=H, json={
"question": "What should I know before booking this trip?",
"end_user_id": "user-42",
}).json()Manage your users#
GET /v1/end-users lists every end user under your key. DELETE /v1/end-users/{id} permanently erases one user's library, which is your deletion story when a user leaves.
Spend always lands on your account, not theirs.