code: def _initialize_upload(self):
  
          
          init_data = {
              'name': self._file_name,
              'part_size': self._part_size,
              'size': self._file_size
          }
  
          if self._project:
              init_data['project'] = self._project
          elif self._parent:
              init_data['parent'] = self._parent
  
          init_params = {}
          if self._overwrite:
              init_params['overwrite'] = self._overwrite
  
          try:
              response = self._api.post(
                  self._URL['upload_init'], data=init_data, params=init_params
              )
              self._upload_id = response.json()['upload_id']
          except SbgError as e:
              self._status = TransferState.FAILED
              raise SbgError(
                  'Unable to initialize upload! Failed to get upload id! '
                  'Reason: {}'.format(e.message)
              )
docs: Initialized the upload on the API server by submitting the information
          about the project, the file name, file size and the part size that is
          going to be used during multipart upload.