---
title: "Update price"
method: PUT
path: "/prices/{id}"
tags: ["Prices"]
---

# Update price

`PUT /prices/{id}`

Use when changing price configuration (e.g. amount, billing scheme, or metadata).

## Path parameters

- `id` string, required

## Request body

- UpdatePriceRequest
  - `amount` string — Amount is the new price amount that overrides the original price (optional)
  - `billing_model` 'FLAT_FEE' | 'PACKAGE' | 'TIERED'
  - `description` string
  - `display_name` string
  - `effective_from` string
  - `group_id` string — GroupID is the id of the group to update the price in. If not provided (nil), the group will not be changed If provided as empty string (""), the group will be removed (price will be ungrouped) If provided as a group ID, the price will be assigned to that group (must exist and be published)
  - `lookup_key` string — All price fields that can be updated Non-critical fields (can be updated directly)
  - `metadata` object
  - `price_unit_amount` string — PriceUnitAmount is the price unit amount (for CUSTOM price unit type, FLAT_FEE/PACKAGE billing models)
  - `price_unit_tiers` CreatePriceTier[] — PriceUnitTiers are the price unit tiers (for CUSTOM price unit type, TIERED billing model)
    - `flat_amount` string — flat_amount is the flat amount for the given tier (optional) Applied on top of unit_amount*quantity. Useful for cases like "2.7$ + 5c"
    - `unit_amount` string, required — unit_amount is the amount per unit for the given tier
    - `up_to` integer — up_to is the quantity up to which this tier applies. It is null for the last tier. IMPORTANT: Tier boundaries are INCLUSIVE. - If up_to is 1000, then quantity less than or equal to 1000 belongs to this tier - This behavior is consistent across both VOLUME and SLAB tier modes
  - `tier_mode` 'VOLUME' | 'SLAB'
  - `tiers` CreatePriceTier[] — Tiers determines the pricing tiers for this line item
    - `flat_amount` string — flat_amount is the flat amount for the given tier (optional) Applied on top of unit_amount*quantity. Useful for cases like "2.7$ + 5c"
    - `unit_amount` string, required — unit_amount is the amount per unit for the given tier
    - `up_to` integer — up_to is the quantity up to which this tier applies. It is null for the last tier. IMPORTANT: Tier boundaries are INCLUSIVE. - If up_to is 1000, then quantity less than or equal to 1000 belongs to this tier - This behavior is consistent across both VOLUME and SLAB tier modes
  - `transform_quantity` PriceTransformQuantity
    - `divide_by` integer — Divide quantity by this number
    - `round` 'up' | 'down'

## Response `200`

OK

- PriceResponse
  - `addon` AddonResponse
    - `created_at` string, date-time
    - `created_by` string
    - `credit_grants` CreditGrantResponse[]
      - `addon_id` string
      - `cadence` 'ONETIME' | 'RECURRING'
      - `conversion_rate` string — amount in the currency = number of credits * conversion_rate ex if conversion_rate is 1, then 1 USD = 1 credit ex if conversion_rate is 2, then 1 USD = 0.5 credits ex if conversion_rate is 0.5, then 1 USD = 2 credits
      - `created_at` string, date-time
      - `created_by` string
      - `credit_grant_anchor` string, date-time
      - `credits` string
      - `end_date` string, date-time
      - `environment_id` string
      - `expiration_duration` integer
      - `expiration_duration_unit` 'DAY' | 'WEEK' | 'MONTH' | 'YEAR'
      - `expiration_type` 'NEVER' | 'DURATION' | 'BILLING_CYCLE'
      - `id` string
      - `metadata` TypesMetadata
      - `name` string
      - `period` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'ANNUAL' | 'QUARTERLY' | 'HALF_YEARLY'
      - `period_count` integer
      - `plan_id` string
      - `priority` integer
      - `scope` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
      - `start_date` string, date-time
      - `status` 'published' | 'deleted' | 'archived'
      - `subscription_id` string
      - `tenant_id` string
      - `topup_conversion_rate` string — topup_conversion_rate is the conversion rate for the topup to the currency ex if topup_conversion_rate is 1, then 1 USD = 1 credit ex if topup_conversion_rate is 2, then 1 USD = 0.5 credits ex if topup_conversion_rate is 0.5, then 1 USD = 2 credits
      - `updated_at` string, date-time
      - `updated_by` string
    - `description` string
    - `entitlements` EntitlementResponse[]
      - `addon` AddonResponse — recursive
      - `aggregation_mode` 'additive' | 'parallel'
      - `config_value` object
      - `created_at` string, date-time
      - `created_by` string
      - `display_order` integer
      - `end_date` string, date-time
      - `entity_id` string
      - `entity_type` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
      - `environment_id` string
      - `feature` FeatureResponse
        - `alert_settings` TypesAlertSettings
          - `alert_enabled` boolean
          - `critical` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
          - `info` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
          - `warning` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
        - `created_at` string, date-time
        - `created_by` string
        - `description` string
        - `environment_id` string
        - `group` GroupResponse
          - `created_at` string, date-time
          - `entity_ids` string[]
          - `entity_type` string
          - `id` string
          - `lookup_key` string
          - `metadata` object
          - `name` string
          - `status` string
          - `updated_at` string, date-time
        - `group_id` string
        - `id` string
        - `lookup_key` string
        - `metadata` TypesMetadata
        - `meter` MeterResponse
          - `aggregation` MeterAggregation
            - `bucket_size` 'MINUTE' | '15MIN' | '30MIN' | 'HOUR' | '3HOUR' | '6HOUR' | '12HOUR' | 'DAY' | 'WEEK' | 'MONTH'
            - `expression` string — Expression is an optional CEL expression to compute per-event quantity from event.properties. When set, it replaces Field-based extraction. Property names are used directly (e.g., token * duration * pixel).
            - `field` string — Field is the key in $event.properties on which the aggregation is to be applied For ex if the aggregation type is sum for API usage, the field could be "duration_ms" Ignored when Expression is set.
            - `group_by` string — GroupBy is the property name in event.properties to group by before aggregating. Currently only supported for MAX aggregation with bucket_size. When set, aggregation is applied per unique value of this property within each bucket, then the per-group results are summed to produce the bucket total.
            - `multiplier` string — Multiplier is the multiplier for the aggregation For ex if the aggregation type is sum_with_multiplier for API usage, the multiplier could be 1000 to scale up by a factor of 1000. If not provided, it will be null.
            - `type` 'COUNT' | 'SUM' | 'AVG' | 'COUNT_UNIQUE' | 'LATEST' | 'SUM_WITH_MULTIPLIER' | 'MAX' | 'WEIGHTED_SUM'
          - `created_at` string, date-time
          - `event_name` string
          - `filters` MeterFilter[]
            - `key` string — Key is the key for the filter from $event.properties Currently we support only first level keys in the properties and not nested keys
            - `values` string[] — Values are the possible values for the filter to be considered for the meter For ex "model_name" could have values "o1-mini", "gpt-4o" etc
          - `id` string
          - `name` string
          - `reset_usage` 'BILLING_PERIOD' | 'NEVER'
          - `status` string
          - `tenant_id` string
          - `updated_at` string, date-time
        - `meter_id` string
        - `name` string
        - `reporting_unit` TypesReportingUnit
          - `conversion_rate` number — Multiplier: reporting_unit_value = unit_value * conversion_rate; must be > 0
          - `unit_plural` string — Display unit label, plural (e.g. "seconds")
          - `unit_singular` string — Display unit label, singular (e.g. "second")
        - `status` 'published' | 'deleted' | 'archived'
        - `tenant_id` string
        - `type` 'metered' | 'boolean' | 'static' | 'config'
        - `unit_plural` string
        - `unit_singular` string
        - `updated_at` string, date-time
        - `updated_by` string
      - `feature_id` string
      - `feature_type` 'metered' | 'boolean' | 'static' | 'config'
      - `grant_duration_unit` 'hour' | 'day' | 'week'
      - `grant_duration_value` integer
      - `grant_measure` 'quantity' | 'amount'
      - `grant_quota` number
      - `id` string
      - `is_enabled` boolean
      - `is_soft_limit` boolean
      - `parent_entitlement_id` string
      - `plan` PlanResponse
        - `created_at` string, date-time
        - `created_by` string
        - `credit_grants` CreditGrantResponse[]
          - `addon_id` string
          - `cadence` 'ONETIME' | 'RECURRING'
          - `conversion_rate` string — amount in the currency = number of credits * conversion_rate ex if conversion_rate is 1, then 1 USD = 1 credit ex if conversion_rate is 2, then 1 USD = 0.5 credits ex if conversion_rate is 0.5, then 1 USD = 2 credits
          - `created_at` string, date-time
          - `created_by` string
          - `credit_grant_anchor` string, date-time
          - `credits` string
          - `end_date` string, date-time
          - `environment_id` string
          - `expiration_duration` integer
          - `expiration_duration_unit` 'DAY' | 'WEEK' | 'MONTH' | 'YEAR'
          - `expiration_type` 'NEVER' | 'DURATION' | 'BILLING_CYCLE'
          - `id` string
          - `metadata` TypesMetadata
          - `name` string
          - `period` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'ANNUAL' | 'QUARTERLY' | 'HALF_YEARLY'
          - `period_count` integer
          - `plan_id` string
          - `priority` integer
          - `scope` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
          - `start_date` string, date-time
          - `status` 'published' | 'deleted' | 'archived'
          - `subscription_id` string
          - `tenant_id` string
          - `topup_conversion_rate` string — topup_conversion_rate is the conversion rate for the topup to the currency ex if topup_conversion_rate is 1, then 1 USD = 1 credit ex if topup_conversion_rate is 2, then 1 USD = 0.5 credits ex if topup_conversion_rate is 0.5, then 1 USD = 2 credits
          - `updated_at` string, date-time
          - `updated_by` string
        - `description` string
        - `display_order` integer
        - `entitlements` EntitlementResponse[]
        - `environment_id` string
        - `id` string
        - `lookup_key` string
        - `metadata` TypesMetadata
        - `name` string
        - `prices` PriceResponse[] — TODO: Add inline addons
        - `status` 'published' | 'deleted' | 'archived'
        - `tenant_id` string
        - `updated_at` string, date-time
        - `updated_by` string
      - `plan_id` string — TODO: Remove this once we have a proper entitlement entity type
      - `start_date` string, date-time
      - `static_value` string
      - `status` 'published' | 'deleted' | 'archived'
      - `tenant_id` string
      - `updated_at` string, date-time
      - `updated_by` string
      - `usage_limit` integer
      - `usage_reset_period` 'MONTHLY' | 'ANNUAL' | 'WEEKLY' | 'DAILY' | 'QUARTERLY' | 'HALF_YEARLY' | 'NEVER'
    - `environment_id` string
    - `id` string
    - `lookup_key` string
    - `metadata` object
    - `name` string
    - `prices` PriceResponse[] — Optional expanded fields
    - `status` 'published' | 'deleted' | 'archived'
    - `tenant_id` string
    - `updated_at` string, date-time
    - `updated_by` string
  - `amount` string — Amount stored in main currency units (e.g., dollars, not cents) For USD: 12.50 means $12.50
  - `billing_cadence` 'RECURRING'
  - `billing_model` 'FLAT_FEE' | 'PACKAGE' | 'TIERED'
  - `billing_period` 'MONTHLY' | 'ANNUAL' | 'WEEKLY' | 'DAILY' | 'QUARTERLY' | 'HALF_YEARLY' | 'ONETIME'
  - `billing_period_count` integer — BillingPeriodCount is the count of the billing period ex 1, 3, 6, 12
  - `conversion_rate` string — ConversionRate is the conversion rate of the price unit to the fiat currency
  - `created_at` string, date-time
  - `created_by` string
  - `currency` string — Currency 3 digit ISO currency code in lowercase ex usd, eur, gbp
  - `description` string — Description of the price
  - `display_amount` string — DisplayAmount is the formatted amount with currency symbol For USD: $12.50
  - `display_name` string — DisplayName is the name of the price
  - `display_price_unit_amount` string — DisplayPriceUnitAmount is the formatted amount of the price unit
  - `end_date` string, date-time — EndDate is the end date of the price
  - `entity_id` string — EntityID holds the value of the "entity_id" field.
  - `entity_type` 'PLAN' | 'SUBSCRIPTION' | 'ADDON' | 'PRICE' | 'COSTSHEET'
  - `environment_id` string — EnvironmentID is the environment identifier for the price
  - `group` GroupResponse
    - `created_at` string, date-time
    - `entity_ids` string[]
    - `entity_type` string
    - `id` string
    - `lookup_key` string
    - `metadata` object
    - `name` string
    - `status` string
    - `updated_at` string, date-time
  - `group_id` string — GroupID references the group this price belongs to
  - `id` string — ID uuid identifier for the price
  - `invoice_cadence` 'ARREAR' | 'ADVANCE'
  - `lookup_key` string — LookupKey used for looking up the price in the database
  - `metadata` PriceJSONBMetadata
  - `meter` MeterResponse
    - `aggregation` MeterAggregation
      - `bucket_size` 'MINUTE' | '15MIN' | '30MIN' | 'HOUR' | '3HOUR' | '6HOUR' | '12HOUR' | 'DAY' | 'WEEK' | 'MONTH'
      - `expression` string — Expression is an optional CEL expression to compute per-event quantity from event.properties. When set, it replaces Field-based extraction. Property names are used directly (e.g., token * duration * pixel).
      - `field` string — Field is the key in $event.properties on which the aggregation is to be applied For ex if the aggregation type is sum for API usage, the field could be "duration_ms" Ignored when Expression is set.
      - `group_by` string — GroupBy is the property name in event.properties to group by before aggregating. Currently only supported for MAX aggregation with bucket_size. When set, aggregation is applied per unique value of this property within each bucket, then the per-group results are summed to produce the bucket total.
      - `multiplier` string — Multiplier is the multiplier for the aggregation For ex if the aggregation type is sum_with_multiplier for API usage, the multiplier could be 1000 to scale up by a factor of 1000. If not provided, it will be null.
      - `type` 'COUNT' | 'SUM' | 'AVG' | 'COUNT_UNIQUE' | 'LATEST' | 'SUM_WITH_MULTIPLIER' | 'MAX' | 'WEIGHTED_SUM'
    - `created_at` string, date-time
    - `event_name` string
    - `filters` MeterFilter[]
      - `key` string — Key is the key for the filter from $event.properties Currently we support only first level keys in the properties and not nested keys
      - `values` string[] — Values are the possible values for the filter to be considered for the meter For ex "model_name" could have values "o1-mini", "gpt-4o" etc
    - `id` string
    - `name` string
    - `reset_usage` 'BILLING_PERIOD' | 'NEVER'
    - `status` string
    - `tenant_id` string
    - `updated_at` string, date-time
  - `meter_id` string — MeterID is the id of the meter for usage based pricing
  - `min_quantity` string, nullable — MinQuantity is the minimum quantity of the price
  - `parent_price_id` string — ParentPriceID references the root price (always set for price lineage tracking)
  - `plan` PlanResponse
    - `created_at` string, date-time
    - `created_by` string
    - `credit_grants` CreditGrantResponse[]
      - `addon_id` string
      - `cadence` 'ONETIME' | 'RECURRING'
      - `conversion_rate` string — amount in the currency = number of credits * conversion_rate ex if conversion_rate is 1, then 1 USD = 1 credit ex if conversion_rate is 2, then 1 USD = 0.5 credits ex if conversion_rate is 0.5, then 1 USD = 2 credits
      - `created_at` string, date-time
      - `created_by` string
      - `credit_grant_anchor` string, date-time
      - `credits` string
      - `end_date` string, date-time
      - `environment_id` string
      - `expiration_duration` integer
      - `expiration_duration_unit` 'DAY' | 'WEEK' | 'MONTH' | 'YEAR'
      - `expiration_type` 'NEVER' | 'DURATION' | 'BILLING_CYCLE'
      - `id` string
      - `metadata` TypesMetadata
      - `name` string
      - `period` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'ANNUAL' | 'QUARTERLY' | 'HALF_YEARLY'
      - `period_count` integer
      - `plan_id` string
      - `priority` integer
      - `scope` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
      - `start_date` string, date-time
      - `status` 'published' | 'deleted' | 'archived'
      - `subscription_id` string
      - `tenant_id` string
      - `topup_conversion_rate` string — topup_conversion_rate is the conversion rate for the topup to the currency ex if topup_conversion_rate is 1, then 1 USD = 1 credit ex if topup_conversion_rate is 2, then 1 USD = 0.5 credits ex if topup_conversion_rate is 0.5, then 1 USD = 2 credits
      - `updated_at` string, date-time
      - `updated_by` string
    - `description` string
    - `display_order` integer
    - `entitlements` EntitlementResponse[]
      - `addon` AddonResponse
        - `created_at` string, date-time
        - `created_by` string
        - `credit_grants` CreditGrantResponse[]
          - `addon_id` string
          - `cadence` 'ONETIME' | 'RECURRING'
          - `conversion_rate` string — amount in the currency = number of credits * conversion_rate ex if conversion_rate is 1, then 1 USD = 1 credit ex if conversion_rate is 2, then 1 USD = 0.5 credits ex if conversion_rate is 0.5, then 1 USD = 2 credits
          - `created_at` string, date-time
          - `created_by` string
          - `credit_grant_anchor` string, date-time
          - `credits` string
          - `end_date` string, date-time
          - `environment_id` string
          - `expiration_duration` integer
          - `expiration_duration_unit` 'DAY' | 'WEEK' | 'MONTH' | 'YEAR'
          - `expiration_type` 'NEVER' | 'DURATION' | 'BILLING_CYCLE'
          - `id` string
          - `metadata` TypesMetadata
          - `name` string
          - `period` 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'ANNUAL' | 'QUARTERLY' | 'HALF_YEARLY'
          - `period_count` integer
          - `plan_id` string
          - `priority` integer
          - `scope` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
          - `start_date` string, date-time
          - `status` 'published' | 'deleted' | 'archived'
          - `subscription_id` string
          - `tenant_id` string
          - `topup_conversion_rate` string — topup_conversion_rate is the conversion rate for the topup to the currency ex if topup_conversion_rate is 1, then 1 USD = 1 credit ex if topup_conversion_rate is 2, then 1 USD = 0.5 credits ex if topup_conversion_rate is 0.5, then 1 USD = 2 credits
          - `updated_at` string, date-time
          - `updated_by` string
        - `description` string
        - `entitlements` EntitlementResponse[]
        - `environment_id` string
        - `id` string
        - `lookup_key` string
        - `metadata` object
        - `name` string
        - `prices` PriceResponse[] — Optional expanded fields
        - `status` 'published' | 'deleted' | 'archived'
        - `tenant_id` string
        - `updated_at` string, date-time
        - `updated_by` string
      - `aggregation_mode` 'additive' | 'parallel'
      - `config_value` object
      - `created_at` string, date-time
      - `created_by` string
      - `display_order` integer
      - `end_date` string, date-time
      - `entity_id` string
      - `entity_type` 'PLAN' | 'SUBSCRIPTION' | 'ADDON'
      - `environment_id` string
      - `feature` FeatureResponse
        - `alert_settings` TypesAlertSettings
          - `alert_enabled` boolean
          - `critical` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
          - `info` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
          - `warning` TypesAlertThreshold
            - `condition` 'above' | 'below'
            - `threshold` string
        - `created_at` string, date-time
        - `created_by` string
        - `description` string
        - `environment_id` string
        - `group` GroupResponse
          - `created_at` string, date-time
          - `entity_ids` string[]
          - `entity_type` string
          - `id` string
          - `lookup_key` string
          - `metadata` object
          - `name` string
          - `status` string
          - `updated_at` string, date-time
        - `group_id` string
        - `id` string
        - `lookup_key` string
        - `metadata` TypesMetadata
        - `meter` MeterResponse
          - `aggregation` MeterAggregation
            - `bucket_size` 'MINUTE' | '15MIN' | '30MIN' | 'HOUR' | '3HOUR' | '6HOUR' | '12HOUR' | 'DAY' | 'WEEK' | 'MONTH'
            - `expression` string — Expression is an optional CEL expression to compute per-event quantity from event.properties. When set, it replaces Field-based extraction. Property names are used directly (e.g., token * duration * pixel).
            - `field` string — Field is the key in $event.properties on which the aggregation is to be applied For ex if the aggregation type is sum for API usage, the field could be "duration_ms" Ignored when Expression is set.
            - `group_by` string — GroupBy is the property name in event.properties to group by before aggregating. Currently only supported for MAX aggregation with bucket_size. When set, aggregation is applied per unique value of this property within each bucket, then the per-group results are summed to produce the bucket total.
            - `multiplier` string — Multiplier is the multiplier for the aggregation For ex if the aggregation type is sum_with_multiplier for API usage, the multiplier could be 1000 to scale up by a factor of 1000. If not provided, it will be null.
            - `type` 'COUNT' | 'SUM' | 'AVG' | 'COUNT_UNIQUE' | 'LATEST' | 'SUM_WITH_MULTIPLIER' | 'MAX' | 'WEIGHTED_SUM'
          - `created_at` string, date-time
          - `event_name` string
          - `filters` MeterFilter[]
            - `key` string — Key is the key for the filter from $event.properties Currently we support only first level keys in the properties and not nested keys
            - `values` string[] — Values are the possible values for the filter to be considered for the meter For ex "model_name" could have values "o1-mini", "gpt-4o" etc
          - `id` string
          - `name` string
          - `reset_usage` 'BILLING_PERIOD' | 'NEVER'
          - `status` string
          - `tenant_id` string
          - `updated_at` string, date-time
        - `meter_id` string
        - `name` string
        - `reporting_unit` TypesReportingUnit
          - `conversion_rate` number — Multiplier: reporting_unit_value = unit_value * conversion_rate; must be > 0
          - `unit_plural` string — Display unit label, plural (e.g. "seconds")
          - `unit_singular` string — Display unit label, singular (e.g. "second")
        - `status` 'published' | 'deleted' | 'archived'
        - `tenant_id` string
        - `type` 'metered' | 'boolean' | 'static' | 'config'
        - `unit_plural` string
        - `unit_singular` string
        - `updated_at` string, date-time
        - `updated_by` string
      - `feature_id` string
      - `feature_type` 'metered' | 'boolean' | 'static' | 'config'
      - `grant_duration_unit` 'hour' | 'day' | 'week'
      - `grant_duration_value` integer
      - `grant_measure` 'quantity' | 'amount'
      - `grant_quota` number
      - `id` string
      - `is_enabled` boolean
      - `is_soft_limit` boolean
      - `parent_entitlement_id` string
      - `plan` PlanResponse — recursive
      - `plan_id` string — TODO: Remove this once we have a proper entitlement entity type
      - `start_date` string, date-time
      - `static_value` string
      - `status` 'published' | 'deleted' | 'archived'
      - `tenant_id` string
      - `updated_at` string, date-time
      - `updated_by` string
      - `usage_limit` integer
      - `usage_reset_period` 'MONTHLY' | 'ANNUAL' | 'WEEKLY' | 'DAILY' | 'QUARTERLY' | 'HALF_YEARLY' | 'NEVER'
    - `environment_id` string
    - `id` string
    - `lookup_key` string
    - `metadata` TypesMetadata
    - `name` string
    - `prices` PriceResponse[] — TODO: Add inline addons
    - `status` 'published' | 'deleted' | 'archived'
    - `tenant_id` string
    - `updated_at` string, date-time
    - `updated_by` string
  - `price_unit` string — PriceUnit is the code of the price unit (e.g., 'btc', 'eth')
  - `price_unit_amount` string — PriceUnitAmount is the amount of the price unit
  - `price_unit_id` string — PriceUnitID is the id of the price unit (for CUSTOM type)
  - `price_unit_tiers` PricePriceTier[] — PriceUnitTiers are the tiers for the price unit when BillingModel is TIERED
    - `flat_amount` string — flat_amount is the flat amount for the given tier (optional) Applied on top of unit_amount*quantity. Useful for cases like "2.7$ + 5c"
    - `unit_amount` string — unit_amount is the amount per unit for the given tier
    - `up_to` integer — up_to is the quantity up to which this tier applies. It is null for the last tier. IMPORTANT: Tier boundaries are INCLUSIVE. - If up_to is 1000, then quantity less than or equal to 1000 belongs to this tier - This behavior is consistent across both VOLUME and SLAB tier modes
  - `price_unit_type` 'FIAT' | 'CUSTOM'
  - `pricing_unit` PriceUnitResponse
    - `base_currency` string
    - `code` string
    - `conversion_rate` string
    - `created_at` string, date-time
    - `created_by` string
    - `environment_id` string
    - `id` string
    - `metadata` TypesMetadata
    - `name` string
    - `status` 'published' | 'deleted' | 'archived'
    - `symbol` string
    - `tenant_id` string
    - `updated_at` string, date-time
    - `updated_by` string
  - `sequence` integer — Sequence is the monotonic stamp bumped on every state change that subscription line items need to react to. Read by the plan-price sync; set by the database (DEFAULT nextval) on create and by the price repository on termination / compatibility-affecting edits.
  - `start_date` string, date-time — StartDate is the start date of the price
  - `status` 'published' | 'deleted' | 'archived'
  - `tenant_id` string
  - `tier_mode` 'VOLUME' | 'SLAB'
  - `tiers` PricePriceTier[]
    - `flat_amount` string — flat_amount is the flat amount for the given tier (optional) Applied on top of unit_amount*quantity. Useful for cases like "2.7$ + 5c"
    - `unit_amount` string — unit_amount is the amount per unit for the given tier
    - `up_to` integer — up_to is the quantity up to which this tier applies. It is null for the last tier. IMPORTANT: Tier boundaries are INCLUSIVE. - If up_to is 1000, then quantity less than or equal to 1000 belongs to this tier - This behavior is consistent across both VOLUME and SLAB tier modes
  - `transform_quantity` PriceJSONBTransformQuantity
    - `divide_by` integer — Divide quantity by this number
    - `round` 'up' | 'down'
  - `trial_period_days` integer — TrialPeriodDays is the number of days for the trial period Note: This is only applicable for recurring prices (BILLING_CADENCE_RECURRING)
  - `type` 'USAGE' | 'FIXED'
  - `updated_at` string, date-time
  - `updated_by` string

## Other responses

- `400` — Invalid request
- `500` — Server error

---

[API](https://skmtc.net/flexprice/apis/flexprice-api.md) · [All operations](https://skmtc.net/flexprice/apis/flexprice-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/flexprice/flexprice-api/versions/f0601ed97bd3/schema)
