---
title: "Replace package product"
method: PUT
path: "/v1/PackageProducts/{id}"
tags: ["PackageProducts"]
---

# Replace package product

`PUT /v1/PackageProducts/{id}`

Replace an existing package product.

## Path parameters

- `id` integer, required

## Request body

- RevAppModelsPackageProduct
  - `package_product_id` integer — Primary identifier for this package product.
  - `product_id` integer, required — Product id for this package product.
  - `package_id` integer, required — Package id for this package product.
  - `description` string, required — Description for this package product.
  - `code_1` string — Primary provisioning code (i.e. USOC).
  - `code_2` string — Secondary provisioning code (i.e. FID).
  - `rate` number, double — Per month charge to the end user.
  - `cost` number, double — Per month cost from provider.
  - `buy_rate` number, double — Per month charge to a reseller.
  - `quantity` integer — Number of this type of package product provided to end user. This is multiplied by the Rate field when calculating a recurring charge.
  - `tax_included` boolean — Indicates total amount of charge should not exceed the value in rate. The base amount is adjusted dynamically on charges produced each month, to ensure base + tax = rate.
  - `group_on_bill` boolean — Indicates this package product's rate should be grouped into a sum package amount when displayed on a bill.
  - `itemize` boolean — Indicates that, although their price is grouped, the name of the package product will still show indented underneath on the bill, but with no individual price displayed.
  - `credit` boolean — Indicates that this package product is a credit.
  - `state_provinces` string[] — Restricts this package product to a list of states and/or provinces (2-Character abbreviation).
  - `order_type` 'ALL' | 'NEW' | 'CONVERSION' | 'OTHER' — Restricts this package product to this order type.
  - `links` RevAppComponentsLink[]
    - `rel` string
    - `href` string

## Response `200`

OK

- RevWebAPIModelsSuccess
  - `ok` boolean

## Other responses

- `400` — BadRequest
- `500` — InternalServerError

---

[API](https://skmtc.net/rev-io/apis/rev-io-api.md) · [All operations](https://skmtc.net/rev-io/apis/rev-io-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rev-io/rev-io-api/revisions/135571434f6c/schema)
