session_id for follow-up turns and create a new ID for an unrelated conversation or signed-in account change.
Hosted web embeds create sessions automatically. Mobile SDKs can restore unresolved local history. The REST API generates a session when session_id is omitted and returns it in the response.
When the backend reports conversation_resolved, supported clients clear or rotate the local session. A durable endUserId connects history and memory across sessions, but it must not be treated as authorization for private data.