MailKit 2.8.0

There is a newer version of this package available.
See the version list below for details.

Requires NuGet 2.12 or higher.

Install-Package MailKit -Version 2.8.0
dotnet add package MailKit --version 2.8.0
<PackageReference Include="MailKit" Version="2.8.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MailKit --version 2.8.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: MailKit, 2.8.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install MailKit as a Cake Addin
#addin nuget:?package=MailKit&version=2.8.0

// Install MailKit as a Cake Tool
#tool nuget:?package=MailKit&version=2.8.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

MailKit is an Open Source cross-platform .NET mail-client library that is based on MimeKit and optimized for mobile devices.

Features include:
* HTTP, Socks4, Socks4a and Socks5 proxy support.
* SASL Authentication via SCRAM-SHA-256, SCRAM-SHA-1, NTLM, DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN, and XOAUTH2.
* A fully-cancellable SmtpClient with support for STARTTLS, 8BITMIME, BINARYMIME, ENHANCEDSTATUSCODES, SIZE, DSN, PIPELINING and SMTPUTF8.
* A fully-cancellable Pop3Client with support for STLS, UIDL, APOP, PIPELINING, UTF8, and LANG.
* A fully-cancellable ImapClient with support for ACL, QUOTA, LITERAL+, IDLE, NAMESPACE, ID, CHILDREN, LOGINDISABLED, STARTTLS, MULTIAPPEND, UNSELECT, UIDPLUS, CONDSTORE, ESEARCH, SASL-IR, COMPRESS, WITHIN, ENABLE, QRESYNC, SORT, THREAD, ANNOTATE, LIST-EXTENDED, ESORT, METADATA / METADATA-SERVER, NOTIFY, FILTERS, LIST-STATUS, SORT=DISPLAY, SPECIAL-USE / CREATE-SPECIAL-USE, SEARCH=FUZZY, MOVE, UTF8=ACCEPT / UTF8=ONLY, LITERAL-, APPENDLIMIT, STATUS=SIZE, OBJECTID, REPLACE, XLIST, and X-GM-EXT1.
* Client-side sorting and threading of messages (the Ordinal Subject and the Jamie Zawinski threading algorithms are supported).
* Asynchronous versions of all methods that hit the network.
* S/MIME, OpenPGP, DKIM and ARC support via MimeKit.
* Microsoft TNEF support via MimeKit.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

NuGet packages (469)

Showing the top 5 NuGet packages that depend on MailKit:

Package Downloads
Serilog.Sinks.Email

The email sink for Serilog

NETCore.MailKit

MailKit extension for asp.net core. Easy send email in asp.net core project.

Abp.MailKit

Abp.MailKit

NLog.MailKit

NLog Mail Target for .NET Core & .NET Standard 2.0+ using MailKit. This package add the mail target to NLog and has the same options* as the original Mail Target. If the mail target was already available on your platform, this package will overwrite the original Mail Target. * Compared to the original MailTarget, the following options aren't implemented: - PickupDirectory - NTLM auth * MailKit gives more control of the sockets, so you get the `secureSocketOption` option for free!

OElite.Web

OElite Web API SDK for OElite Platform based application development

GitHub repositories (73)

Showing the top 5 popular GitHub repositories that depend on MailKit:

Repository Stars
aspnetboilerplate/aspnetboilerplate
ASP.NET Boilerplate - Web Application Framework
bitwarden/server
The core infrastructure backend (API, database, Docker, etc).
abpframework/abp
Open Source Web Application Framework for ASP.NET Core
duplicati/duplicati
Store securely encrypted backups in the cloud!
Sonarr/Sonarr
Smart PVR for newsgroup and bittorrent users.
Version Downloads Last updated
3.1.0 17,224 1/15/2022
3.0.0 172,803 12/11/2021
2.15.0 1,433,631 8/19/2021
2.14.0 333,885 7/28/2021
2.13.0 951,124 6/12/2021
2.12.0 556,536 5/12/2021
2.11.1 1,008,208 3/16/2021
2.11.0 60,740 3/12/2021
2.10.1 1,574,579 1/2/2021
2.10.0 1,121,421 11/21/2020
2.9.0 1,832,251 9/12/2020
2.8.0 1,762,546 7/11/2020
2.7.0 1,342,306 5/30/2020
2.6.0 2,850,131 4/4/2020
2.5.2 619,130 3/14/2020
2.5.1 738,735 2/15/2020
2.5.0 617,934 1/18/2020
2.4.1 1,308,228 11/10/2019
2.4.0.1 89,199 11/5/2019
2.4.0 14,370 11/3/2019
2.3.2 308,711 10/12/2019
2.3.1.6 752,759 9/9/2019
2.3.1 75,256 9/8/2019
2.3.0 507,194 8/24/2019
2.2.0 1,557,732 6/11/2019
2.1.5.1 609,806 5/13/2019
2.1.4 397,849 4/13/2019
2.1.3 808,188 2/24/2019
2.1.2 898,628 12/30/2018
2.1.1 157,137 12/17/2018
2.1.0.3 124,586 12/7/2018
2.0.7 543,728 10/28/2018
2.0.6 1,561,930 8/4/2018
2.0.5 329,464 7/7/2018
2.0.4 446,770 5/25/2018
2.0.3 397,644 4/15/2018
2.0.2 143,889 3/18/2018
2.0.1 1,111,127 1/6/2018
2.0.0 89,492 12/22/2017
1.22.0 365,433 11/24/2017
1.20.0 374,779 10/28/2017
1.18.1.1 532,567 9/4/2017
1.18.1 13,396 9/3/2017
1.18.0 158,688 8/7/2017
1.16.2 421,772 7/1/2017
1.16.1 405,325 5/5/2017
1.16.0 76,694 4/21/2017
1.14.2 40,586 4/12/2017
1.12.0 139,884 3/12/2017
1.10.2 134,830 1/28/2017
1.10.1 162,152 12/4/2016
1.10.0 417,323 10/31/2016

* Make sure to use the InvariantCulture when converting port values to a string. (issue #1040)
* Fixed other instances of string formatting for integer values to always use CultureInfo.InvariantCulture.
* Added a work-around for broken IMAP servers that allow NIL message flags. (issue #1042)

API Changes Since 2.0.x:

* Obsoleted SearchQuery.HasCustomFlags() and SearchQuery.DoesNotHaveCustomFlags(). These are now SearchQuery.HasKeywords() and SearchQuery.NotKeywords(), respectively.
* Obsoleted SearchQuery.DoesNotHaveFlags() in favor of SearchQuery.NotFlags().
* Obsoleted the IMessageSummary.UserFlags property in favor of IMessageSummary.Keywords.
* Obsoleted the MessageFlagsChangedEventArgs.UserFlags property in favor of MessageFlagsChangedEventArgs.Keywords.
* All IMailFolder.Fetch and IMailFolder.FetchAsync methods that took a HashSet<string> userFlags argument now take an IEnumerable<string> keywords argument. Note: this only affects you if your code used named method parameters (e.g. userFlags: myUserFlags).

Note to users upgrading from MailKit 1.x:

In order to authenticate using the XOAUTH2 SASL mechanism, you must now use the following approach:

client.Authenticate (new SaslMechanismOAuth2 (username, auth_token));