text: Title: server.jobs.get_by_id failing inconsistently with 401002: Unauthorized Access error
  Body: Hello,
  
  I am writing a python script to trigger and monitor extract refreshes for a given set of datasource IDs.
  
  First, I trigger the refresh using `server.datasources.refresh(datasource)` for all the given datasource IDs using multi threading.
  Then, I monitor the progress of these refreshes and print out a message accordingly.
  Do note that my Tableau server is configured to run only 2 extract refreshes at once, all others go into a pending state.
  
  But, what I'm seeing is that every once in a while, one of the threads will throw a 401002 error when checking the status of the refresh job. Here's my code snippet:
  
  ```
  def monitor_refresh_progress(self, job_id, datasource):
      # Get initial job status value, will be -1 if in progress
      with self.server.auth.sign_in(self.tableau_auth):
          job_status = self.server.jobs.get_by_id(job_id)
      # Keep polling until success or failure, added random to avoid multiple simultaneous hits
      while int(job_status.finish_code) not in [0,1]:
          time.sleep(randint(110,130))
          with self.server.auth.sign_in(self.tableau_auth):
              job_status = self.server.jobs.get_by_id(job_id)
      if int(job_status.finish_code) == 0:
          self.logger.info("Extract Refresh successfully completed for datasource: {}".format(datasource.name))
      else:
          slack.post_message(text=":: ERROR :: Tableau Extract Refresh failed for datasource {}.".format(datasource.name))
          self.logger.error("Extract Refresh failed for datasource: {}".format(datasource.name))
          raise Exception("Extract Refresh failed for datasource: {}".format(datasource.name))
  ```
  
  Right now, I have added a retry decorator for this monitor_refersh_progress() method but I'm not too sure about the efficacy since I'm using multi threading.
  
  Am I doing something wrong? Any help would be appreciated.
  
  Thanks