code: func (s *IssueService) GetWatchers(issueID string) (*[]User, *Response, error) {
  	watchesAPIEndpoint := fmt.Sprintf("rest/api/2/issue/%s/watchers", issueID)
  
  	req, err := s.client.NewRequest("GET", watchesAPIEndpoint, nil)
  	if err != nil {
  		return nil, nil, err
  	}
  
  	watches := new(Watches)
  	resp, err := s.client.Do(req, watches)
  	if err != nil {
  		return nil, nil, NewJiraError(resp, err)
  	}
  
  	result := []User{}
  	user := new(User)
  	for _, watcher := range watches.Watchers {
  		user, resp, err = s.client.User.Get(watcher.Name)
  		if err != nil {
  			return nil, resp, NewJiraError(resp, err)
  		}
  		result = append(result, *user)
  	}
  
  	return &result, resp, nil
  }
docs: // GetWatchers wil return all the users watching/observing the given issue
  //
  // JIRA API docs: https://docs.atlassian.com/software/jira/docs/api/REST/latest/#api/2/issue-getIssueWatchers