@@ -616,18 +616,19 @@ def upload_file(self, **kwargs):
616616 """upload a file to OpenCTI API
617617
618618 :param `**kwargs`: arguments for file upload (required: `file_name` and `data`)
619- :return: returns the query respons for the file upload
619+ :return: returns the query response for the file upload
620620 :rtype: dict
621621 """
622622
623623 file_name = kwargs .get ("file_name" , None )
624+ file_markings = kwargs .get ("file_markings" , None )
624625 data = kwargs .get ("data" , None )
625626 mime_type = kwargs .get ("mime_type" , "text/plain" )
626627 if file_name is not None :
627628 self .app_logger .info ("Uploading a file." )
628629 query = """
629- mutation UploadImport($file: Upload!) {
630- uploadImport(file: $file) {
630+ mutation UploadImport($file: Upload!, $fileMarkings: [String] ) {
631+ uploadImport(file: $file, fileMarkings: $fileMarkings ) {
631632 id
632633 name
633634 }
@@ -639,8 +640,11 @@ def upload_file(self, **kwargs):
639640 mime_type = "application/json"
640641 else :
641642 mime_type = magic .from_file (file_name , mime = True )
642-
643- return self .query (query , {"file" : (File (file_name , data , mime_type ))})
643+ query_vars = {"file" : (File (file_name , data , mime_type ))}
644+ # optional file markings
645+ if file_markings is not None :
646+ query_vars ["fileMarkings" ] = file_markings
647+ return self .query (query , query_vars )
644648 else :
645649 self .app_logger .error ("[upload] Missing parameter: file_name" )
646650 return None
0 commit comments