sundowndev/phoneinfoga · info

country code %d is not supported

Error message

country code %d is not supported

What it means

The OVH scanner only supports phone numbers whose country code matches the OVH Telecom endpoints it can query; DryRun calls s.isSupported(n.CountryCode) and returns fmt.Errorf("country code %d is not supported", ...) for anything else, so the scanner is skipped before making any network call.

Source

Thrown at lib/remote/ovh_scanner.go:37

	City        string `json:"city,omitempty" console:"City,omitempty"`
	ZipCode     string `json:"zip_code,omitempty" console:"Zip code,omitempty"`
}

func NewOVHScanner(s suppliers.OVHSupplierInterface) Scanner {
	return &ovhScanner{client: s}
}

func (s *ovhScanner) Name() string {
	return OVH
}

func (s *ovhScanner) Description() string {
	return "Search a phone number through the OVH Telecom REST API."
}

func (s *ovhScanner) DryRun(n number.Number, _ ScannerOptions) error {
	if !s.isSupported(n.CountryCode) {
		return fmt.Errorf("country code %d is not supported", n.CountryCode)
	}
	return nil
}

func (s *ovhScanner) Run(n number.Number, _ ScannerOptions) (interface{}, error) {
	res, err := s.client.Search(n)
	if err != nil {
		return nil, err
	}

	data := OVHScannerResponse{
		Found:       res.Found,
		NumberRange: res.NumberRange,
		City:        res.City,
		ZipCode:     res.ZipCode,
	}

	return data, nil

View on GitHub (pinned to 55807b05b7)

Solutions

  1. Use other scanners (numverify, googlecse) for unsupported countries — the ovh scanner simply will not run
  2. Confirm the number parses to the expected country code (check debug logs for parsed country)
  3. Do not treat this as a failure of the overall scan; it is a per-scanner skip condition

Example fix

// before
scan --number +14155552671 --scanners ovh   // country code 1 not supported
// after
scan --number +33612345678 --scanners ovh   // OVH-supported country code 33
Defensive patterns

Strategy: fallback

Validate before calling

if !number.IsValid(raw) || !ovhSupported(number.NewNumber(raw).CountryCode) {
    return useAlternativeScanner(raw)
}

Prevention

When it happens

Trigger: Scanning a number whose calling code (e.g. +1 US, +81 Japan) is not among the countries the ovh scanner supports; only OVH-serviced countries pass isSupported.

Common situations: Scanning a non-European/non-OVH phone number while the ovh scanner is enabled, or a number parsed with an unexpected country code due to bad input formatting.

Related errors


AI-assisted analysis of sundowndev/phoneinfoga@55807b05b7 (2026-09-03). Data as JSON: /api/errors/0a7b89d60d04b3cd. Report an issue: GitHub.