Benevia.Core.API 0.10.0

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Benevia.Core.API --version 0.10.0
                    
NuGet\Install-Package Benevia.Core.API -Version 0.10.0
                    
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="Benevia.Core.API" Version="0.10.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Benevia.Core.API" Version="0.10.0" />
                    
Directory.Packages.props
<PackageReference Include="Benevia.Core.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 Benevia.Core.API --version 0.10.0
                    
#r "nuget: Benevia.Core.API, 0.10.0"
                    
#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.
#:package Benevia.Core.API@0.10.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Benevia.Core.API&version=0.10.0
                    
Install as a Cake Addin
#tool nuget:?package=Benevia.Core.API&version=0.10.0
                    
Install as a Cake Tool

Benevia.Core.API Summary

Benevia.Core.API provides RESTful OData API infrastructure for Benevia Core entities, automatically generating CRUD endpoints with no boilerplate controllers.

This package includes:

  • Automatic CRUD endpoints for each [ApiEntity] entity
  • Multi-tenant database access via Entity Framework
  • JWT and PAT authentication
  • OData query support ($filter, $expand, $select, $search)

Documentation

AI agents should use the documentation on the https://core.benevia.university site. Begin with the following links:

  • Documentation specific to this library: API index
  • Full documentation of the platform is here: AI Index

Install

dotnet add package Benevia.Core.API

Configuration

{
  "Tenants": {
    "Demo": {
      "ConnectionString": "Host=localhost;Database=demo;Username=postgres;Password=postgres",
      "EncryptionKey": "..."
    }
  },
  "JWT": {
    "Issuer": "yourcompany",
    "Audience": "yourcompany",
    "AccessTokenExpirationHours": 0.5,
    "RefreshTokenExpirationDays": 14
  }
}

Use environment variables in production — the app reads from IConfiguration automatically:

Tenants__Demo__ConnectionString="Host=prod-db;..."
{
  "ApiOptions": {
    "EnableLowerCamelCase": true,
    "MaxTop": 500,
    "MaxNodeCount": 100,
    "MaxExpansionDepth": 5
  }
}

Register in Program.cs

builder.Services
    .AddMyAppModel()
    .AddMyAppEndpoints()
    .AddCoreApi((o, t) => o.UseNpgsql(t?.ConnectionString));

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