---
title: "Apply custom upgrade"
method: POST
path: "/2026-04/subscription/{subscriptionId}/upgrade/custom"
---

# Apply custom upgrade

`POST /2026-04/subscription/{subscriptionId}/upgrade/custom`

## Request

- Base URL: `https://api.loopsubscriptions.com/admin`
- URL: `https://api.loopsubscriptions.com/admin/2026-04/subscription/{subscriptionId}/upgrade/custom`
- Auth: API key in header `X-Loop-Token`

This endpoint allows you to upgrade an existing line of a subscription to a new product, quantity, billing frequency, delivery frequency, and pricing configuration

## Path parameters

- `subscriptionId` string, required

## Request body

- object
  - `oldLineId` integer, required: ID of the existing subscription line that needs to be upgraded
  - `newVariantShopifyId` integer, required: Shopify variant ID of the new product
  - `quantity` integer, required: Quantity of the new product
  - `customDiscount` object: Discount to be applied on new product
    - `type` 'NONE' | 'FIXED_PRICE' | 'PERCENTAGE' | 'PRICE': Type of discount to be applied on the base price of the new product
    - `value` number, float: Value of discount type
  - `billingPolicy` object: Billing frequency configuration
    - `interval` 'WEEK' | 'MONTH' | 'YEAR'
    - `intervalCount` integer
  - `deliveryPolicy` object: Delivery frequency configuration
    - `interval` 'WEEK' | 'MONTH' | 'YEAR'
    - `intervalCount` integer
  - `sellingPlanId` integer: Loop ID of the selling plan that needs to be applied to the product.

## Response `200`

The upgrade has been applied successfully

- object
  - `success` boolean
  - `message` string
  - `data` unknown
  - `code` string
  - `pageInfo` unknown

---

[API](https://skmtc.dev/loopwork/apis/loop-admin.md) - [All operations](https://skmtc.dev/loopwork/apis/loop-admin/llms.txt) - [OpenAPI document](https://skmtc.dev/loopwork/apis/loop-admin/revisions/1eaf81bcb1ea?raw)
