---
title: "Changes to Create a plan"
method: POST
path: "/api/v1/plans"
---

# Changes to Create a plan

`POST /api/v1/plans`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 8 of 54 revisions.

- **2026-08-12** (v1) `4e013b4e4a8f`: 16 breaking, 8 info
- **2026-06-01** (v1) `07a61fe347a5`: 1 breaking, 1 warning
- **2026-05-28** (v1) `ed86d893d43e`: 1 breaking, 1 warning, 2 info
- **2026-05-18** (v1) `0cdc37620ffb`: 2 info
- **2026-03-31** (v1) `ee465c53a423`: 4 info
- **2026-03-27** (v1) `de35c02bb0d2`: 3 warning, 1 info
- **2026-03-20** (v1) `51c7018cc5ef`: 1 info
- **2025-07-09** (v1) `dece17f86f99`: 1 breaking

## Changes

- **2026-08-12** (v1) `4e013b4e4a8f`: 16 breaking, 8 info
  - the `components/items/fee/oneOf[#/components/schemas/CapacityPlanFee]/thresholds/items/per_unit_overage` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/CapacityPlanFee]/thresholds/items/price` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/ExtraRecurringPlanFee]/unit_price` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/OneTimePlanFee]/unit_price` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/RatePlanFee]/rates/items/price` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/SlotPlanFee]/rates/items/price` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/PackagePlanPricing]/rate` request property format changed from no format to `decimal`
  - the `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/PerUnitPlanPricing]/rate` request property format changed from no format to `decimal`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_cap` became nullable for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_fee` became nullable for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_cap` became nullable for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_fee` became nullable for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_cap` became optional for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_fee` became optional for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_cap` became optional for the status `201`
  - the response property `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_fee` became optional for the status `201`
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_cap` became nullable
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_fee` became nullable
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_cap` became nullable
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_fee` became nullable
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_cap` became optional
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/TieredPlanPricing]/tiers/items/flat_fee` became optional
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_cap` became optional
  - the request property `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing/oneOf[#/components/schemas/VolumePlanPricing]/tiers/items/flat_fee` became optional
- **2026-06-01** (v1) `07a61fe347a5`: 1 breaking, 1 warning
  - removed the required property `entitlements/items/value/oneOf[#/components/schemas/MeteredEntitlementValue]/overage_behavior` from the response with the `201` status
  - removed the optional property `entitlements/items/value/oneOf[#/components/schemas/MeteredEntitlementValue]/warning_threshold_pct` from the response with the `201` status
- **2026-05-28** (v1) `ed86d893d43e`: 1 breaking, 1 warning, 2 info
  - added `#/components/schemas/BooleanEntitlementValue, #/components/schemas/MeteredEntitlementValue` to the `entitlements/items/value` response property `oneOf` list for the response status `201`
  - removed the request property `entitlements`
  - added discriminator to `entitlements/items/value` response property for the response status `201`
  - removed `subschema #1, subschema #2` from the `entitlements/items/value` response property `oneOf` list for the response status `201`
- **2026-05-18** (v1) `0cdc37620ffb`: 2 info
  - added the new optional request property `entitlements`
  - added the optional property `entitlements` to the response with the `201` status
- **2026-03-31** (v1) `ee465c53a423`: 4 info
  - request discriminator property name changed for `components/items/fee` request property from `fee_type` to `type`
  - request discriminator property name changed for `components/items/fee/oneOf[#/components/schemas/UsagePlanFee]/pricing` request property from `discriminator` to `type`
  - response discriminator property name changed for `price_components/items/fee/oneOf[#/components/schemas/Fee]/` response property from `fee_type` to `type` for the response status `201`
  - response discriminator property name changed for `price_components/items/fee/oneOf[#/components/schemas/Fee]/oneOf[#/components/schemas/UsagePlanFee]/pricing` response property from `discriminator` to `type` for the response status `201`
- **2026-03-27** (v1) `de35c02bb0d2`: 3 warning, 1 info
  - added the new `TOO_MANY_REQUESTS` enum value to the `code` response property for the response status `400`
  - added the new `TOO_MANY_REQUESTS` enum value to the `code` response property for the response status `401`
  - added the new `TOO_MANY_REQUESTS` enum value to the `code` response property for the response status `409`
  - added the non-success response with the status `429`
- **2026-03-20** (v1) `51c7018cc5ef`: 1 info
  - endpoint added
- **2025-07-09** (v1) `dece17f86f99`: 1 breaking
  - api removed without deprecation

---

[Operation](https://skmtc.dev/meteroid-oss/apis/meteroid/docs/api/v1/plans/post.md) - [API](https://skmtc.dev/meteroid-oss/apis/meteroid.md) - [Page](https://skmtc.dev/meteroid-oss/apis/meteroid/changes/api/v1/plans/post)
