Referenca e API-së · Seanca dhe Mesazhe

API për Seanca Bisedash dhe Mesazhe

Krijoni, listoni, riemëroni, fiksoni, shënoni me yll dhe fshini seanca bisedash, dhe menaxhoni mesazhet individuale brenda tyre — përfshirë historikun e redaktimeve të gjurmuara dhe mundësinë e rikthimit.

Pikat e Seancave

POST /api/v1/sessions
GET /api/v1/sessions
GET /api/v1/sessions/{session_id}/messages
PATCH /api/v1/sessions/{session_id}
DELETE /api/v1/sessions/{session_id}

Pikat e Mesazheve

GET /api/v1/messages/{message_id}
PATCH /api/v1/messages/{message_id}
GET /api/v1/messages/{message_id}/history
POST /api/v1/messages/{message_id}/undo
DELETE /api/v1/messages/{message_id}

Krijo Seancë — Trupi i Kërkesës

json
{
  "title": "Untitled Chat",
  "kind": "chat",
  "folder_id": null,
  "agent_id": null,
  "metadata": {}
}

workspace_id nuk pranohet nga klienti në runtime personal, dhe duhet të përputhet me kontekstin aktiv të runtime të workspace-it — nuk merret kurrë si një mbivendosje arbitrare nga klienti.

Listo — Parametrat e Pyetjes & Përgjigjja

kindagent_idpinnedlimit (parazgjedhje 50, maksimumi 200)offset (parazgjedhje 0)
json
{
  "items": [ { "id": "...", "title": "...", "pinned": false, "...": "..." } ],
  "total": 12,
  "limit": 50,
  "offset": 0
}

Përditëso Seancën (PATCH)

Të paktën një fushë duhet të jetë e pranishme në trupin e kërkesës — një PATCH i zbrazët refuzohet.

titulli ngulituri favorizuari shënuar si i pa lexuar
json
{
  "pinned": true,
  "starred": false
}

Sjelljet e Seancës

  • Një seancë i përket saktësisht një pronari (një përdorues, me mundësi kufizimi në një workspace) — përcaktohet nga konteksti i kërkesës së autentikuar, jo nga të dhënat e dërguara nga klienti.
  • Fshirja e një seance është soft delete (vendoset deleted_at); seanca dhe mesazhet e saj mbeten në bazën e të dhënave por përjashtohen nga të gjitha kërkesat standarde.
  • GET /sessions/{session_id}/messages kthen një numër mesazhesh të llogaritur në kohë reale nga vetë mesazhet, jo nga një numërues i cache-uar.
  • Parametrat e rrugës session_id dhe message_id verifikohen si UUID — një ID e keqformuar kthen një gabim validimi të qartë, jo një gabim serveri.
  • Seancat demo të faqes së marketingut janë të kufizuara në 3 për përdorues dhe rikthejnë 403 sapo arrihet ai kufi.

Historia e Redaktimeve të Mesazheve & Rikthim

Çdo redaktim i përmbajtjes ose payload-it të një mesazhi regjistrohet para se të aplikohet ndryshimi, duke ruajtur versionin e mëparshëm.

json
[
  {
    "id": "8f14e...",
    "old_content": "Original message text",
    "old_payload": null,
    "edited_at": "2026-07-30T16:40:00Z"
  }
]
  • Një mesazh mund të redaktohet ose fshihet vetëm nga pronari i seancës së cilës i përket.
  • Undo rikthen versionin e regjistruar më të fundit dhe heq atë hyrje historie — nuk kthehet më prapa se sa redaktimi i fundit.
  • Redaktimi ose fshirja e një mesazhi aktualisht nuk rregullon fushën e numrit të mesazheve të cache-uar të seancës; ajo gjithmonë reflekton numrin në kohë reale.

Modelet e Gabimeve

400

Kërkesë e pavlefshme — përfshirë trupin PATCH të zbrazët ose mungesën e ndryshimeve të zbulueshme.

401

Autentikimi mungon ose është i pavlefshëm.

404

Seanca ose mesazhi nuk u gjet (ose nuk i përket thirrësit).

Shembuj

Krijo një seancë

bash
curl -X POST "/api/v1/sessions" \
  -H "Authorization: Bearer [token]" \
  -H "Content-Type: application/json" \
  -d '{"title": "New Chat", "kind": "chat"}'

Fikso një seancë

bash
curl -X PATCH "/api/v1/sessions/[session_id]" \
  -H "Authorization: Bearer [token]" \
  -H "Content-Type: application/json" \
  -d '{"pinned": true}'

Redakto një mesazh

bash
curl -X PATCH "/api/v1/messages/[message_id]" \
  -H "Authorization: Bearer [token]" \
  -H "Content-Type: application/json" \
  -d '{"content": "Corrected message text"}'

Zhbëj redaktimin e fundit

bash
curl -X POST "/api/v1/messages/[message_id]/undo" \
  -H "Authorization: Bearer [token]"