Soenneker.Validators.Gmail.Exists 4.0.1843

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Soenneker.Validators.Gmail.Exists --version 4.0.1843
                    
NuGet\Install-Package Soenneker.Validators.Gmail.Exists -Version 4.0.1843
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Validators.Gmail.Exists" Version="4.0.1843" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Validators.Gmail.Exists" Version="4.0.1843" />
                    
Directory.Packages.props
<PackageReference Include="Soenneker.Validators.Gmail.Exists" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Soenneker.Validators.Gmail.Exists --version 4.0.1843
                    
#r "nuget: Soenneker.Validators.Gmail.Exists, 4.0.1843"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Soenneker.Validators.Gmail.Exists@4.0.1843
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Soenneker.Validators.Gmail.Exists&version=4.0.1843
                    
Install as a Cake Addin
#tool nuget:?package=Soenneker.Validators.Gmail.Exists&version=4.0.1843
                    
Install as a Cake Tool

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

Soenneker.Validators.Gmail.Exists

Applies a Google Calendar response-header heuristic that may indicate whether a Gmail address has an account.

Install

dotnet add package Soenneker.Validators.Gmail.Exists

Registration

using Soenneker.Validators.Gmail.Exists.Registrars;
using Microsoft.Extensions.DependencyInjection;

services.AddGmailExistsValidatorAsSingleton();

Scoped registration is also available. Both registrations reuse singleton HTTP-client-cache and rate-limiter-factory services. Disposing a scoped validator does not evict or dispose the shared named HTTP client.

Configure request spacing

{
  "GmailExistsValidator": {
    "IntervalMs": 3000
  }
}

The default interval is 3,000 milliseconds. EmailExists routes calls through a shared named rate limiter using this interval.

Check an address

using Soenneker.Validators.Gmail.Exists.Abstract;

bool? result = await validator.EmailExists(
    "person@gmail.com",
    cancellationToken);

The address is escaped as one URL path component and sent to Google's public Calendar ICS endpoint. The response is considered a positive match only when an X-Frame-Options header value equals SAMEORIGIN, ignoring case.

Results are:

  • true: the response contained the expected header value;
  • false: the request completed but the response did not contain that value;
  • null: HttpClient raised HttpRequestException.

Cancellation propagates as OperationCanceledException. The method does not validate email syntax or require a Gmail domain before sending the request.

EmailExistsWithoutLimit performs the same request without the local rate limiter. It does not bypass Google's limits and should be reserved for callers that already coordinate request pacing.

Reliability and privacy

This is an undocumented response heuristic, not an account-verification API. Google can change the endpoint or headers at any time, and positive or negative results may be wrong. Do not use it as proof of mailbox ownership, as an authentication factor, or as the sole reason to accept or reject a user. Verification email remains the reliable ownership check.

The queried address is disclosed to Google in the request URL. It is no longer included in this validator's logs, but it may still appear in upstream HTTP infrastructure or Google's logs. Ensure that use is compatible with your privacy requirements and provider terms.

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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.1882 39 9/17/2026
4.0.1881 34 9/16/2026
4.0.1880 37 9/16/2026
4.0.1879 43 9/16/2026
4.0.1878 54 9/16/2026
4.0.1877 54 9/16/2026
4.0.1876 68 9/16/2026
4.0.1874 72 9/15/2026
4.0.1871 78 9/14/2026
4.0.1870 83 9/13/2026
4.0.1869 81 9/13/2026
4.0.1867 81 9/13/2026
4.0.1866 82 9/13/2026
4.0.1864 92 9/13/2026
4.0.1863 87 9/13/2026
4.0.1861 85 9/13/2026
4.0.1860 87 9/12/2026
4.0.1859 102 9/12/2026
4.0.1854 105 9/9/2026
4.0.1843 94 9/7/2026
Loading failed

Update dependency Soenneker.Extensions.Configuration to 4.0.878 (#2378)