# Process

## GET /api/v2/Processes/{strToken}/{strType}

> Gets a list of Process objects started by the currently logged in User.

````json
{"openapi":"3.0.1","info":{"title":"Memori.ai Web API V2","version":"v2"},"paths":{"/api/v2/Processes/{strToken}/{strType}":{"get":{"tags":["Process"],"summary":"Gets a list of Process objects started by the currently logged in User.","operationId":"Process-ListProcesses","parameters":[{"name":"strToken","in":"path","description":"The login token","required":true,"schema":{"type":"string"}},{"name":"strType","in":"path","description":"Optional filter for Process type","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessStatusSpecsListProcessesResponse"}}}}}}}},"components":{"schemas":{"ProcessStatusSpecsListProcessesResponse":{"type":"object","properties":{"processes":{"type":"array","items":{"$ref":"#/components/schemas/ProcessStatusSpecs"},"description":"List of recent Process objects and their status.\r\nMay be empty.","nullable":true},"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 reponse.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous reponse.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is indicative of the actual\r\nerror.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Processes request."},"ProcessStatusSpecs":{"type":"object","properties":{"processID":{"type":"string","description":"Process ID.","nullable":true},"memoriID":{"type":"string","description":"ID of the Memori object this Process refers to.","nullable":true},"processUserName":{"type":"string","description":"Name of the user that started the Process.","nullable":true},"processType":{"type":"string","description":"Process type. <br> Can be one of the following:<ul> <li><code>Import</code>: for file import processes</li> <li><code>Analysis</code>: for Deep Thought user/query analysis processes</li> </ul>","nullable":true},"status":{"type":"string","description":"Current status of the Process (starting, running etc.). <br> May be one of the following:<ul> <li><code>Starting</code>: the Process is preparing to start, but has not started yet. Will advance to <code>Running</code> automatically.</li> <li><code>Running</code>: the Process has been started and is actively processing elements.</li> <li><code>Stopped</code>: the Process has been stopped manually, not all elements may have been processed.</li> <li><code>Completed</code>: the Process finished successfully, all the elements have been processed.</li> <li><code>Failed</code>: the Process terminated due to an unexpected error, not all elements may have been processed.</li> </ul>","nullable":true},"error":{"type":"string","description":"If the Status is ```Failed```, reports the error that\r\ncaused the Process to fail.\r\nNull otherwise.","nullable":true},"totalElements":{"type":"integer","description":"Total elements this Process is processing.","format":"int32"},"processedElements":{"type":"integer","description":"Number of elements this Process has processed so far.","format":"int32"},"progress":{"type":"number","description":"Progress of the Process as a fraction of 1.","format":"float"},"processSpecsJSON":{"type":"string","description":"Original parameters of the Process request, as a JSON structure,\r\nexcluding the elements (e.g. document rows for an Import process).","nullable":true},"begin":{"type":"string","description":"Timestamp of start of the Process.\r\nNull until the Process is in ```Starting``` status.","format":"date-time","nullable":true},"end":{"type":"string","description":"Timestamp of end of the Process.\r\nNull until the Process is in ```Starting``` or\r\n```Running``` status.","format":"date-time","nullable":true},"eta":{"type":"number","description":"Estimated time required to complete the Process,\r\nin seconds.","format":"float","nullable":true},"creationTimestamp":{"type":"string","description":"Timestamp of creation. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true},"lastChangeTimestamp":{"type":"string","description":"Timestamp of latest change. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Specifications of a Process Status object."}}}}
````

## GET /api/v2/MemoriProcesses/{strToken}/{strMemoriID}/{strType}

> Gets a list of Process objects for the specified Memori.

````json
{"openapi":"3.0.1","info":{"title":"Memori.ai Web API V2","version":"v2"},"paths":{"/api/v2/MemoriProcesses/{strToken}/{strMemoriID}/{strType}":{"get":{"tags":["Process"],"summary":"Gets a list of Process objects for the specified Memori.","operationId":"Process-ListMemoriProcesses","parameters":[{"name":"strToken","in":"path","description":"The login token","required":true,"schema":{"type":"string"}},{"name":"strMemoriID","in":"path","description":"The ID of the Memori object","required":true,"schema":{"type":"string"}},{"name":"strType","in":"path","description":"Optional filter for Process type","schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessStatusSpecsListProcessesResponse"}}}}}}}},"components":{"schemas":{"ProcessStatusSpecsListProcessesResponse":{"type":"object","properties":{"processes":{"type":"array","items":{"$ref":"#/components/schemas/ProcessStatusSpecs"},"description":"List of recent Process objects and their status.\r\nMay be empty.","nullable":true},"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 reponse.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous reponse.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is indicative of the actual\r\nerror.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of a List Processes request."},"ProcessStatusSpecs":{"type":"object","properties":{"processID":{"type":"string","description":"Process ID.","nullable":true},"memoriID":{"type":"string","description":"ID of the Memori object this Process refers to.","nullable":true},"processUserName":{"type":"string","description":"Name of the user that started the Process.","nullable":true},"processType":{"type":"string","description":"Process type. <br> Can be one of the following:<ul> <li><code>Import</code>: for file import processes</li> <li><code>Analysis</code>: for Deep Thought user/query analysis processes</li> </ul>","nullable":true},"status":{"type":"string","description":"Current status of the Process (starting, running etc.). <br> May be one of the following:<ul> <li><code>Starting</code>: the Process is preparing to start, but has not started yet. Will advance to <code>Running</code> automatically.</li> <li><code>Running</code>: the Process has been started and is actively processing elements.</li> <li><code>Stopped</code>: the Process has been stopped manually, not all elements may have been processed.</li> <li><code>Completed</code>: the Process finished successfully, all the elements have been processed.</li> <li><code>Failed</code>: the Process terminated due to an unexpected error, not all elements may have been processed.</li> </ul>","nullable":true},"error":{"type":"string","description":"If the Status is ```Failed```, reports the error that\r\ncaused the Process to fail.\r\nNull otherwise.","nullable":true},"totalElements":{"type":"integer","description":"Total elements this Process is processing.","format":"int32"},"processedElements":{"type":"integer","description":"Number of elements this Process has processed so far.","format":"int32"},"progress":{"type":"number","description":"Progress of the Process as a fraction of 1.","format":"float"},"processSpecsJSON":{"type":"string","description":"Original parameters of the Process request, as a JSON structure,\r\nexcluding the elements (e.g. document rows for an Import process).","nullable":true},"begin":{"type":"string","description":"Timestamp of start of the Process.\r\nNull until the Process is in ```Starting``` status.","format":"date-time","nullable":true},"end":{"type":"string","description":"Timestamp of end of the Process.\r\nNull until the Process is in ```Starting``` or\r\n```Running``` status.","format":"date-time","nullable":true},"eta":{"type":"number","description":"Estimated time required to complete the Process,\r\nin seconds.","format":"float","nullable":true},"creationTimestamp":{"type":"string","description":"Timestamp of creation. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true},"lastChangeTimestamp":{"type":"string","description":"Timestamp of latest change. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Specifications of a Process Status object."}}}}
````

## GET /api/v2/ProcessStatus/{strToken}/{strProcessID}

> Gets the status of an Process object.

````json
{"openapi":"3.0.1","info":{"title":"Memori.ai Web API V2","version":"v2"},"paths":{"/api/v2/ProcessStatus/{strToken}/{strProcessID}":{"get":{"tags":["Process"],"summary":"Gets the status of an Process object.","operationId":"Process-GetProcessStatus","parameters":[{"name":"strToken","in":"path","description":"The login token","required":true,"schema":{"type":"string"}},{"name":"strProcessID","in":"path","description":"The Process object ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessStatusSpecsProcessStatusResponse"}}}}}}}},"components":{"schemas":{"ProcessStatusSpecsProcessStatusResponse":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/ProcessStatusSpecs"},"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 reponse.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous reponse.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is indicative of the actual\r\nerror.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of an Import, Analysis or Get Process Status requests."},"ProcessStatusSpecs":{"type":"object","properties":{"processID":{"type":"string","description":"Process ID.","nullable":true},"memoriID":{"type":"string","description":"ID of the Memori object this Process refers to.","nullable":true},"processUserName":{"type":"string","description":"Name of the user that started the Process.","nullable":true},"processType":{"type":"string","description":"Process type. <br> Can be one of the following:<ul> <li><code>Import</code>: for file import processes</li> <li><code>Analysis</code>: for Deep Thought user/query analysis processes</li> </ul>","nullable":true},"status":{"type":"string","description":"Current status of the Process (starting, running etc.). <br> May be one of the following:<ul> <li><code>Starting</code>: the Process is preparing to start, but has not started yet. Will advance to <code>Running</code> automatically.</li> <li><code>Running</code>: the Process has been started and is actively processing elements.</li> <li><code>Stopped</code>: the Process has been stopped manually, not all elements may have been processed.</li> <li><code>Completed</code>: the Process finished successfully, all the elements have been processed.</li> <li><code>Failed</code>: the Process terminated due to an unexpected error, not all elements may have been processed.</li> </ul>","nullable":true},"error":{"type":"string","description":"If the Status is ```Failed```, reports the error that\r\ncaused the Process to fail.\r\nNull otherwise.","nullable":true},"totalElements":{"type":"integer","description":"Total elements this Process is processing.","format":"int32"},"processedElements":{"type":"integer","description":"Number of elements this Process has processed so far.","format":"int32"},"progress":{"type":"number","description":"Progress of the Process as a fraction of 1.","format":"float"},"processSpecsJSON":{"type":"string","description":"Original parameters of the Process request, as a JSON structure,\r\nexcluding the elements (e.g. document rows for an Import process).","nullable":true},"begin":{"type":"string","description":"Timestamp of start of the Process.\r\nNull until the Process is in ```Starting``` status.","format":"date-time","nullable":true},"end":{"type":"string","description":"Timestamp of end of the Process.\r\nNull until the Process is in ```Starting``` or\r\n```Running``` status.","format":"date-time","nullable":true},"eta":{"type":"number","description":"Estimated time required to complete the Process,\r\nin seconds.","format":"float","nullable":true},"creationTimestamp":{"type":"string","description":"Timestamp of creation. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true},"lastChangeTimestamp":{"type":"string","description":"Timestamp of latest change. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Specifications of a Process Status object."}}}}
````

## POST /api/v2/StopProcess/{strToken}/{strProcessID}

> Interrupts an ongoing Process object.

````json
{"openapi":"3.0.1","info":{"title":"Memori.ai Web API V2","version":"v2"},"paths":{"/api/v2/StopProcess/{strToken}/{strProcessID}":{"post":{"tags":["Process"],"summary":"Interrupts an ongoing Process object.","operationId":"Process-StopProcess","parameters":[{"name":"strToken","in":"path","description":"The login token","required":true,"schema":{"type":"string"}},{"name":"strProcessID","in":"path","description":"The Process object ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessStatusSpecsProcessStatusResponse"}}}}}}}},"components":{"schemas":{"ProcessStatusSpecsProcessStatusResponse":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/ProcessStatusSpecs"},"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 reponse.","format":"int64"},"requestDateTime":{"type":"string","description":"Timestamp of the request.\r\nUse this timestamp, together with the RequestID property,\r\nto report an anomalous reponse.","format":"date-time"},"resultCode":{"type":"integer","description":"Result code. A code of ```0``` means no errors.\r\nWhen the request fails, its value is indicative of the actual\r\nerror.","format":"int32"},"resultMessage":{"type":"string","description":"Result message. A message of ```Ok``` means no errors.","nullable":true}},"additionalProperties":false,"description":"Response of an Import, Analysis or Get Process Status requests."},"ProcessStatusSpecs":{"type":"object","properties":{"processID":{"type":"string","description":"Process ID.","nullable":true},"memoriID":{"type":"string","description":"ID of the Memori object this Process refers to.","nullable":true},"processUserName":{"type":"string","description":"Name of the user that started the Process.","nullable":true},"processType":{"type":"string","description":"Process type. <br> Can be one of the following:<ul> <li><code>Import</code>: for file import processes</li> <li><code>Analysis</code>: for Deep Thought user/query analysis processes</li> </ul>","nullable":true},"status":{"type":"string","description":"Current status of the Process (starting, running etc.). <br> May be one of the following:<ul> <li><code>Starting</code>: the Process is preparing to start, but has not started yet. Will advance to <code>Running</code> automatically.</li> <li><code>Running</code>: the Process has been started and is actively processing elements.</li> <li><code>Stopped</code>: the Process has been stopped manually, not all elements may have been processed.</li> <li><code>Completed</code>: the Process finished successfully, all the elements have been processed.</li> <li><code>Failed</code>: the Process terminated due to an unexpected error, not all elements may have been processed.</li> </ul>","nullable":true},"error":{"type":"string","description":"If the Status is ```Failed```, reports the error that\r\ncaused the Process to fail.\r\nNull otherwise.","nullable":true},"totalElements":{"type":"integer","description":"Total elements this Process is processing.","format":"int32"},"processedElements":{"type":"integer","description":"Number of elements this Process has processed so far.","format":"int32"},"progress":{"type":"number","description":"Progress of the Process as a fraction of 1.","format":"float"},"processSpecsJSON":{"type":"string","description":"Original parameters of the Process request, as a JSON structure,\r\nexcluding the elements (e.g. document rows for an Import process).","nullable":true},"begin":{"type":"string","description":"Timestamp of start of the Process.\r\nNull until the Process is in ```Starting``` status.","format":"date-time","nullable":true},"end":{"type":"string","description":"Timestamp of end of the Process.\r\nNull until the Process is in ```Starting``` or\r\n```Running``` status.","format":"date-time","nullable":true},"eta":{"type":"number","description":"Estimated time required to complete the Process,\r\nin seconds.","format":"float","nullable":true},"creationTimestamp":{"type":"string","description":"Timestamp of creation. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true},"lastChangeTimestamp":{"type":"string","description":"Timestamp of latest change. Returned during Get operations.\r\nIgnored in other cases.","format":"date-time","nullable":true}},"additionalProperties":false,"description":"Specifications of a Process Status object."}}}}
````
