Repository navigation
Home
A .NET client for the Emma (Marigold) API.
Targets netstandard2.0, net8.0, net10.0 — so .NET Framework 4.6.2+ works too.
Dependencies two on the modern targets, both Microsoft.Extensions.*.
dotnet add package EmmaSharper| Page | For |
|---|---|
| Getting Started | Install, register with DI, make a first call |
| Enterprise and Multiple Accounts | One credential pair addressing many subaccounts |
| Paging | Emma's ranges are inclusive, and that trips people up |
| Rate Limiting and Resilience | Emma throttles with 403, not just 429 |
| Error Handling | Typed exceptions instead of string-matching |
| Recipes | Whole tasks, taken from a production sync |
| API Reference | Every public type and member, generated from the assembly |
| Emma API Notes | Behaviour of the API itself that the docs don't mention |
| Samples | The same patterns as a runnable console app |
Upgrading from 7.x? See the migration table in the changelog.
This is the maintained continuation of
kylegregory/EmmaSharp (last shipped 2019) by way of
BinaryPatrick/EmmaSharper.
Several bugs still shown as open on those repositories are fixed here — the int32 overflow on Emma ids, multi-account support, .NET Core support. Each one is recorded with its cause and fix in Upstream issues fixed in this fork.
| Interface | Covers |
|---|---|
IEmmaAccountProvider |
The account's users |
IEmmaAutomationProvider |
Automation workflows |
IEmmaEnterpriseProvider |
Subaccounts of an enterprise account |
IEmmaFieldsProvider |
Custom member fields |
IEmmaGroupProvider |
Groups and bulk group membership |
IEmmaMailingProvider |
Mailings, their HTML, recipients |
IEmmaMemberProvider |
Members, statuses, bulk imports |
IEmmaResponseProvider |
Mailing response data |
IEmmaSearchProvider |
Saved searches |
IEmmaSignupFormProvider |
Sign-up forms |
IEmmaSubscriptionProvider |
Subscriptions |
IEmmaWebhookProvider |
Webhooks |
Every method is asynchronous and takes a trailing CancellationToken.
Use this repository's issue tracker. The upstream repositories are not monitored.
Using it
Reference
Links