docs: def addList(self, source_id, dir_path, is_recurcive=False, timestamp_reception=None, training_metadata=[]):
          """Add all profile from a given directory."""
          if not path.isdir(dir_path):
              raise ValueError(dir_path + ' is not a directory')
          files_to_send = _get_files_from_dir(dir_path, is_recurcive)
          succeed_upload = {}
          failed_upload = {}
          for file_path in files_to_send:
              try:
                  resp = self.add(source_id=source_id,
                      file_path=file_path, profile_reference="",
                      timestamp_reception=timestamp_reception, training_metadata=training_metadata)
                  if resp['code'] != 200 and resp['code'] != 201:
                      failed_upload[file_path] = ValueError('Invalid response: ' + str(resp))
                  else:
                      succeed_upload[file_path] = resp
              except BaseException as e:
                  failed_upload[file_path] = e
          result = {
              'success': succeed_upload,
              'fail': failed_upload
          }
          return result