---
title: "Log Chat Turns Endpoint"
method: POST
path: "/api/ai/chat-log"
tags: ["AI"]
---

# Log Chat Turns Endpoint

`POST /api/ai/chat-log`

## Request

- Base URL: `https://api.ruzora.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ruzora.com/api/ai/chat-log`
- Auth: none declared

Persist a chat conversation turn from chat-api (Sol v2 Phase 0).

Internal service-to-service endpoint, same trust model as /usage.
chat-api calls it fire-and-forget — failures here must never affect
the visitor's chat experience.

## Request body

- ChatLogRequest: One completed conversation turn (user message + assistant reply).
  - `session_id` string, uuid, required
  - `surface` string, required
  - `visitor_email` string, nullable
  - `lead_id` string, uuid, nullable
  - `shortlist_token` string, nullable
  - `turns` ChatTurnIn[], required
    - `role` string, required
    - `content` string, required
    - `tools_used` string[], nullable

## Response `201`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api.md) · [All operations](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ruzora/apis/ruzora-candidate-crm-api/revisions/f9b8223f3ac4?raw)
