MandalaConsulting.Objects.API 0.0.6

dotnet add package MandalaConsulting.Objects.API --version 0.0.6
                    
NuGet\Install-Package MandalaConsulting.Objects.API -Version 0.0.6
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MandalaConsulting.Objects.API" Version="0.0.6" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MandalaConsulting.Objects.API" Version="0.0.6" />
                    
Directory.Packages.props
<PackageReference Include="MandalaConsulting.Objects.API" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MandalaConsulting.Objects.API --version 0.0.6
                    
#r "nuget: MandalaConsulting.Objects.API, 0.0.6"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=MandalaConsulting.Objects.API&version=0.0.6
                    
Install as a Cake Addin
#tool nuget:?package=MandalaConsulting.Objects.API&version=0.0.6
                    
Install as a Cake Tool

MandalaConsulting.Objects.API

A .NET library providing standardized data models and objects for API development, including account management, billing, and common API response structures.

Overview

MandalaConsulting.Objects.API offers a comprehensive set of data models designed for building robust APIs. It includes models for user accounts, billing operations, and standardized API responses with built-in JSON serialization support.

Installation

Install via NuGet:

dotnet add package MandalaConsulting.Objects.API

Features

  • Account Management Models: User accounts, profiles, credentials, and IP information
  • Billing System Models: Complete billing workflow including products, purchases, subscriptions, and payment processing
  • API Response Standardization: Consistent response format with generic type support
  • File Upload Support: Custom form file handling for multipart uploads
  • MongoDB Integration: Built-in MongoDB support for all data models
  • JSON Serialization: Newtonsoft.Json integration with custom serializers

Key Components

Account Models

  • User - Core user account information
  • Profile - User profile details
  • Credentials - Authentication credentials
  • IPInfo - IP address tracking and geolocation

Billing Models

  • Product - Product catalog items
  • Purchase - Purchase transactions
  • Subscription - Recurring billing subscriptions
  • Bill - Invoice/bill generation
  • CreditCard - Payment card information
  • PaymentCredentials - Payment authentication
  • Address - Billing/shipping addresses

API Utilities

  • ResponseData<T> - Generic API response wrapper
  • CustomFormFile - Multipart file upload handling
  • JObjectSerializer - Custom JSON serialization for MongoDB

Usage Example

using MandalaConsulting.Objects.API;

// Create a standardized API response
var response = new ResponseData<User>
{
    Success = true,
    Data = new User 
    {
        Email = "user@example.com",
        Username = "johndoe"
    },
    Message = "User retrieved successfully"
};

// Handle file uploads
public async Task<IActionResult> Upload(CustomFormFile file)
{
    if (file != null && file.Length > 0)
    {
        // Process file
    }
}

Dependencies

  • .NET 8.0
  • MongoDB.Driver (3.4.0)
  • Newtonsoft.Json (13.0.3)
  • Microsoft.AspNetCore.Mvc.NewtonsoftJson (8.0.15)

Documentation

For detailed documentation on individual models and their properties, see the API subfolder README.

License

Copyright © 2023 Mandala Consulting, LLC. All rights reserved.

Author

Created by Alexander Fields

Product 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 was computed.  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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
0.0.6 183 7/5/2025
0.0.5 528 6/12/2025
0.0.4 226 6/8/2025
0.0.3 483 10/15/2024
0.0.3-develop.5 162 6/8/2025
0.0.1 152 10/12/2024