code: func (api *API) ListRateLimits(zoneID string, pageOpts PaginationOptions) ([]RateLimit, ResultInfo, error) {
  	v := url.Values{}
  	if pageOpts.PerPage > 0 {
  		v.Set("per_page", strconv.Itoa(pageOpts.PerPage))
  	}
  	if pageOpts.Page > 0 {
  		v.Set("page", strconv.Itoa(pageOpts.Page))
  	}
  
  	uri := "/zones/" + zoneID + "/rate_limits"
  	if len(v) > 0 {
  		uri = uri + "?" + v.Encode()
  	}
  
  	res, err := api.makeRequest("GET", uri, nil)
  	if err != nil {
  		return []RateLimit{}, ResultInfo{}, errors.Wrap(err, errMakeRequestError)
  	}
  
  	var r rateLimitListResponse
  	err = json.Unmarshal(res, &r)
  	if err != nil {
  		return []RateLimit{}, ResultInfo{}, errors.Wrap(err, errUnmarshalError)
  	}
  	return r.Result, r.ResultInfo, nil
  }
docs: // ListRateLimits returns Rate Limits for a zone, paginated according to the provided options
  //
  // API reference: https://api.cloudflare.com/#rate-limits-for-a-zone-list-rate-limits