> For the complete documentation index, see [llms.txt](https://docs.aisuru.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.aisuru.com/api/engine/chat-logs.md).

# Chat Logs

## Gets the Chat Log objects for the Memori of the current session record in a specific date interval.

> This API requires a Giver session.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/ChatLogs/{strSessionID}/{strDateFrom}/{strDateTo}":{"get":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori of the current session record in a specific date interval.","description":"This API requires a Giver session.","operationId":"ChatLogs-ListMemoriChatLogs","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strDateFrom","in":"path","description":"The optional beginning of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}},{"name":"strDateTo","in":"path","description":"The optional end of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## Removes all Chat Log objects in a specific date interval.

> This API requires a Giver session.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/ChatLogs/{strSessionID}/{strDateFrom}/{strDateTo}":{"delete":{"tags":["ChatLogs"],"summary":"Removes all Chat Log objects in a specific date interval.","description":"This API requires a Giver session.","operationId":"ChatLogs-RemoveChatLogs","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strDateFrom","in":"path","description":"The optional begin of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}},{"name":"strDateTo","in":"path","description":"The optional end of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}}}}},"components":{"schemas":{"Response":{"type":"object","properties":{"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Base response."}}}}
````

## POST /memori/v2/ChatLogsPaged/{strSessionID}

> Gets the Chat Log objects for the Memori of the current session record in a specific date interval, with paging.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/ChatLogsPaged/{strSessionID}":{"post":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori of the current session record in a specific date interval, with paging.","operationId":"ChatLogs-ListMemoriChatLogsPaged","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"The filter criteria","content":{"application/json-patch+json":{"schema":{"$ref":"#/components/schemas/ListMemoriChatlogsPagedSpecs"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListMemoriChatlogsPagedSpecs"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListMemoriChatlogsPagedSpecs"}},"application/*+json":{"schema":{"$ref":"#/components/schemas/ListMemoriChatlogsPagedSpecs"}}}},"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListMemoriChatlogsPagedSpecs":{"type":"object","properties":{"dateFrom":{"type":"string","description":"The starting date and time from which chat logs should be retrieved.\r\nThe value is expected to be a string formatted as \"yyyyMMddHHmmssfff\".","nullable":true},"dateTo":{"type":"string","description":"The ending date and time up to which chat logs should be retrieved.\r\nThe value is expected to be a string formatted as \"yyyyMMddHHmmssfff\".","nullable":true},"minimumMessagesPerChat":{"type":"integer","description":"Specifies the minimum number of messages a chat must have to be included in the results.\r\nIf null, defaults to 3 (which means chats with less than 3 messages are excluded).","format":"int32","nullable":true},"filter":{"type":"string","description":"A text-based filter applied to the chat logs. The filter is matched against\r\nthe SessionID, IP address, user name, and chat text fields.","nullable":true},"from":{"type":"integer","description":"Specifies the starting index from which paginated chat logs should be retrieved.","format":"int32"},"howMany":{"type":"integer","description":"Specifies the number of chat logs to retrieve in a paginated request.","format":"int32"}},"additionalProperties":false},"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## Gets the Chat Log objects for the Memori of the current session recorded during a specific other session.

> This API requires a Giver session, unless the session ID is the same as the Chat Log session ID.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/SessionChatLogs/{strSessionID}/{strChatLogSessionID}":{"get":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori of the current session recorded during a specific other session.","description":"This API requires a Giver session, unless the session ID is the same as the Chat Log session ID.","operationId":"ChatLogs-ListSessionChatLogs","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strChatLogSessionID","in":"path","description":"The session ID for which Chat Log objects are being searched","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## Gets the Chat Log objects for the Memori of the current session created by a specific User.

> This API requires a Giver session.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/UserChatLogs/{strSessionID}/{strUserID}/{strDateFrom}/{strDateTo}":{"get":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori of the current session created by a specific User.","description":"This API requires a Giver session.","operationId":"ChatLogs-ListUserChatLogs","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strUserID","in":"path","description":"The user ID for which Chat Log objects are being searched","required":true,"schema":{"type":"string"}},{"name":"strDateFrom","in":"path","description":"The optional begin of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}},{"name":"strDateTo","in":"path","description":"The optional end of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## GET /memori/v2/CurrentUserChatLogs/{strSessionID}/{strDateFrom}/{strDateTo}

> Gets the Chat Log objects for the Memori of the current session created by the current User.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/CurrentUserChatLogs/{strSessionID}/{strDateFrom}/{strDateTo}":{"get":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori of the current session created by the current User.","operationId":"ChatLogs-ListCurrentUserChatLogs","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strDateFrom","in":"path","description":"The optional begin of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}},{"name":"strDateTo","in":"path","description":"The optional end of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## GET /memori/v2/UserChatLogsByToken/{loginToken}/{strMemoriID}/{strDateFrom}/{strDateTo}

> Gets the Chat Log objects for the Memori created by the user identified by the login token.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/UserChatLogsByToken/{loginToken}/{strMemoriID}/{strDateFrom}/{strDateTo}":{"get":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori created by the user identified by the login token.","operationId":"ChatLogs-UserChatLogsByToken","parameters":[{"name":"loginToken","in":"path","description":"The login token to identify the user","required":true,"schema":{"type":"string"}},{"name":"strMemoriID","in":"path","description":"The Memori ID","required":true,"schema":{"type":"string"}},{"name":"strDateFrom","in":"path","description":"The optional begin of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}},{"name":"strDateTo","in":"path","description":"The optional end of the date interval, in UTC time, in the format yyyyMMddHHmmssfff","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## POST /memori/v2/UserChatLogsByTokenPaged

> Gets the Chat Log objects for the Memori created by the user identified by the login token, with paging.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/UserChatLogsByTokenPaged":{"post":{"tags":["ChatLogs"],"summary":"Gets the Chat Log objects for the Memori created by the user identified by the login token, with paging.","operationId":"ChatLogs-UserChatLogsByTokenPaged","requestBody":{"description":"The filter criteria including login token, memori ID, date range and pagination parameters","content":{"application/json-patch+json":{"schema":{"$ref":"#/components/schemas/UserChatLogsByTokenPagedSpecs"}},"application/json":{"schema":{"$ref":"#/components/schemas/UserChatLogsByTokenPagedSpecs"}},"text/json":{"schema":{"$ref":"#/components/schemas/UserChatLogsByTokenPagedSpecs"}},"application/*+json":{"schema":{"$ref":"#/components/schemas/UserChatLogsByTokenPagedSpecs"}}}},"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"application/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}},"text/json":{"schema":{"$ref":"#/components/schemas/ListChatLogsResponse"}}}}}}}},"components":{"schemas":{"UserChatLogsByTokenPagedSpecs":{"type":"object","properties":{"loginToken":{"type":"string","description":"The login token to identify the user","nullable":true},"memoriID":{"type":"string","description":"The Memori ID","nullable":true},"dateFrom":{"type":"string","description":"The starting date and time from which chat logs should be retrieved.\r\nThe value is expected to be a string formatted as \"yyyyMMddHHmmssfff\".","nullable":true},"dateTo":{"type":"string","description":"The ending date and time up to which chat logs should be retrieved.\r\nThe value is expected to be a string formatted as \"yyyyMMddHHmmssfff\".","nullable":true},"from":{"type":"integer","description":"Specifies the starting index from which paginated chat logs should be retrieved.","format":"int32"},"howMany":{"type":"integer","description":"Specifies the number of chat logs to retrieve in a paginated request.","format":"int32"},"minimumMessagesPerChat":{"type":"integer","description":"Specifies the minimum number of messages a chat must have to be included in the results.\r\nIf null, defaults to 3 (which means chats with less than 3 messages are excluded).","format":"int32","nullable":true}},"additionalProperties":false},"ListChatLogsResponse":{"type":"object","properties":{"chatLogs":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"List of Chat Log objects.\r\nMay be empty.","nullable":true},"count":{"type":"integer","description":"Total number of ChatLog objects","format":"int32"},"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Chat Logs request."},"ChatLogSpecs":{"type":"object","properties":{"chatLogID":{"type":"string","description":"Chat Log object ID.","nullable":true},"timestamp":{"type":"string","description":"Timestamp UTC of the chat log creation.","format":"date-time"},"memoriID":{"type":"string","description":"ID of the related Memori object.","nullable":true},"userID":{"type":"string","description":"ID of the related User object.\r\nMay be null if no User is associated with the session.","nullable":true},"userAgent":{"type":"string","description":"The user agent information associated with the chat session.","nullable":true},"ipAddress":{"type":"string","description":"The IP address associated with a chat log or event.","nullable":true},"eMail":{"type":"string","description":"The email address of the user associated with the chat log.","nullable":true},"sessionID":{"type":"string","description":"ID of the related session.","nullable":true},"boardOfExperts":{"type":"boolean","description":"True if this chat log was performed with the Memori\r\nconfigured as a Board of Experts."},"receiverTag":{"type":"string","description":"Tag of the Person object authenticated in the session.\r\n```Null``` if anonymous performed the chat.","nullable":true},"continuesFrom":{"$ref":"#/components/schemas/ChatLogSpecs"},"continuesTo":{"type":"array","items":{"$ref":"#/components/schemas/ChatLogSpecs"},"description":"If set, this chat log continues in the pointed chat logs. <br> The pointed Chat Log objects are only proxies for listing purposes: they do not contain their Chat Line objects. If they, in turn, have continues, their ContinuesTo property is NOT set.","nullable":true},"lines":{"type":"array","items":{"$ref":"#/components/schemas/ChatLineSpecs"},"description":"List of the current chat's Chat Line objects.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Log object."},"ChatLineSpecs":{"type":"object","properties":{"timestamp":{"type":"string","description":"Timestamp UTC of the line.","format":"date-time"},"inbound":{"type":"boolean","description":"If ```True``` the line is the text from a Text Entered Event.\r\nIf ```False``` the line is Dialog State Machine emission."},"completion":{"type":"boolean","description":"If ```True``` the text is a completion obtained via\r\na generative AI.\r\nCan only be ```True``` for outbound lines."},"acceptsFeedback":{"type":"boolean","description":"If ```True``` the line is the result of a high confidence\r\nMemory object match, and as such can be subject to feedback.\r\nCan only be ```True``` for outbound lines."},"text":{"type":"string","description":"Text of the line.","nullable":true},"emitter":{"type":"string","description":"Name of the Memori that provided the text. Used with Board of Experts model.\r\n```Null``` for inbound lines, if no Board of Experts is configured,\r\nor if the Memori providing the text is the chairman of the Board.","nullable":true},"media":{"type":"array","items":{"$ref":"#/components/schemas/ChatMediumSpecs"},"description":"Media attached with the Dialog State Machine emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"memoryID":{"type":"string","description":"ID of the Memory object referenced in this line.","nullable":true},"contextVars":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Dialog State Machine context variables after the emission, if present.\r\nEmpty if the line is inbound.","nullable":true},"llmUsage":{"$ref":"#/components/schemas/InteractionLLMUsage"}},"additionalProperties":false,"description":"Specifications of a Chat Line object."},"ChatMediumSpecs":{"type":"object","properties":{"url":{"type":"string","description":"URL of the Medium. If specified, the Content property is ```Null```.","nullable":true},"content":{"type":"string","description":"Content of the Medium. If specified, the URL property is ```Null```.","nullable":true},"mimeType":{"type":"string","description":"MIME type of the Medium.","nullable":true},"title":{"type":"string","description":"Title of the Medium.","nullable":true},"properties":{"type":"object","additionalProperties":{"type":"string","nullable":true},"description":"Key-value pairs for additional structured content storage.","nullable":true}},"additionalProperties":false,"description":"Specifications of a Chat Medium object."},"InteractionLLMUsage":{"type":"object","properties":{"provider":{"type":"string","nullable":true},"model":{"type":"string","nullable":true},"totalInputTokens":{"type":"integer","format":"int32"},"inputCacheReadTokens":{"type":"integer","format":"int32"},"inputCacheWriteTokens":{"type":"integer","format":"int32"},"outputTokens":{"type":"integer","format":"int32"},"durationMs":{"type":"integer","format":"int32"},"energyImpact":{"$ref":"#/components/schemas/InteractionEnergyImpact"}},"additionalProperties":false},"InteractionEnergyImpact":{"type":"object","properties":{"energy":{"type":"number","format":"double","nullable":true},"energyUnit":{"type":"string","nullable":true},"gwp":{"type":"number","format":"double","nullable":true},"gwpUnit":{"type":"string","nullable":true},"adPe":{"type":"number","format":"double","nullable":true},"adPeUnit":{"type":"string","nullable":true},"pe":{"type":"number","format":"double","nullable":true},"peUnit":{"type":"string","nullable":true},"wcf":{"type":"number","format":"double","nullable":true},"wcfUnit":{"type":"string","nullable":true}},"additionalProperties":false}}}}
````

## Removes an existing Chat Log object.

> This API requires a Giver session.

````json
{"openapi":"3.0.1","info":{"title":"Memori Web API V2","version":"v2"},"paths":{"/memori/v2/ChatLog/{strSessionID}/{strChatLogID}":{"delete":{"tags":["ChatLogs"],"summary":"Removes an existing Chat Log object.","description":"This API requires a Giver session.","operationId":"ChatLogs-RemoveChatLog","parameters":[{"name":"strSessionID","in":"path","description":"The session ID","required":true,"schema":{"type":"string"}},{"name":"strChatLogID","in":"path","description":"The Chat Log object ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response"}}}}}}}},"components":{"schemas":{"Response":{"type":"object","properties":{"requestID":{"type":"integer","description":"Progressive number of the request (since the Server started).\r\nUse this number, together with the RequestDateTime property,\r\nto report an anomalous response.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous response.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is equivalent to the HTTP\r\nstatus code.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Base response."}}}}
````
