---
title: "Create a sponsored charge point"
method: POST
path: "/api/v1/sponsored-charge-points"
tags: ["Sponsored Charge Points"]
---

# Create a sponsored charge point

`POST /api/v1/sponsored-charge-points`

Creates a sponsored charge point for a given user, the sponsorship is automatically approved.</br></br>*Note:* a charge point can only be sponsored to one user_id</br>Required scope: `sponsored-charge-points:write` </br>Organization authorization: `supported`

## Request body

- CreateSponsoredChargePointDto
  - `sponsoringTeamId` integer — Id of the team that is sponsoring this charge point
  - `chargePointId` integer — Id of the charge point to be sponsored
  - `userId` integer — Id of the user to have a charge point sponsored
  - `priceGroupId` integer, nullable — The price group for this sponsorship, Only price groups of type `reimbursement` or `sponsored` are allowed</br></br>*Note:* if the `priceGroupId` is null the charge point cost price group will be used instead, if the charge point has no cost price group set the request will fail, please ensure that charge point has a valid cost group assigned when not providing a `priceGroupId`
  - `payoutSchedule` 'end-of-month' | 'realtime' | 'other', required
  - `payForSubscriptions` boolean — Indicates that company pay for subscriptions
  - `autoApproveElectricityCost` boolean, nullable — When true, employee-submitted electricity costs on this sponsored charge point are auto-approved without manual review. When omitted, the value is inherited from the team member's (or team-member-profile's) `auto_approve_electricity_cost` setting.
  - `note` string, nullable — Note for the sponsored charge point

## Response `201`

Sponsored charge point created

- SponsoredChargePoint
  - `id` integer — Id of this sponsored charge point
  - `teamId` integer — Id of the team of this sponsored charge point
  - `payout` 'end-of-month' | 'realtime' | 'other', required
  - `note` string, nullable — Note for the sponsored charge point
  - `payForSubscriptions` boolean — Indicates the company pays for the subscriptions
  - `autoApproveElectricityCost` boolean — When true, employee-submitted electricity costs on this sponsored charge point are auto-approved without manual review.
  - `operator` Operator
    - `id` integer — ID of the operator
    - `name` string, required — Name of operator
    - `identifier` string, required — Identifier of operator
    - `partnerId` integer, nullable — Id of the partner
    - `vatNumber` string, nullable — VAT number
  - `chargePoint` SponsoredChargePointData, required
    - `id` integer — Id of this charge point
    - `name` string, nullable — Name of the charge point
    - `user` PublicUser
      - `id` integer, required — Id of the user
      - `displayName` string, required — Formatted name to be displayed
      - `isGuest` boolean, nullable — Indicates whether this user is a guest (ad-hoc) user who has not yet completed registration
    - `sponsoredPriceGroup` PriceGroup
      - `id` integer, required — Id of the price group
      - `teamId` integer, nullable — Id of the team for which this price group belongs
      - `name` string, required — Name of the price group
      - `default` boolean
      - `type` 'public' | 'member' | 'sponsored' | 'cost' | 'roaming' | 'reimbursement' | 'member_cost' | 'other', required
      - `masterPrice` Pricing, required
        - `id` integer, required — Id of the pricing
        - `description` string, nullable — Name of the pricing. It will be null when it's the master price
        - `type` 'kwh' | 'min' | 'spot' | 'tariff' | 'starting' | 'charging' | 'idle' | 'minute', required
        - `master` boolean, required — If this is the master price (not a fee)
        - `dynamicPricing` boolean, required — If it's a dynamic price. It will be true if a `tariffId` is present.
        - `endAtFullyCharged` boolean, required — Used by the Minute fee and `min` master price. True means it will stop applying the pricing 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 % of VAT on top the price calculations</br>*Note*: `vat` rates differ from country to country.
        - `percentage` number, float, nullable — Used by Spot Price. It will multiply the fallback price by this percentage
        - `tariffId` integer, nullable — The id of the selected Tariff
        - `updatedAt` string, date-time, required — When the pricing was last updated
        - `applyAfterMinutes` integer, nullable — Used by Charging, Minute and Idle Fees. After how many minutes the fee should start being applied.
        - `price` Money, required
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMin` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `feePriceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `additional` AdditionalPricing[], 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` Money, required
            - `amount` integer, required — The amount of money
            - `currency` Currency, required
              - …
            - `locale` string, required — Current user locale
          - `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
        - `tagId` integer, nullable — The id of the charge pricing tag for this pricing
        - `interval` 'hourly' | 'quarterHourly'
        - `gracePeriods` GracePeriod[], 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
      - `tariffs` Pricing[], nullable, required — Tariffs of the price group
        - `id` integer, required — Id of the pricing
        - `description` string, nullable — Name of the pricing. It will be null when it's the master price
        - `type` 'kwh' | 'min' | 'spot' | 'tariff' | 'starting' | 'charging' | 'idle' | 'minute', required
        - `master` boolean, required — If this is the master price (not a fee)
        - `dynamicPricing` boolean, required — If it's a dynamic price. It will be true if a `tariffId` is present.
        - `endAtFullyCharged` boolean, required — Used by the Minute fee and `min` master price. True means it will stop applying the pricing 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 % of VAT on top the price calculations</br>*Note*: `vat` rates differ from country to country.
        - `percentage` number, float, nullable — Used by Spot Price. It will multiply the fallback price by this percentage
        - `tariffId` integer, nullable — The id of the selected Tariff
        - `updatedAt` string, date-time, required — When the pricing was last updated
        - `applyAfterMinutes` integer, nullable — Used by Charging, Minute and Idle Fees. After how many minutes the fee should start being applied.
        - `price` Money, required
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMin` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `feePriceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `additional` AdditionalPricing[], 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` Money, required
            - `amount` integer, required — The amount of money
            - `currency` Currency, required
              - …
            - `locale` string, required — Current user locale
          - `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
        - `tagId` integer, nullable — The id of the charge pricing tag for this pricing
        - `interval` 'hourly' | 'quarterHourly'
        - `gracePeriods` GracePeriod[], 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` Pricing[], nullable — Fees of the price group
        - `id` integer, required — Id of the pricing
        - `description` string, nullable — Name of the pricing. It will be null when it's the master price
        - `type` 'kwh' | 'min' | 'spot' | 'tariff' | 'starting' | 'charging' | 'idle' | 'minute', required
        - `master` boolean, required — If this is the master price (not a fee)
        - `dynamicPricing` boolean, required — If it's a dynamic price. It will be true if a `tariffId` is present.
        - `endAtFullyCharged` boolean, required — Used by the Minute fee and `min` master price. True means it will stop applying the pricing 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 % of VAT on top the price calculations</br>*Note*: `vat` rates differ from country to country.
        - `percentage` number, float, nullable — Used by Spot Price. It will multiply the fallback price by this percentage
        - `tariffId` integer, nullable — The id of the selected Tariff
        - `updatedAt` string, date-time, required — When the pricing was last updated
        - `applyAfterMinutes` integer, nullable — Used by Charging, Minute and Idle Fees. After how many minutes the fee should start being applied.
        - `price` Money, required
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMin` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `priceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `feePriceMax` Money
          - `amount` integer, required — The amount of money
          - `currency` Currency, required
            - `id` integer, nullable — id of the currency
            - `master` boolean — Whether the currency is master or not, master meaning the default currency
            - `identifier` string, required — 3 characters identifier
            - `name` string — Name of the currency
            - `decimals` integer, required — How many decimals the currency has
          - `locale` string, required — Current user locale
        - `additional` AdditionalPricing[], 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` Money, required
            - `amount` integer, required — The amount of money
            - `currency` Currency, required
              - …
            - `locale` string, required — Current user locale
          - `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
        - `tagId` integer, nullable — The id of the charge pricing tag for this pricing
        - `interval` 'hourly' | 'quarterHourly'
        - `gracePeriods` GracePeriod[], 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
      - `teamMemberCount` integer, nullable — To how many team members the price group has been applied to
      - `chargePointCount` integer, nullable — To how many charge points the price group has been applied to
      - `appliedTo` PriceGroupAppliedTo, required
        - `chargePoints` integer[], required — Id's of the ChargePoints this Pricegroup has been applied to
        - `sites` integer[], required — Id's of the Sites this Pricegroup has been applied to
        - `teamMembers` integer[], required — Id's of the Team Members this Pricegroup has been applied to
      - `createdAt` string, date-time, required — When the price group was created
      - `updatedAt` string, date-time, nullable — When the price group was updated
    - `location` Location, required
      - `coordinates` Coordinates
        - `latitude` number, double — Latitude value of coordinate
        - `longitude` number, double — Longitude value of coordinate
      - `addressLabel` string, nullable — The full address.
      - `address` PartialAddress
        - `address1` string, nullable — First line of address
        - `address2` string, nullable — Second line of address
        - `address3` string, nullable — Third line of address
        - `zip` string, nullable — Zip-code
        - `city` string, nullable — City (readable)
        - `province` string, nullable — Province
        - `country` string, nullable — Country (readable)
        - `countryAreaId` integer, nullable — Country area id
    - `serialNumber` string, nullable — Serial number for this charge point
    - `lastMeterReadingKwh` number, double, nullable — Last meter reading (KWH) for this charge point
    - `maxKw` number, double, nullable — Max KW available at this charge point.
    - `chargePointModelId` integer, nullable — The ID of the charge point model for this charge point.
    - `brandName` string, nullable — Brand name for this charge point
    - `modelName` string, nullable — Model name for this charge point
    - `firmwareVersion` string, nullable — Current firmware version for this charge point
    - `isActive` boolean — Indicates if this charge point is active (true) or not (false). Active = fully onboarded to Monta.
    - `activeAt` string, date-time, nullable — Last date when charge point was activated
    - `createdAt` string, date-time, required — Creation date of this charge point
    - `updatedAt` string, date-time, required — Date this charge point was last updated
    - `deletedAt` string, date-time, nullable — Date this charge point was deleted
  - `acceptedAt` string, date-time, nullable — Date the sponsorship was accepted
  - `createdAt` string, date-time, required — Creation date of this sponsored charge point
  - `updatedAt` string, date-time, required — Date this sponsored charge point was last updated
  - `deletedAt` string, date-time, nullable — Date this sponsored charge point was deleted

## Other responses

- `400` — The request is invalid
- `401` — Consumer with provided credentials was not found
- `403` — Operator doesn't have access to resource
- `404` — Entity with the provided id was 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)
