code: func ValidateAndNormalizeRequest(c context.Context, oauthScope []string, durationSecs *int64, auditTags []string) error {
  	minDur := time.Duration(*durationSecs) * time.Second
  	// Test error cases
  	switch {
  	case len(oauthScope) <= 0:
  		return fmt.Errorf("oauth_scope is required")
  	case minDur < 0:
  		return fmt.Errorf("min_validity_duration must be positive")
  	case minDur > maxAllowedMinValidityDuration:
  		return fmt.Errorf("min_validity_duration must not exceed %d", maxAllowedMinValidityDuration/time.Second)
  	}
  	if err := ValidateTags(auditTags); err != nil {
  		return fmt.Errorf("bad audit_tags - %s", err)
  	}
  
  	// Perform normalization
  	if minDur == 0 {
  		*durationSecs = int64(DefaultMinValidityDuration.Seconds())
  	}
  	return nil
  }
docs: // ValidateAndNormalizeRequest validates and normalizes RPC requests.