docs: def _get(auth, path, fmt, autobox=True, params=None):
      '''
      Issue a GET request to the XNAT REST API and box the response content.
      
      Example:
          >>> import yaxil
          >>> from yaxil import Format
          >>> auth = yaxil.XnatAuth(url='...', username='...', password='...')
          >>> yaxil.get(auth, '/data/experiments', Format.JSON)
  
      :param auth: XNAT authentication
      :type auth: :mod:`yaxil.XnatAuth`
      :param path: API URL path
      :type path: str
      :param fmt: API result format
      :type fmt: :mod:`yaxil.Format`
      :param autobox: Autobox response content into an appropriate reader or other data structure
      :type autobox: bool
      :param params: Additional query parameters
      :type params: dict
      :returns: Tuple of (URL, :mod:`dict` | :mod:`xml.etree.ElementTree` | :mod:`csv.reader` | :mod:`str`)
      :rtype: tuple
      '''
      if not params:
          params = {}
      url = "%s/%s" % (auth.url.rstrip('/'), path.lstrip('/'))
      params["format"] = fmt
      logger.debug("issuing http request %s", url)
      logger.debug("query parameters %s", params)
      r = requests.get(url, params=params, auth=(auth.username, auth.password), verify=CHECK_CERTIFICATE)
      if r.status_code != requests.codes.ok:
          raise RestApiError("response not ok (%s) from %s" % (r.status_code, r.url))
      if not r.content:
          raise RestApiError("response is empty from %s" % r.url)
      if autobox:
          return r.url,_autobox(r.text, fmt)
      else:
          return r.url,r.content