User & Minds API
Zarządzanie kontem — rejestracja, logowanie, tworzenie umysłów, lista umysłów, usuwanie umysłów. Chronione JWT.
User & Minds API
User & Minds API obsługuje zarządzanie kontem. Te endpointy używają autoryzacji JWT (nie Mind Key), ponieważ operują na poziomie konta, a nie umysłu.
Endpointy autoryzacji
POST /register
Tworzy nowe konto użytkownika.
curl -X POST https://synapse.schaefer.zone/register \
-H "Content-Type: application/json" \
-d '{
"email": "you@example.com",
"password": "your-secure-password",
"display_name": "Michael"
}'Odpowiedź:
{
"jwt": "eyJhbGci...",
"user": {
"id": "u_abc123",
"email": "you@example.com",
"display_name": "Michael",
"created_at": "2026-06-27T..."
}
}POST /login
Logowanie do istniejącego konta.
curl -X POST https://synapse.schaefer.zone/login \
-H "Content-Type: application/json" \
-d '{
"email": "you@example.com",
"password": "your-secure-password"
}'Odpowiedź: taka sama jak dla /register.
Endpointy umysłów
POST /minds
Tworzy nowy umysł. Zwraca Mind Key — należy go natychmiast zapisać, jest wyświetlany tylko raz.
curl -X POST https://synapse.schaefer.zone/minds \
-H "Authorization: Bearer YOUR_JWT" \
-H "Content-Type: application/json" \
-d '{
"name": "Work Mind",
"description": "Job-related memories"
}'Odpowiedź:
{
"id": "m_xyz789",
"name": "Work Mind",
"description": "Job-related memories",
"mind_key": "mk_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789",
"created_at": "2026-06-27T..."
}GET /minds
Lista wszystkich umysłów bieżącego użytkownika.
curl -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/mindsOdpowiedź:
{
"minds": [
{
"id": "m_xyz789",
"name": "Work Mind",
"description": "Job-related memories",
"created_at": "2026-06-27T...",
"memory_count": 142,
"last_activity": "2026-06-27T..."
}
]
}DELETE /minds/:id
Trwale usuwa umysł.
curl -X DELETE -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/minds/m_xyz789Wzorzec wielu umysłów
Większości użytkowników pomaga posiadanie wielu umysłów, aby utrzymać konteksty oddzielone:
# Tworzenie umysłów dla różnych kontekstów
curl -X POST .../minds -d '{"name": "work", "description": "Job"}'
# → mind_key: mk_work...
curl -X POST .../minds -d '{"name": "personal", "description": "Personal life"}'
# → mind_key: mk_personal...
curl -X POST .../minds -d '{"name": "project-synapse", "description": "Synapse dev"}'
# → mind_key: mk_synapse...Należy używać różnych Mind Key w różnych sesjach LLM, aby utrzymać konteksty oddzielone.
Bezpieczeństwo konta
Wymagania dotyczące hasła
- Minimum 6 znaków
- Brak maksimum (zaleca się menedżer haseł)
- Przechowywane jako hasz bcrypt (nigdy w postaci jawnej)
Wygasanie JWT
JWT wygasają po 7 dniach. Po wygaśnięciu należy ponownie wywołać /login.
Bezpieczeństwo Mind Key
Mind Key nigdy nie wygasa. W przypadku skompromitowania Mind Key:
- Utworzyć nowy umysł przez
POST /minds - Zaktualizować konfigurację LLM o nowy Mind Key
- Usunąć skompromitowany umysł przez
DELETE /minds/:id
Następne kroki
- Autoryzacja — pełny przewodnik autoryzacji
- Mind Key vs JWT — przewodnik decyzyjny
- Sharing API — współdzielenie umysłów z innymi użytkownikami