docs: def issue(self, id, fields=None, expand=None):
          """Get an issue Resource from the server.
  
          :param id: ID or key of the issue to get
          :type id: Union[Issue, str]
          :param fields: comma-separated string of issue fields to include in the results
          :type fields: Optional[str]
          :param expand: extra information to fetch inside each resource
          :type expand: Optional[str]
          :rtype: Issue
          """
          # this allows us to pass Issue objects to issue()
          if isinstance(id, Issue):
              return id
  
          issue = Issue(self._options, self._session)
  
          params = {}
          if fields is not None:
              params['fields'] = fields
          if expand is not None:
              params['expand'] = expand
          issue.find(id, params=params)
          return issue