code: func (s *IssueService) Search(jql string, options *SearchOptions) ([]Issue, *Response, error) {
  	var u string
  	if options == nil {
  		u = fmt.Sprintf("rest/api/2/search?jql=%s", url.QueryEscape(jql))
  	} else {
  		u = fmt.Sprintf("rest/api/2/search?jql=%s&startAt=%d&maxResults=%d&expand=%s&fields=%s&validateQuery=%s", url.QueryEscape(jql),
  			options.StartAt, options.MaxResults, options.Expand, strings.Join(options.Fields, ","), options.ValidateQuery)
  	}
  
  	req, err := s.client.NewRequest("GET", u, nil)
  	if err != nil {
  		return []Issue{}, nil, err
  	}
  
  	v := new(searchResult)
  	resp, err := s.client.Do(req, v)
  	if err != nil {
  		err = NewJiraError(resp, err)
  	}
  	return v.Issues, resp, err
  }
docs: // Search will search for tickets according to the jql
  //
  // JIRA API docs: https://developer.atlassian.com/jiradev/jira-apis/jira-rest-apis/jira-rest-api-tutorials/jira-rest-api-example-query-issues