code: func (cm *CheckManager) getBroker() (*api.Broker, error) {
  	if cm.brokerID != 0 {
  		cid := fmt.Sprintf("/broker/%d", cm.brokerID)
  		broker, err := cm.apih.FetchBroker(api.CIDType(&cid))
  		if err != nil {
  			return nil, err
  		}
  		if !cm.isValidBroker(broker) {
  			return nil, fmt.Errorf(
  				"[ERROR] designated broker %d [%s] is invalid (not active, does not support required check type, or connectivity issue)",
  				cm.brokerID,
  				broker.Name)
  		}
  		return broker, nil
  	}
  	broker, err := cm.selectBroker()
  	if err != nil {
  		return nil, fmt.Errorf("[ERROR] Unable to fetch suitable broker %s", err)
  	}
  	return broker, nil
  }
docs: // Get Broker to use when creating a check