code: def _request_put(self, url, data, type):
      response = self.xnat_session.put(
          url,
          data=data,
          params={"overwrite": "true", "type": type},
          headers={"Content-Type": "application/octet-stream"},
          allow_redirects=True,
      )
      if response.status_code != 200:  # failed call
          logger.error(
              f" xnat put call error status_code= {response.status_code}  text ={response.text}"
          )
      else:
          logger.info(
              f" xnat dcm-seg / measurement json put completed {response.text}"
          )
      return response
  
imports: import io
  import logging
  import os
  import pathlib
  import shutil
  import time
  from typing import Any, Dict, List, Optional
  from urllib.parse import quote_plus
  from xml.etree import ElementTree
  import requests
  from requests.auth import HTTPBasicAuth
  from monailabel.datastore.utils.convert import nifti_to_dicom_seg
  from monailabel.interfaces.datastore import Datastore
  from monailabel.utils.others.generic import md5_digest
label_desc: Use image node_id 36 for calling the XNATDatastore obj's underlying member method code with example usage: obj._request_put(url, data, type) and returns: response