MassiveDotNet.Rest
0.4.1
See the version list below for details.
dotnet add package MassiveDotNet.Rest --version 0.4.1
NuGet\Install-Package MassiveDotNet.Rest -Version 0.4.1
<PackageReference Include="MassiveDotNet.Rest" Version="0.4.1" />
<PackageVersion Include="MassiveDotNet.Rest" Version="0.4.1" />
<PackageReference Include="MassiveDotNet.Rest" />
paket add MassiveDotNet.Rest --version 0.4.1
#r "nuget: MassiveDotNet.Rest, 0.4.1"
#:package MassiveDotNet.Rest@0.4.1
#addin nuget:?package=MassiveDotNet.Rest&version=0.4.1
#tool nuget:?package=MassiveDotNet.Rest&version=0.4.1
MassiveDotNet.Rest
REST client for the Massive market data platform (formerly Polygon.io), for .NET 10.
dotnet add package MassiveDotNet.Rest
Quick start
using MassiveDotNet;
using MassiveDotNet.Rest;
using MassiveDotNet.Rest.Models;
// One client per application. It is thread-safe, owns a pooled HttpClient, and is meant to be
// long-lived: creating one per request exhausts sockets under load.
using MassiveRestClient client = new(Environment.GetEnvironmentVariable("MASSIVE_API_KEY")!);
await foreach (TickerSummary ticker in client.Reference.EnumerateTickersAsync(
market: MarketType.Stocks,
active: true,
limit: 100))
{
Console.WriteLine($"{ticker.Ticker,-8} {ticker.Name}");
}
Every snippet above is lifted from samples/MassiveDotNet.Quickstart, which the build compiles, so
a signature change breaks that project rather than silently rotting this page.
The shape of it
Endpoints hang off groups that mirror the platform's own taxonomy, and groups are readonly struct
over the shared transport, so navigating to one allocates nothing:
client.Stocks.ListAggregatesAsync(...)
client.Reference.ListTickersAsync(...)
Every paginated endpoint gets two methods, following the BCL's own
Directory.EnumerateFiles/GetFiles distinction:
ListXxxAsyncreturns one page and reports whether more exist.EnumerateXxxAsyncreturnsIAsyncEnumerable<T>and walks every page, one in flight at a time, retaining no memory proportional to the pages traversed.
Comparator parameters collapse to one filter-typed argument per field rather than six flat ones, so an unsupported comparator is a compile error instead of a silently dropped query string.
Why it is built this way
The whole REST surface is generated from Massive's own OpenAPI description, and the generated
code is committed — so the surface tracks the platform rather than drifting from it, and every
change to it arrives as a reviewable diff. Deprecated operations ship marked [Obsolete] with the
replacement named; unreleased ones ship marked [Experimental]. Nothing is silently omitted.
Native AOT clean, source-generated JSON only, and deliberately allocation-conscious: a 50,000-row page deserializes into one array rather than 50,000 objects.
Licensed MIT. Issues and source at github.com/jerbersoft/massivedotnet.
| 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
- MassiveDotNet (>= 0.4.1)
- NodaTime (>= 3.3.3)
- System.Threading.RateLimiting (>= 10.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on MassiveDotNet.Rest:
| Package | Downloads |
|---|---|
|
MassiveDotNet.Extensions.DependencyInjection
Dependency injection and IHttpClientFactory integration for the MassiveDotNet SDK, for ASP.NET Core, the Generic Host, and any app with a service collection. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.4.2-ci.64 | 68 | 9/26/2026 |
| 0.4.1 | 110 | 9/24/2026 |
| 0.4.1-ci.59 | 54 | 9/24/2026 |
| 0.4.0 | 98 | 9/24/2026 |
| 0.4.0-ci.58 | 57 | 9/24/2026 |
| 0.4.0-ci.55 | 60 | 9/24/2026 |
| 0.4.0-ci.54 | 57 | 9/23/2026 |
| 0.4.0-ci.53 | 58 | 9/23/2026 |
| 0.4.0-ci.52 | 62 | 9/23/2026 |
| 0.4.0-ci.51 | 70 | 9/23/2026 |
| 0.4.0-ci.49 | 62 | 9/22/2026 |
| 0.3.0 | 98 | 9/22/2026 |
| 0.3.0-ci.48 | 65 | 9/22/2026 |
| 0.3.0-ci.47 | 63 | 9/22/2026 |
| 0.3.0-ci.46 | 81 | 9/9/2026 |
| 0.3.0-ci.45 | 76 | 9/9/2026 |
| 0.2.0 | 110 | 9/9/2026 |
| 0.2.0-ci.44 | 76 | 9/9/2026 |
| 0.2.0-ci.42 | 72 | 9/9/2026 |
| 0.2.0-ci.41 | 72 | 9/9/2026 |