{"record":{"id":"3d384063d4c42fde","repo":"projectdiscovery/subfinder","slug":"v-3d3840","errorCode":null,"errorMessage":"%v","messagePattern":"%v","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/subscraping/sources/domainsproject/domainsproject.go","lineNumber":89,"sourceCode":"\n\t\tdefer func() {\n\t\t\tif err := resp.Body.Close(); err != nil {\n\t\t\t\tresults <- subscraping.Result{Source: s.Name(), Type: subscraping.Error, Error: err}\n\t\t\t\ts.errors++\n\t\t\t}\n\t\t}()\n\n\t\tvar response domainsProjectResponse\n\t\terr = jsoniter.NewDecoder(resp.Body).Decode(&response)\n\t\tif err != nil {\n\t\t\tresults <- subscraping.Result{Source: s.Name(), Type: subscraping.Error, Error: err}\n\t\t\ts.errors++\n\t\t\treturn\n\t\t}\n\n\t\tif response.Error != \"\" {\n\t\t\tresults <- subscraping.Result{\n\t\t\t\tSource: s.Name(), Type: subscraping.Error, Error: fmt.Errorf(\"%v\", response.Error),\n\t\t\t}\n\t\t\ts.errors++\n\t\t\treturn\n\t\t}\n\n\t\tfor _, subdomain := range response.Domains {\n\t\t\tif !strings.HasPrefix(subdomain, \".\") {\n\t\t\t\tselect {\n\t\t\t\tcase <-ctx.Done():\n\t\t\t\t\treturn\n\t\t\t\tcase results <- subscraping.Result{Source: s.Name(), Type: subscraping.Subdomain, Value: subdomain}:\n\t\t\t\t\ts.results++\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}()\n\n\treturn results","sourceCodeStart":71,"sourceCodeEnd":107,"githubUrl":"https://github.com/projectdiscovery/subfinder/blob/7a0b91f0fac01b62c65328bd771a3560ae611d6a/pkg/subscraping/sources/domainsproject/domainsproject.go#L71-L107","documentation":"API-level error from the domains.project passive source: the JSON response decoded successfully but contained a non-empty Error field, which is passed through verbatim as '%v'. It indicates the service reported a problem (e.g. invalid domain or upstream failure) even though the HTTP request itself completed.","triggerScenarios":"Thrown at pkg/subscraping/sources/domainsproject/domainsproject.go:89 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Read the passed-through error string from domains.project to identify the cause","Confirm the queried domain is well-formed and resolvable by the service","Retry later if the message suggests a transient upstream issue","Ignore this source for the affected domain and continue with other passive sources"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7a0b91f0fac01b62c65328bd771a3560ae611d6a","analyzedAt":"2026-09-06T23:52:02.109Z","contentChangedAt":"2026-09-06T23:52:02.109Z","schemaVersion":2},"datasetVersion":"2026-09-16T09:17:16.951Z"}