pub struct PricingTierInput {
pub name: String,
pub is_default: bool,
pub priority: i32,
pub conditions: Vec<PricingTierCondition>,
pub prices: HashMap<String, f64>,
}Expand description
PricingTierInput : Input schema for creating a pricing tier. The tier ID will be automatically generated server-side. When creating a model with pricing tiers: - Exactly one tier must have isDefault=true (the fallback tier) - The default tier must have priority=0 and conditions=[] - All tier names and priorities must be unique within the model - Each tier must define at least one price See PricingTier for detailed information about how tiers work and why they’re useful.
Fields§
§name: StringName of the pricing tier for display and identification purposes. Must be unique within the model. Common patterns: "Standard", "High Volume Tier", "Extended Context"
is_default: boolWhether this is the default tier. Exactly one tier per model must be marked as default. Requirements for default tier: - Must have isDefault=true - Must have priority=0 - Must have empty conditions array (conditions=[]) The default tier acts as a fallback when no conditional tiers match.
priority: i32Priority for tier matching evaluation. Lower numbers = higher priority (evaluated first). Must be unique within the model. The default tier must have priority=0. Conditional tiers should use priority 1, 2, 3, etc. based on their specificity.
conditions: Vec<PricingTierCondition>Array of conditions that must ALL be met for this tier to match (AND logic). The default tier must have an empty array (conditions=[]). Conditional tiers should define one or more conditions that specify when this tier’s pricing applies. Each condition specifies a regex pattern, operator, and threshold value for matching against usage details.
prices: HashMap<String, f64>Prices (USD) by usage type for this tier. At least one price must be defined. Common usage types: "input", "output", "total", "request", "image" Prices are in USD per unit (e.g., per token). Example: {"input": 0.000003, "output": 0.000015} represents $3 per million input tokens and $15 per million output tokens.
Implementations§
Source§impl PricingTierInput
impl PricingTierInput
Sourcepub fn builder() -> PricingTierInputBuilder
pub fn builder() -> PricingTierInputBuilder
Create an instance of PricingTierInput using the builder syntax
Source§impl PricingTierInput
impl PricingTierInput
Sourcepub fn new(
name: String,
is_default: bool,
priority: i32,
conditions: Vec<PricingTierCondition>,
prices: HashMap<String, f64>,
) -> PricingTierInput
pub fn new( name: String, is_default: bool, priority: i32, conditions: Vec<PricingTierCondition>, prices: HashMap<String, f64>, ) -> PricingTierInput
Input schema for creating a pricing tier. The tier ID will be automatically generated server-side. When creating a model with pricing tiers: - Exactly one tier must have isDefault=true (the fallback tier) - The default tier must have priority=0 and conditions=[] - All tier names and priorities must be unique within the model - Each tier must define at least one price See PricingTier for detailed information about how tiers work and why they’re useful.
Trait Implementations§
Source§impl Clone for PricingTierInput
impl Clone for PricingTierInput
Source§fn clone(&self) -> PricingTierInput
fn clone(&self) -> PricingTierInput
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more