Rebex.Graph
8.0.9797
Prefix Reserved
dotnet add package Rebex.Graph --version 8.0.9797
NuGet\Install-Package Rebex.Graph -Version 8.0.9797
<PackageReference Include="Rebex.Graph" Version="8.0.9797" />
<PackageVersion Include="Rebex.Graph" Version="8.0.9797" />
<PackageReference Include="Rebex.Graph" />
paket add Rebex.Graph --version 8.0.9797
#r "nuget: Rebex.Graph, 8.0.9797"
#:package Rebex.Graph@8.0.9797
#addin nuget:?package=Rebex.Graph&version=8.0.9797
#tool nuget:?package=Rebex.Graph&version=8.0.9797
Rebex Graph - The C# Microsoft Graph library for .NET
Rebex Graph is a .NET client library for Microsoft Graph API (Exchange Online). It provides access to Exchange Online / Microsoft 365 mailboxes for sending, receiving, listing, and searching email messages and managing folders. For creating and manipulating email messages, use Rebex.Mail. For on-premises Exchange, use Rebex.Ews. For IMAP/POP3 access, use Rebex.Imap or Rebex.Pop3.
Actively developed and maintained with regular updates and new features.
Key features
- Message operations - list, download, upload, copy, move, delete messages; paged results
- Folder operations - list, create, rename, delete folders
- Searching - search by sender, subject, date, read status; combine criteria with AND, OR, NOT operators
- Sending e-mails - send messages directly through Microsoft 365
- OAuth 2.0 authentication - user-interactive and app-only (unattended) authentication with OAuth 2.0 access tokens
- Async/await API - Task-based asynchronous API support
- MIME and S/MIME - sign, encrypt, and verify messages using X.509 certificates (via Rebex.Mail)
- Cryptographic algorithms including PQC - ML-KEM, ML-DSA, Ed25519, ChaCha20/Poly1305, AES/GCM, ECDH, ECDSA, RSA, and more
- FIPS 140-3 compliant mode
Getting started
Connect, authenticate and search for unread messages
using (var client = new Rebex.Net.GraphClient())
{
// connect to Exchange Online (Microsoft 365) server
client.Connect();
// authenticate with your OAuth access token
client.Login(token);
// get list of unread messages from Inbox
var unread = GraphMessageSearchParameter.IsRead(false);
GraphMessageCollection messages = client.Search(GraphFolderId.Inbox, unread);
// print some info
foreach (GraphMessageInfo info in messages)
{
Console.WriteLine("From: {0}", info.From);
Console.WriteLine("Subject: {0}", info.Subject);
}
// disconnect (not required, but polite)
client.Disconnect();
}
Get message list
GraphMessageCollection messages = client.GetMessageList(GraphFolderId.Inbox);
foreach (GraphMessageInfo info in messages)
{
Console.WriteLine("From: {0}", info.From);
Console.WriteLine("Subject: {0}", info.Subject);
}
Download a message
MailMessage mail = client.GetMailMessage(messageId);
Console.WriteLine("From: {0}", mail.From);
Console.WriteLine("Subject: {0}", mail.Subject);
foreach (Attachment item in mail.Attachments)
{
Console.WriteLine(" * {0} <{1}>", item.DisplayName, item.ContentType);
}
Send a message
MailMessage mail = new MailMessage();
mail.To = "bob@example.org";
mail.Subject = "Sent using Rebex Graph";
mail.BodyText = "Hello World!";
client.SendMessage(mail);
Get message list with paging
int offset = 0;
int pageSize = 1000;
while (true)
{
GraphMessageCollection messages = client.GetMessageList(
GraphFolderId.Inbox,
new GraphPageView(offset, pageSize));
foreach (GraphMessageInfo m in messages)
{
Console.WriteLine("[{0}] ({1}) {2}", m.ReceivedDate, m.From, m.Subject);
}
if (messages.Count == 0)
break;
offset += messages.Count;
}
Supported platforms
- .NET 10 on Windows, Linux, macOS, Android, iOS/tvOS
- .NET 9 on Windows, Linux, macOS, Android, iOS/tvOS
- .NET 8 on Windows, Linux, macOS, Android, iOS/tvOS
- .NET 7 on Windows, Linux, macOS, Android, iOS/tvOS
- .NET 6 on Windows, Linux, macOS
- .NET 5 on Windows, Linux, macOS
- .NET Framework 4.0, 4.5.x, 4.6.x, 4.7.x, 4.8.x
- .NET Framework 3.5 SP1
- .NET Core 3.1 on Windows, Linux, macOS
- Xamarin.Android (10.1 and higher; via .NET Standard 2.1)
- Xamarin.iOS (13.10 and higher; via .NET Standard 2.1)
- Mono 6.0 or higher on Linux and macOS
Supported architectures: x86, x64, AMD64.
Licensing
This is a paid commercial product with a free 30-day trial.
- Trial mode: Start your free 30-day trial by generating your trial key
- Licensed mode: Buy Rebex Graph and get your full license key
When the full license key is provided, NuGet.org repository can be used to retrieve versions of Rebex components covered by your support contract.
Support
Talk to real people. No scripted or AI responses. Support is provided directly by the engineers who design and build the library.
Email us at support@rebex.net or visit rebex.net/support.
Documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 is compatible. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net35 is compatible. net40 is compatible. net403 was computed. net45 was computed. net451 was computed. net452 was computed. net46 is compatible. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETCoreApp 3.1
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
.NETFramework 3.5
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
.NETFramework 4.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
.NETFramework 4.6
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
.NETStandard 2.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
.NETStandard 2.1
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net10.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net5.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net6.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net7.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net8.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
-
net9.0
- Rebex.Common (= 8.0.9797)
- Rebex.Mail (= 8.0.9797)
- Rebex.Networking (= 8.0.9797)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Rebex.Graph:
| Package | Downloads |
|---|---|
|
Rebex.TotalPack
Rebex Total Pack is a metapackage that includes all Rebex libraries such as Rebex SFTP, Rebex FTP, Rebex SSH Shell, and more. See https://www.rebex.net/total-pack/ for a complete list. This is a paid commercial product with a free 30-day trial: - Trial mode: Start your free 30-day trial by generating your trial key at https://rebex.net/support/trial-key.aspx - Licensed mode: Purchase the product at https://rebex.net/shop/ and get your full license key at https://rebex.net/protected/nuget When the full license key is provided, NuGet.org repository can be used to retrieve versions of Rebex components covered by your support contract. Supported platforms: - .NET 10 on Windows, Linux, macOS, Android, iOS/tvOS - .NET 9 on Windows, Linux, macOS, Android, iOS/tvOS - .NET 8 on Windows, Linux, macOS, Android, iOS/tvOS - .NET 7 on Windows, Linux, macOS, Android, iOS/tvOS - .NET 6 on Windows, Linux, macOS - .NET 5 on Windows, Linux, macOS - .NET Framework 4.0, 4.5.x, 4.6.x, 4.7.x, 4.8.x - .NET Framework 3.5 SP1 - .NET Core 3.1 on Windows, Linux, macOS - Xamarin.Android (10.1 and higher; via .NET Standard 2.1) - Xamarin.iOS (13.10 and higher; via .NET Standard 2.1) - Mono 6.0 or higher on Linux and macOS |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 8.0.9797 | 2,383 | 10/28/2026 |
| 8.0.9709 | 7,400 | 8/3/2026 |
| 8.0.9673 | 1,432 | 6/25/2026 |
| 8.0.9663 | 197 | 6/24/2026 |
| 8.0.9643-rc.4 | 94 | 5/27/2026 |
| 8.0.9531-rc.3 | 133 | 2/4/2026 |
| 8.0.9440-rc.2 | 233 | 11/5/2025 |
| 8.0.9392-rc.1 | 303 | 9/19/2025 |
| 7.0.9796 | 130 | 10/28/2026 |
| 7.0.9649 | 207 | 6/23/2026 |
| 7.0.9561 | 3,902 | 3/6/2026 |
| 7.0.9448 | 3,472 | 11/12/2025 |
| 7.0.9391 | 2,259 | 9/17/2025 |
| 7.0.9313 | 2,440 | 6/30/2025 |
| 7.0.9209 | 2,950 | 3/20/2025 |
| 7.0.9147 | 2,774 | 1/16/2025 |
| 7.0.9119 | 2,005 | 12/19/2024 |
| 7.0.9083 | 2,161 | 11/13/2024 |
| 7.0.9048 | 2,194 | 10/10/2024 |
| 7.0.8943 | 2,481 | 6/25/2024 |