using System.Runtime.Serialization;
using Newtonsoft.Json.Converters;
namespace AMWD.Net.Api.Cloudflare
{
///
/// The rate plan applied to the subscription.
/// Source
///
public class RatePlan
{
///
/// The ID of the rate plan.
///
[JsonProperty("id")]
public RatePlanId? Id { get; set; }
///
/// The currency applied to the rate plan subscription.
///
[JsonProperty("currency")]
public string? Currency { get; set; }
///
/// Whether this rate plan is managed externally from Cloudflare.
///
[JsonProperty("externally_managed")]
public bool? ExternallyManaged { get; set; }
///
/// Whether a rate plan is enterprise-based (or newly adopted term contract).
///
[JsonProperty("is_contract")]
public bool? IsContract { get; set; }
///
/// The full name of the rate plan.
///
[JsonProperty("public_name")]
public string? PublicName { get; set; }
///
/// The scope that this rate plan applies to.
///
[JsonProperty("scope")]
public string? Scope { get; set; }
///
/// The list of sets this rate plan applies to.
///
[JsonProperty("sets")]
public IReadOnlyCollection? Sets { get; set; }
}
///
/// Available rate plan ids.
/// Source
///
[JsonConverter(typeof(StringEnumConverter))]
public enum RatePlanId
{
///
/// The free rate plan.
///
[EnumMember(Value = "free")]
Free = 1,
///
/// The lite rate plan.
///
[EnumMember(Value = "lite")]
Lite = 2,
///
/// The pro rate plan.
///
[EnumMember(Value = "pro")]
Pro = 3,
///
/// The pro+ rate plan.
///
[EnumMember(Value = "pro_plus")]
ProPlus = 4,
///
/// The business rate plan.
///
[EnumMember(Value = "business")]
Business = 5,
///
/// The enterprise rate plan.
///
[EnumMember(Value = "enterprise")]
Enterprise = 6,
///
/// The partners free rate plan.
///
[EnumMember(Value = "partners_free")]
PartnersFree = 7,
///
/// The partners pro rate plan.
///
[EnumMember(Value = "partners_pro")]
PartnersPro = 8,
///
/// The partners business rate plan.
///
[EnumMember(Value = "partners_business")]
PartnersBusiness = 9,
///
/// The partners enterprise rate plan.
///
[EnumMember(Value = "partners_enterprise")]
PartnersEnterprise = 10
}
}