{"record":{"id":"0a7b89d60d04b3cd","repo":"sundowndev/phoneinfoga","slug":"country-code-d-is-not-supported","errorCode":null,"errorMessage":"country code %d is not supported","messagePattern":"country code (.+?) is not supported","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"info","filePath":"lib/remote/ovh_scanner.go","lineNumber":37,"sourceCode":"\tCity        string `json:\"city,omitempty\" console:\"City,omitempty\"`\n\tZipCode     string `json:\"zip_code,omitempty\" console:\"Zip code,omitempty\"`\n}\n\nfunc NewOVHScanner(s suppliers.OVHSupplierInterface) Scanner {\n\treturn &ovhScanner{client: s}\n}\n\nfunc (s *ovhScanner) Name() string {\n\treturn OVH\n}\n\nfunc (s *ovhScanner) Description() string {\n\treturn \"Search a phone number through the OVH Telecom REST API.\"\n}\n\nfunc (s *ovhScanner) DryRun(n number.Number, _ ScannerOptions) error {\n\tif !s.isSupported(n.CountryCode) {\n\t\treturn fmt.Errorf(\"country code %d is not supported\", n.CountryCode)\n\t}\n\treturn nil\n}\n\nfunc (s *ovhScanner) Run(n number.Number, _ ScannerOptions) (interface{}, error) {\n\tres, err := s.client.Search(n)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tdata := OVHScannerResponse{\n\t\tFound:       res.Found,\n\t\tNumberRange: res.NumberRange,\n\t\tCity:        res.City,\n\t\tZipCode:     res.ZipCode,\n\t}\n\n\treturn data, nil","sourceCodeStart":19,"sourceCodeEnd":55,"githubUrl":"https://github.com/sundowndev/phoneinfoga/blob/55807b05b753dab7bc6fe67403ca385668dda179/lib/remote/ovh_scanner.go#L19-L55","documentation":"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.","triggerScenarios":"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.","commonSituations":"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.","solutions":["Use other scanners (numverify, googlecse) for unsupported countries — the ovh scanner simply will not run","Confirm the number parses to the expected country code (check debug logs for parsed country)","Do not treat this as a failure of the overall scan; it is a per-scanner skip condition"],"exampleFix":"// before\nscan --number +14155552671 --scanners ovh   // country code 1 not supported\n// after\nscan --number +33612345678 --scanners ovh   // OVH-supported country code 33","handlingStrategy":"fallback","validationCode":"if !number.IsValid(raw) || !ovhSupported(number.NewNumber(raw).CountryCode) {\n    return useAlternativeScanner(raw)\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Provide per-country scanner routing in automation","Fallback to numverify or googlecse when ovh skips a country","Document supported OVH countries for your team"],"tags":["ovh","country-code","unsupported","precheck"],"backgroundTag":"unsupported-country-code","analyzedSha":"55807b05b753dab7bc6fe67403ca385668dda179","analyzedAt":"2026-09-03T13:37:27.908Z","contentChangedAt":"2026-09-03T13:37:27.908Z","schemaVersion":2},"datasetVersion":"2026-09-10T17:17:09.494Z"}