Files
EonaCat.DoxaApi/DoxaApi/Models/ApiDocument.cs
T
2026-06-21 20:10:02 +02:00

30 lines
1.1 KiB
C#

using System.Text.Json.Serialization;
namespace EonaCat.DoxaApi.Models
{
// This file is part of the EonaCat project(s) which is released under the Apache License.
// See the LICENSE file or go to https://EonaCat.com/license for full license details.
public sealed class ApiDocument
{
[JsonPropertyName("info")]
public ApiInfo Info { get; set; } = new();
[JsonPropertyName("servers")]
public List<string> Servers { get; set; } = new();
[JsonPropertyName("groups")]
public List<ApiGroup> Groups { get; set; } = new();
[JsonPropertyName("schemas")]
public Dictionary<string, SchemaModel> Schemas { get; set; } = new();
/// <summary>All security schemes available for this API (keyed by scheme id).</summary>
[JsonPropertyName("securitySchemes")]
public Dictionary<string, SecuritySchemeModel> SecuritySchemes { get; set; } = new();
/// <summary>Which optional DoxaApi server-side features are enabled, for UI feature detection.</summary>
[JsonPropertyName("features")]
public ApiFeatureFlags Features { get; set; } = new();
}
}