User & Minds API
Gestione account — registrazione, login, creazione menti, elenco menti, eliminazione menti. Protetto da JWT.
User & Minds API
La User & Minds API gestisce la gestione dell'account. Questi endpoint usano l'autenticazione JWT (non Mind Key) perché operano a livello di account, non di mente.
Endpoint di autenticazione
POST /register
Crea un nuovo account utente.
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"
}'Risposta:
{
"jwt": "eyJhbGci...",
"user": {
"id": "u_abc123",
"email": "you@example.com",
"display_name": "Michael",
"created_at": "2026-06-27T..."
}
}POST /login
Accede a un account esistente.
curl -X POST https://synapse.schaefer.zone/login \
-H "Content-Type: application/json" \
-d '{
"email": "you@example.com",
"password": "your-secure-password"
}'Risposta: uguale a /register.
Endpoint delle menti
POST /minds
Crea una nuova mente. Restituisce la Mind Key — la salvi immediatamente, viene mostrata una sola volta.
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"
}'Risposta:
{
"id": "m_xyz789",
"name": "Work Mind",
"description": "Job-related memories",
"mind_key": "mk_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789",
"created_at": "2026-06-27T..."
}GET /minds
Elenca tutte le menti dell'utente corrente.
curl -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/mindsRisposta:
{
"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
Elimina una mente permanentemente.
curl -X DELETE -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/minds/m_xyz789Modello multi-mente
La maggior parte degli utenti beneficia di più menti per mantenere i contesti isolati:
# Create minds for different contexts
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...Usi Mind Key diverse in sessioni LLM diverse per mantenere i contesti isolati.
Sicurezza dell'account
Requisiti della password
- Minimo 6 caratteri
- Nessun massimo (usi un password manager)
- Salvata come hash bcrypt (mai in chiaro)
Scadenza JWT
I JWT scadono dopo 7 giorni. Quando scadono, chiami semplicemente /login
nuovamente.
Sicurezza della Mind Key
Le Mind Key non scadono mai. Se una Mind Key viene compromessa:
- Crei una nuova mente tramite
POST /minds - Aggiorni la configurazione LLM con la nuova Mind Key
- Elimini la mente compromessa tramite
DELETE /minds/:id
Prossimi passi
- Autenticazione — guida auth completa
- Mind Key vs JWT — guida decisionale
- API Sharing — condivida menti con altri utenti