diff --git a/cortex4py/controllers/analyzers.py b/cortex4py/controllers/analyzers.py index 1c1fb9a..0701d0a 100644 --- a/cortex4py/controllers/analyzers.py +++ b/cortex4py/controllers/analyzers.py @@ -68,11 +68,19 @@ def run_by_id(self, analyzer_id, observable, **kwargs) -> Job: post[key] = observable.get(key, None) if observable.get('dataType') == "file": - file_path = observable.get('data', None) - file_def = { - "data": (os.path.basename(file_path), open(file_path, 'rb'), - magic.Magic(mime=True).from_file(file_path)) - } + data = observable.get('data', None) + if observable.get('dataProvided') == True: + file_name = observable.get('parameters', {}).get('filename') + file_def = { + "data": (os.path.basename(file_name), data, + magic.Magic(mime=True).from_buffer(data)) + } + else: + file_path = data + file_def = { + "data": (os.path.basename(file_path), open(file_path, 'rb'), + magic.Magic(mime=True).from_file(file_path)) + } data = { '_json': json.dumps(post)