![]() |
VOOZH | about |
dotnet add package RingCentral.Net --version 6.5.0
NuGet\Install-Package RingCentral.Net -Version 6.5.0
<PackageReference Include="RingCentral.Net" Version="6.5.0" />
<PackageVersion Include="RingCentral.Net" Version="6.5.0" />Directory.Packages.props
<PackageReference Include="RingCentral.Net" />Project file
paket add RingCentral.Net --version 6.5.0
#r "nuget: RingCentral.Net, 6.5.0"
#:package RingCentral.Net@6.5.0
#addin nuget:?package=RingCentral.Net&version=6.5.0Install as a Cake Addin
#tool nuget:?package=RingCentral.Net&version=6.5.0Install as a Cake Tool
👁 Build Status
👁 Code Document
If you are having difficulty using this SDK, or working with the RingCentral API, please visit our developer community forums for help and to get quick answers to your questions. If you wish to contact the RingCentral Developer Support team directly, please submit a help ticket from our developer website.
Packages are available on NuGet. You can install them just like you install any other NuGet packages.
This package is compatible with .NET Standard 2.0, which means, it is compatible with all modern .NET platforms including .NET Core, .NET Framework, and Mono.
Since version 5.0.0, this project has been changed to an extension-based architecture.
You need to install extensions if you need extra features:
RestException.You can find .
There is also lots of useful code for your reference in our .
The SDK takes advantage of System .Diagnostics.Trace](https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.trace?view=net-6.0) to provide logs.
To enable logging, you need to either add #define TRACE to your source or
specify the option /d:TRACE when compiling.
To specify an output channel, you need to specify a listener:
Trace.Listeners.Add(new TextWriterTraceListener(Console.Out));
Code about will print logs to the console. For more detail please refer to Trace.Listeners Property.
using statementPlease note that if you use the using statement to initialize a RestClient:
using (var rc = new RestClient("clientID", "clientSecret", "serverURL"))
{
await rc.Authorize("username", "extension", "password");
...
}
rc.Dispose() will be automatically invoked after the code block above and the
token will be revoked.
If you want to retain the token, do NOT use using and do not rc.Revoke().
Some for binary content downloading may not work.
Because RingCentral is gradually migrating binary content to CDN such as
media.ringcentral.com.
For example, to download the attachment of a fax:
// `message` is the fax message object
var content = await rc.Get<byte[]>(message.attachments[0].uri);
The following does NOT work:
// `message` is the fax message object
var content = await rc.Restapi().Account().Extension().MessageStore(message.id).Content(message.attachments[0].id).Get();
But not all binary content has been migrated to CDN. If the resource to download provides you with a CDN URI, use that CDN URI. If there is no CDN URI provided, construct the URI as the shows.
By default, the SDK doesn't return headers:
var extInfo = await rc.Restapi().Account("~").Extension("~").Get();
If you need headers:
var httpResponseMessage = await rc.Get(rc.Restapi().Account("~").Extension("~").Path(true));
var headers = httpResponseMessage.Headers;
var responseBodyStr = await httpResponseMessage.Content.ReadAsStringAsync();
var extInfo = JsonConvert.DeserializeObject<GetExtensionInfoResponse>(responseBodyStr);
Please refer to:
What are the difference between the two test files? Both work, it's just personal preferences to choose which one to use.
BatchGetTest.cs handles "Multipart/Mixed" response data for you.
BatchApiTest.cs shows you how to handle
"application/vnd.ringcentral.multipart+json".
We have renamed all "glip" to "team-messaging". For example:
rc.Restapi().Glip().Chats().List();
Becomes:
rc.TeamMessaging().Chats().List();
Update the version number in RingCentral.Net/RestClient.cs.
Update version number in <ProjectName>/<ProjectName>.csproj
cd <ProjectName>
dotnet pack
I tried to migrate from Newtonsoft.Json to System.Text.Json, but it's not easy. Especially System.Text.Json doesn't automatically convert string to number. It doesn't even automatically convert double to int64. Considering the complexity and benefits of the migration, I decided to keep using Newtonsoft.Json for now. Ref: https://learn.microsoft.com/en-us/dotnet/standard/serialization/system-text-json/migrate-from-newtonsoft
Install the following globally if you haven't done so:
dotnet tool install -g dotnet-reportgenerator-globaltool
dotnet test -settings RingCentral.Tests/coverlet.runsettings.xml
The result is located in RingCentral.Tests/TestResults/
~/.dotnet/tools/reportgenerator -reports:"RingCentral.Tests/TestResults/239bdb87–151b-42ac-acec-1f604f8c02c5/coverage.cobertura.xml" -targetdir:RingCentral.Tests/CoverageReport -reporttypes:Html
Open RingCentral.Tests/CoverageReport/index.html in a browser.
dotnet format RingCentral.Net.sln
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 netcoreapp2.0 was computed. netcoreapp2.1 netcoreapp2.1 was computed. netcoreapp2.2 netcoreapp2.2 was computed. netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 netstandard2.0 is compatible. netstandard2.1 netstandard2.1 was computed. |
| .NET Framework | net461 net461 was computed. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 was computed. net481 net481 was computed. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen40 tizen40 was computed. tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 5 NuGet packages that depend on RingCentral.Net:
| Package | Downloads |
|---|---|
|
LagoVista.UserAdmin
User, Organization and Location Management Models and API for LagoVista IoT, Devices and Home Automation Framework |
|
|
RingCentral.Net.AuthorizeUri
Authorize URI extension for RingCentral.Net |
|
|
RingCentral.Net.Retry
Retry extension for RingCentral.Net |
|
|
RingCentral.Net.PubnubPCL
PubNub extension for RingCentral.NET |
|
|
RingCentral.Net.AutoRefresh
Auto Refresh extension for RingCentral.Net |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 6.5.0 | 8,261 | 4/3/2026 |
| 6.4.2 | 181,011 | 9/23/2025 |
| 6.4.1 | 48,074 | 7/21/2025 |
| 6.4.0 | 37,155 | 5/23/2025 |
| 6.3.1 | 77,351 | 3/11/2025 |
| 6.3.0 | 49,948 | 1/17/2025 |
| 6.2.6 | 56,680 | 11/12/2024 |
| 6.2.5 | 8,070 | 11/6/2024 |
| 6.2.4 | 14,199 | 10/10/2024 |
| 6.2.3 | 7,530 | 10/9/2024 |
| 6.2.2 | 10,930 | 9/18/2024 |
| 6.2.1 | 13,816 | 8/28/2024 |
| 6.2.0 | 23,755 | 7/1/2024 |
| 6.1.6 | 19,401 | 6/17/2024 |
| 6.1.5 | 26,456 | 4/22/2024 |
| 6.1.4 | 14,441 | 4/2/2024 |
| 6.1.3 | 35,341 | 3/5/2024 |
| 6.1.2 | 9,674 | 2/12/2024 |
| 6.1.1 | 38,635 | 1/3/2024 |
| 6.1.0 | 15,463 | 12/10/2023 |