---
title: "Creates a price group"
method: POST
path: "/api/v1/price-groups"
tags: ["Price Groups"]
---

# Creates a price group

`POST /api/v1/price-groups`

Required scope: `price-groups:write` </br>Organization authorization: `supported`

## Request body

- CreateOrUpdatePriceGroupDto
  - `teamId` integer, nullable — Team ID. When omitted the price group is created at operator scope and owned by the calling operator.
  - `name` string, required — Name of the price group
  - `type` 'public' | 'member' | 'sponsored' | 'cost' | 'roaming' | 'reimbursement' | 'member_cost' | 'other', required
  - `masterPrice` CreateOrUpdatePricingDto, required
    - `description` string, nullable — Name of the pricing. It is null when it's the master price
    - `type` 'kwh' | 'min' | 'spot' | 'tariff' | 'starting' | 'charging' | 'idle' | 'minute', required
    - `endAtFullyCharged` boolean, required — Used by the Minute fee. True means it will stop charging the fee when the charge is complete. False means it will stop charging the fee when the cable is unplugged
    - `vat` boolean, required — Used by Spot Price. True means it will add 25% VAT in the price calculations
    - `percentage` number, nullable — Used by Spot Price. It will multiply the fallback price by this percentage
    - `tariffId` integer, nullable — The id of the selected Tariff
    - `tagId` integer, nullable — The id of the selected charge pricing tag
    - `applyAfterMinutes` integer, nullable — Used by Charging, Minute and Idle Fees. After how many minutes the fee should start being applied.
    - `price` number, required — The price of this Fee or Master price, </br>**Note**: the master price cannot be a negative value
    - `priceMin` number, nullable — Used by spot price. The minimum that the raw spot price can be. This will be used in calculations if spot price is lower than this
    - `priceMax` number, nullable — Used by spot price. The maximum that the raw spot price can be. This will be used in calculations if spot price is higher than this
    - `feePriceMax` number, nullable — Used by Idle fee. The maximum the user will be charged for the idle fee
    - `additional` CreateAdditionalPricingDto[], nullable — Used by spot price. Additional absolute money or percentages values to be added on top of the previous calculations
      - `type` 'absolute' | 'percentage', required
      - `value` number, required — The value of this additional pricing.
      - `title` string, nullable — A title for this additional pricing.
    - `from` string, date-time, nullable — DateTime "from" time to which this pricing should apply from
    - `to` string, date-time, nullable — DateTime "to" time to which this pricing should apply to
    - `interval` 'hourly' | 'quarterHourly'
    - `gracePeriods` CreateOrUpdateGracePeriod[], nullable — Grace periods during which idle fees are not applied
      - `startTime` string, partial-time, required — Start time for the grace period
      - `endTime` string, partial-time, required — End time for the grace period
  - `fees` CreateOrUpdatePricingDto[], nullable — All the fees for the price group
    - `description` string, nullable — Name of the pricing. It is null when it's the master price
    - `type` 'kwh' | 'min' | 'spot' | 'tariff' | 'starting' | 'charging' | 'idle' | 'minute', required
    - `endAtFullyCharged` boolean, required — Used by the Minute fee. True means it will stop charging the fee when the charge is complete. False means it will stop charging the fee when the cable is unplugged
    - `vat` boolean, required — Used by Spot Price. True means it will add 25% VAT in the price calculations
    - `percentage` number, nullable — Used by Spot Price. It will multiply the fallback price by this percentage
    - `tariffId` integer, nullable — The id of the selected Tariff
    - `tagId` integer, nullable — The id of the selected charge pricing tag
    - `applyAfterMinutes` integer, nullable — Used by Charging, Minute and Idle Fees. After how many minutes the fee should start being applied.
    - `price` number, required — The price of this Fee or Master price, </br>**Note**: the master price cannot be a negative value
    - `priceMin` number, nullable — Used by spot price. The minimum that the raw spot price can be. This will be used in calculations if spot price is lower than this
    - `priceMax` number, nullable — Used by spot price. The maximum that the raw spot price can be. This will be used in calculations if spot price is higher than this
    - `feePriceMax` number, nullable — Used by Idle fee. The maximum the user will be charged for the idle fee
    - `additional` CreateAdditionalPricingDto[], nullable — Used by spot price. Additional absolute money or percentages values to be added on top of the previous calculations
      - `type` 'absolute' | 'percentage', required
      - `value` number, required — The value of this additional pricing.
      - `title` string, nullable — A title for this additional pricing.
    - `from` string, date-time, nullable — DateTime "from" time to which this pricing should apply from
    - `to` string, date-time, nullable — DateTime "to" time to which this pricing should apply to
    - `interval` 'hourly' | 'quarterHourly'
    - `gracePeriods` CreateOrUpdateGracePeriod[], nullable — Grace periods during which idle fees are not applied
      - `startTime` string, partial-time, required — Start time for the grace period
      - `endTime` string, partial-time, required — End time for the grace period

## Response `201`

Price group successfully created

## Other responses

- `400` — The request is invalid
- `401` — Consumer with provided credentials was not found
- `403` — Operator doesn't have access to resource
- `404` — Team not found

---

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