AdobeMPClient 1.0.1
dotnet add package AdobeMPClient --version 1.0.1
NuGet\Install-Package AdobeMPClient -Version 1.0.1
<PackageReference Include="AdobeMPClient" Version="1.0.1" />
<PackageVersion Include="AdobeMPClient" Version="1.0.1" />
<PackageReference Include="AdobeMPClient" />
paket add AdobeMPClient --version 1.0.1
#r "nuget: AdobeMPClient, 1.0.1"
#:package AdobeMPClient@1.0.1
#addin nuget:?package=AdobeMPClient&version=1.0.1
#tool nuget:?package=AdobeMPClient&version=1.0.1
AdobeMPClient
🚧 ACTIVE DEVELOPMENT
This library is in early development. The API may change without prior notice until version 1.0.0.
A .NET SDK/wrapper for the Adobe Marketplace Partner API. This library provides strongly-typed models and a fluent client interface for interacting with Adobe's marketplace services, including customer management, orders, subscriptions, and notifications.
Features
- ✅ Strongly-typed models - All API responses and requests are represented as strongly-typed C# classes
- ✅ Result-based error handling - Uses
Result<T>pattern for explicit success/failure handling - ✅ Dependency Injection ready - Built with
Microsoft.Extensions.DependencyInjectionin mind - ✅ Async/await support - All operations are asynchronous with
CancellationTokensupport - ✅ Token caching - Automatic OAuth token management with thread-safe caching
- ✅ Comprehensive error handling - Handles HTTP errors, network exceptions, and JSON parsing errors
- ✅ Well-organized models - Models organized by domain (Customer, Orders, Subscriptions, etc.)
Installation
PackageReference in your .csproj:
<PackageReference Include="AdobeMPClient" Version="1.0.0" />
Quick Start
1. Configure Settings
Add your Adobe API credentials to appsettings.json:
{
"Adobe": {
"BaseUrl": "https://partnersandbox-stage.adobe.io/",
"ApiKey": "your-api-key",
"ClientSecret": "your-client-secret",
"Ims": "https://ims-na1-stg1.adobelogin.com",
"ImsOrg": "your-ims-org"
}
}
Required Settings
BaseUrl: Base URL of the Adobe Marketplace Partner APIApiKey: Your Adobe API keyClientSecret: Your Adobe client secretIms: Identity Management Service URLImsOrg: Your IMS organization ID (optional, may be required depending on your setup)
2. Register Services
In your Program.cs or Startup.cs:
using AdobeMPClient.Extensions;
var builder = WebApplication.CreateBuilder(args);
// Register Adobe Client
builder.Services.AddAdobeClient(builder.Configuration);
var app = builder.Build();
3. Use the Client
Inject IAdobeClient into your services:
using AdobeMPClient.Interfaces;
using AdobeMPClient.Models.Common;
using AdobeMPClient.Models.Customer;
public class CustomerService
{
private readonly IAdobeClient _adobeClient;
public CustomerService(IAdobeClient adobeClient)
{
_adobeClient = adobeClient;
}
public async Task<CustomerResponse?> GetCustomerAsync(string customerId)
{
var result = await _adobeClient.GetCustomerAsync(customerId);
return result.Match(
(customer, statusCode) => customer,
(error, statusCode) =>
{
Console.WriteLine($"Error: {error?.Message}");
return null;
}
);
}
}
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For issues, questions, or contributions, please open an issue on GitHub.
Related Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Duende.IdentityModel (>= 8.1.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.9)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Http (>= 10.0.7)
- Microsoft.Extensions.Options (>= 10.0.7)
- Newtonsoft.Json (>= 13.0.4)
-
net8.0
- Duende.IdentityModel (>= 8.1.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.9)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Http (>= 10.0.7)
- Microsoft.Extensions.Options (>= 10.0.7)
- Newtonsoft.Json (>= 13.0.4)
-
net9.0
- Duende.IdentityModel (>= 8.1.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.9)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Http (>= 10.0.7)
- Microsoft.Extensions.Options (>= 10.0.7)
- Newtonsoft.Json (>= 13.0.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.1 | 95 | 4/21/2026 |
| 1.0.0 | 92 | 4/21/2026 |
| 1.0.0-beta | 94 | 4/21/2026 |