Soenneker.Validators.Yahoo.Exists
4.0.2677
Prefix Reserved
See the version list below for details.
dotnet add package Soenneker.Validators.Yahoo.Exists --version 4.0.2677
NuGet\Install-Package Soenneker.Validators.Yahoo.Exists -Version 4.0.2677
<PackageReference Include="Soenneker.Validators.Yahoo.Exists" Version="4.0.2677" />
<PackageVersion Include="Soenneker.Validators.Yahoo.Exists" Version="4.0.2677" />
<PackageReference Include="Soenneker.Validators.Yahoo.Exists" />
paket add Soenneker.Validators.Yahoo.Exists --version 4.0.2677
#r "nuget: Soenneker.Validators.Yahoo.Exists, 4.0.2677"
#:package Soenneker.Validators.Yahoo.Exists@4.0.2677
#addin nuget:?package=Soenneker.Validators.Yahoo.Exists&version=4.0.2677
#tool nuget:?package=Soenneker.Validators.Yahoo.Exists&version=4.0.2677
Soenneker.Validators.Yahoo.Exists
Applies an undocumented Yahoo signup-response heuristic to a supplied address's local part.
Install
dotnet add package Soenneker.Validators.Yahoo.Exists
Registration
using Soenneker.Validators.Yahoo.Exists.Registrars;
using Microsoft.Extensions.DependencyInjection;
services.AddYahooExistsValidatorAsSingleton();
Scoped registration is also available. Both registrations reuse singleton HTTP-client-cache and rate-limiter-factory services. Disposing a scoped validator leaves the shared named HTTP client alive.
Configure request spacing
{
"YahooExistsValidator": {
"IntervalMs": 4000
}
}
The default interval is 4,000 milliseconds. EmailExists executes through a shared named rate limiter using this spacing.
Check an identifier
using Soenneker.Validators.Yahoo.Exists.Abstract;
bool? result = await validator.EmailExists(
"person@yahoo.com",
cancellationToken);
The validator loads Yahoo's signup page, extracts session cookies and hidden state, then submits the text before the first @ as a proposed Yahoo user ID. It returns:
truewhen Yahoo reportsIDENTIFIER_NOT_AVAILABLEorIDENTIFIER_EXISTSforuserId;falsewhen the parsed response does not contain either marker;nullwhen the required signup cookies or session index cannot be extracted.
HTTP failures, non-success status codes, response-deserialization failures, and cancellation propagate. EmailExistsWithoutLimit skips only the local rate limiter; it does not bypass Yahoo's limits.
The method does not validate email syntax or require a Yahoo domain. person@gmail.com and person@yahoo.com both query the Yahoo identifier person, while input without @ is submitted in full. Validate and normalize input before calling if that distinction matters.
Reliability and privacy
This uses an undocumented signup endpoint and page structure. Yahoo can change the cookies, HTML, API response, or blocking behavior without notice, producing errors or incorrect results. It is not proof that a mailbox is reachable or owned by a user; send a verification message for ownership.
The queried local part is disclosed to Yahoo. Full addresses are no longer included in this validator's logs, but request content may still appear in upstream HTTP infrastructure or Yahoo's logs. Ensure the check is compatible with privacy requirements and provider terms.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Soenneker.Extensions.Configuration (>= 4.0.868)
- Soenneker.Extensions.HttpClient (>= 4.0.3982)
- Soenneker.Utils.HttpClientCache (>= 4.0.2044)
- Soenneker.Utils.RateLimiting.Factory (>= 4.0.1152)
- Soenneker.Validators.Validator (>= 4.0.736)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.2702 | 0 | 9/4/2026 |
| 4.0.2701 | 0 | 9/3/2026 |
| 4.0.2700 | 0 | 9/3/2026 |
| 4.0.2699 | 71 | 9/1/2026 |
| 4.0.2698 | 68 | 9/1/2026 |
| 4.0.2697 | 61 | 9/1/2026 |
| 4.0.2696 | 66 | 9/1/2026 |
| 4.0.2695 | 67 | 9/1/2026 |
| 4.0.2694 | 70 | 9/1/2026 |
| 4.0.2693 | 65 | 9/1/2026 |
| 4.0.2692 | 77 | 8/31/2026 |
| 4.0.2690 | 72 | 8/31/2026 |
| 4.0.2689 | 85 | 8/31/2026 |
| 4.0.2688 | 74 | 8/31/2026 |
| 4.0.2686 | 70 | 8/31/2026 |
| 4.0.2685 | 73 | 8/31/2026 |
| 4.0.2684 | 69 | 8/31/2026 |
| 4.0.2683 | 79 | 8/31/2026 |
| 4.0.2681 | 77 | 8/31/2026 |
| 4.0.2677 | 75 | 8/30/2026 |
Fix Yahoo validator HTTP resource ownership