# ChatLogs

## 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."}}}}
````


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aisuru.com/api/engine/chatlogs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
