User & Minds API
Manajemen akun — daftar, login, buat mind, daftar mind, hapus mind. Dilindungi JWT.
User & Minds API
User & Minds API menangani manajemen akun. Endpoint ini menggunakan autentikasi JWT (bukan Mind Key) karena beroperasi di level akun, bukan level mind.
Endpoint Autentikasi
POST /register
Membuat akun pengguna baru.
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"
}'Respons:
{
"jwt": "eyJhbGci...",
"user": {
"id": "u_abc123",
"email": "you@example.com",
"display_name": "Michael",
"created_at": "2026-06-27T..."
}
}POST /login
Masuk ke akun yang sudah ada.
curl -X POST https://synapse.schaefer.zone/login \
-H "Content-Type: application/json" \
-d '{
"email": "you@example.com",
"password": "your-secure-password"
}'Respons: sama dengan /register.
Endpoint Minds
POST /minds
Membuat mind baru. Mengembalikan Mind Key — simpan segera, hanya ditampilkan sekali.
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"
}'Respons:
{
"id": "m_xyz789",
"name": "Work Mind",
"description": "Job-related memories",
"mind_key": "mk_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789",
"created_at": "2026-06-27T..."
}GET /minds
Mendaftar semua mind untuk pengguna saat ini.
curl -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/mindsRespons:
{
"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
Menghapus mind secara permanen.
curl -X DELETE -H "Authorization: Bearer YOUR_JWT" \
https://synapse.schaefer.zone/minds/m_xyz789Pola Multi-Mind
Sebagian besar pengguna mendapat manfaat dari beberapa mind untuk menjaga konteks tetap terisolasi:
# Buat mind untuk konteks berbeda
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...Gunakan Mind Key yang berbeda dalam sesi LLM yang berbeda untuk menjaga konteks tetap terisolasi.
Keamanan Akun
Persyaratan kata sandi
- Minimal 6 karakter
- Tidak ada maksimum (gunakan pengelola kata sandi)
- Disimpan sebagai hash bcrypt (tidak pernah plaintext)
Kedaluwarsa JWT
JWT kedaluwarsa setelah 7 hari. Saat kedaluwarsa, cukup panggil /login lagi.
Keamanan Mind Key
Mind Key tidak pernah kedaluwarsa. Jika Mind Key terkompromi:
- Buat mind baru melalui
POST /minds - Perbarui konfigurasi LLM Anda dengan Mind Key baru
- Hapus mind yang terkompromi melalui
DELETE /minds/:id
Langkah Berikutnya
- Autentikasi — panduan autentikasi lengkap
- Mind Key vs JWT — panduan keputusan
- Sharing API — berbagi mind dengan pengguna lain