---
title: "Cancel a quote"
method: POST
path: "/quotes/{quote_id}/cancel"
tags: ["Quotes"]
---

# Cancel a quote

`POST /quotes/{quote_id}/cancel`

Cancels a quote with the given `quote_id` and sets the status to `CANCELED`. Once canceled, the quote link is no longer available.

## Path parameters

- `quote_id` string, required

## Response `200`

OK

- QuoteResponse
  - `id` string — Unique identifier for the quote.
  - `buyerGenerated` boolean — Indicates if the quote was created by the buyer.
  - `copyNotesToInvoice` boolean — Determines whether notes should be copied to the invoice.
  - `coupon` string, nullable — Coupon code applied to the quote, if any.
  - `created` string, date-time — Timestamp when the quote was created.
  - `createdBy` object — Information about the user who created this quote.
    - `company` string — Company name of the creator.
    - `email` string — Email address of the creator.
    - `first` string — First name of the creator.
    - `last` string — Last name of the creator.
    - `phone` string, nullable — Phone number of the creator.
    - `userId` string, nullable — Unique user ID associated with the creator, if available.
  - `currency` string — Currency code used in the quote.
  - `discount` number — Discount amount in base currency.
  - `discountDisplay` string — Formatted display of the discount in base currency.
  - `discountInPayoutCurrency` number — Discount amount in the payout currency.
  - `discountInPayoutCurrencyDisplay` string — Formatted display of the discount in the payout currency.
  - `expires` string, date-time — Timestamp when the quote expires.
  - `expirationDateDays` integer — Number of days until the quote expires.
  - `fulfillmentTerm` 'ON_PAYMENT' | 'ON_QUOTE_ACCEPTANCE' — Defines when the quote is fulfilled (e.g., ON_PAYMENT).
  - `items` object[] — Array of items included in the quote.
    - `product` string — Product identifier or name.
    - `attributes` object, nullable — Custom key-value pairs set on this quote item. Returns `null` when no attributes were set.
    - `customPrice` boolean — Indicates if the price is custom.
    - `display` string — Display name for the product.
    - `image` string, nullable — Image filename or URL, if applicable.
    - `intervalCount` string, nullable — Number of intervals (e.g., for a subscription).
    - `period` string, nullable — Billing period for the product (e.g., Monthly).
    - `periodDays` string, nullable — Number of days in the billing period.
    - `quantity` integer — Quantity of the product.
    - `renewIntoProducts` object[] — Array of product(s) into which this item can renew.
      - `renewIntoProductId` string — Product ID into which the item renews.
      - `renewIntoPath` string — Path or identifier for the renewing product.
      - `renewIntoPrice` number, float — Price for the renewing product.
      - `renewIntoPeriod` string — Period for the renewing product (e.g., Weekly, Monthly).
      - `renewIntoLevel` integer — Level or tier for the renewal.
      - `renewIntoIntervalCount` string — Interval count for the renewal (e.g., "2" months).
      - `renewIntoUpcomingProduct` string — Upcoming product name or handle after renewal.
    - `taxes` object[] — Tax details for this item.
      - `taxValue` number — Tax amount for this item.
      - `totalTaxable` number — Total taxable amount for this item.
    - `trialDays` integer, nullable — Number of trial days, if applicable.
    - `subscription` boolean — Indicates if the item is a subscription.
    - `unitTrialPrice` number — Trial price per unit, if applicable.
    - `trialPriceWithoutTax` number, nullable — Trial price without tax, if any.
    - `trialExtendedPrice` number, nullable — Extended price for the trial, if any.
    - `trialExtendedPriceWithoutTax` number, nullable — Extended trial price without tax.
    - `trialUnitTax` number, nullable — Tax per unit during trial.
    - `trialExtendedTax` number, nullable — Extended trial tax, if any.
    - `driver` string, nullable — Driver or source reference, if any.
    - `type` string, nullable — Additional type info.
    - `unitCouponDiscount` number — Discount per unit from a coupon.
    - `unitCouponDiscountDisplay` string — Display format of coupon discount per unit.
    - `unitCouponDiscountInPayoutCurrency` number — Coupon discount in the payout currency.
    - `unitCouponDiscountInPayoutCurrencyDisplay` string — Display format of the coupon discount in payout currency.
    - `unitDiscount` number — Amount of discount per unit in base currency.
    - `unitDiscountWithoutTax` number — Per-unit discount before tax.
    - `unitDiscountDisplay` string — Formatted display of the discount per unit.
    - `unitDiscountInPayoutCurrency` number — Per-unit discount in payout currency.
    - `unitDiscountInPayoutCurrencyDisplay` string — Display format of the discount in payout currency.
    - `unitListPrice` number — List price per unit in the base currency.
    - `unitListPriceDisplay` string — Formatted display of the list price per unit in base currency.
    - `unitListPriceInPayoutCurrency` number — Per-unit list price in payout currency.
    - `unitListPriceInPayoutCurrencyDisplay` string — Formatted display of the list price in payout currency.
    - `unitPrice` number — Final price per unit in base currency.
    - `unitPriceDisplay` string — Formatted display of the final unit price.
    - `unitPriceInPayoutCurrency` number — Final price per unit in the payout currency.
    - `unitPriceInPayoutCurrencyDisplay` string — Formatted display of the final unit price in payout currency.
    - `unitPriceWithoutTax` number — Final unit price without tax.
    - `unitPriceWithoutTaxDisplay` string — Formatted display of the unit price without tax.
    - `unitListPriceWithoutTax` number — Original list price per unit before tax.
    - `unitListPriceWithoutTaxDisplay` string — Formatted display of the list price before tax.
    - `grossModeOption` string, nullable — Gross mode option, if applicable.
    - `taxMode` string — Whether tax is NET or GROSS for this item.
    - `priceDetail` object — Detailed breakdown of the item's pricing.
      - `path` string — Identifier or path for this item's pricing context.
      - `quantity` integer — Quantity used for this price detail.
      - `plans` object[] — Array of plan objects associated with pricing.
        - `path` string — Plan's product path.
        - `interval` string — Interval name (e.g., month, year).
        - `intervalLength` integer — Number of intervals per billing cycle.
        - `prices` object[] — Detailed price lines for each plan.
          - `path` string — Product path for pricing context.
          - `showUnitListPrice` number — Displayed list price per unit.
          - `showUnitNetPrice` number — Displayed net price per unit.
          - `showExtendedNetPrice` number — Displayed extended net price for all units.
          - `showExtendedListPrice` number — Displayed extended list price.
          - `showUnitDiscountAmount` number — Displayed discount amount per unit.
          - `showExtendedDiscountAmount` number — Displayed total discount across all units.
          - `showExtendedTaxes` number — Displayed total extended taxes.
          - `showTaxPercent` number — Displayed tax percentage.
          - `subscriptionUnitListPrice` number — Per-unit list price if this item is a subscription.
          - `subscriptionExtendedNetPrice` number — Extended net price for the subscription.
          - `subscriptionUnitDiscountAmount` number — Discount amount per subscription unit.
          - `subscriptionTaxMode` string — Tax mode for the subscription (NET or GROSS).
          - `unitListPrice` number — Raw list price per unit in base currency.
          - `unitNetPrice` number — Net price per unit in base currency.
          - `unitDiscountAmount` number — Discount amount per unit in base currency.
          - `extendedListPrice` number — Extended list price for all units.
          - `extendedNetPrice` number — Extended net price for all units.
          - `extendedDiscountAmount` number — Extended total discount across all units.
          - `withTaxUnitListPrice` number — Per-unit list price with tax included.
          - `withTaxUnitNetPrice` number — Per-unit net price with tax included.
          - `withTaxUnitDiscountAmount` number — Discount per unit, tax included.
          - `withTaxExtendedListPrice` number — Extended list price with tax included.
          - `withTaxExtendedNetPrice` number — Extended net price with tax included.
          - `withTaxExtendedDiscountAmount` number — Extended discount amount with tax included.
          - `withoutTaxUnitListPrice` number — List price per unit without tax.
          - `withoutTaxUnitNetPrice` number — Net price per unit without tax.
          - `withoutTaxUnitDiscountAmount` number — Discount per unit without tax.
          - `withoutTaxExtendedListPrice` number — Extended list price without tax.
          - `withoutTaxExtendedNetPrice` number — Extended net price without tax.
          - `withoutTaxExtendedDiscountAmount` number — Extended discount amount without tax.
          - `discountPercent` number — Percentage discount applied to this item.
          - `withTaxUnitProductDiscount` number — Product discount per unit, tax included.
          - `withTaxExtendedProductDiscount` number — Extended product discount with tax.
          - `withoutTaxUnitProductDiscount` number — Product discount per unit without tax.
          - `withoutTaxExtendedProductDiscount` number — Extended product discount without tax.
          - `productDiscountPercent` number — Discount percent specific to the product.
          - `roundedWithoutTaxUnitNetPrice` number — Rounded net unit price without tax.
          - `roundedWithoutTaxExtendedNetPrice` number — Rounded extended net price without tax.
          - `roundedExtendedTaxes` number — Rounded extended taxes.
          - `roundedWithTaxExtendedNetPrice` number — Rounded net price with tax included.
          - `unitTaxes` number — Tax per unit.
          - `extendedTaxes` number — Extended total taxes.
          - `taxPercent` number — Tax percentage.
          - `sourceListPrice` number — Source or original list price.
          - `sourceCurrency` string — Currency code used by the source price.
          - `lineNumber` string — Unique identifier for this price line.
          - `withholdingAmount` number — Withholding amount in base currency.
          - `withholdingAmountUSD` number — Withholding amount in USD, if different.
          - `rules` object[] — Array of pricing rules applied.
            - `name` string — Name of the rule.
            - `reason` string — Reason for applying this rule.
            - `outputCurrency` string, nullable — Currency determined by the rule.
            - `trial` string, nullable — Indicates if a trial was factored.
            - `endPrice` string, nullable — Display of the final price after the rule.
            - `priceModel` string, nullable — Pricing model (e.g., "PER_UNIT").
            - `startPrice` string, nullable — Display of the price before the rule.
            - `description` string, nullable — Brief explanation of the rule.
            - `operation` string, nullable — Operation performed by the rule.
            - `operation2` string, nullable — Secondary operation detail.
            - `taxMode` string, nullable — NET or GROSS tax mode indicated by the rule.
            - `taxRate` string, nullable — Tax rate used by the rule.
            - `taxExempt` string, nullable — Whether the item is tax exempt.
            - `unitPrice` string, nullable — Unit price in the context of this rule.
            - `unitTotal` string, nullable — Unit total used by the rule.
            - `effectiveTaxRate` string, nullable — Effective tax rate after the rule.
            - `quantity` string, nullable — Quantity used by the rule.
            - `withTaxNetUnitRoundAmount` string, nullable — Rounding amount for net unit price with tax.
          - `effectiveTaxMode` string — Final tax mode determined by the plan.
          - `dateLimitsEnabled` boolean — Indicates if date limits were enforced.
          - `discountTiers` object[] — Array of discount tier objects for this plan.
            - `min` integer — Minimum quantity for this tier.
            - `withTaxUnitNetPrice` number — Unit net price with tax in this tier.
            - `withoutTaxUnitNetPrice` number — Unit net price without tax for this tier.
            - `withoutTaxUnitDiscountAmount` number — Per-unit discount amount without tax.
            - `withTaxUnitDiscountAmount` number — Per-unit discount amount with tax included.
            - `discountPercent` number — Discount percentage for this tier.
            - `type` string — Discount type (e.g., VOLUME_PERCENT_OFF).
          - `discounts` DiscountApplied[] — Discounts applied at the plan level.
            - `discountType` string — Type of discount (e.g., "VOLUME_PERCENT_OFF").
            - `discountDuration` integer — How long (in intervals) this discount is valid.
            - `discountPath` string — Path or identifier for this discount.
            - `discountUnitAmount` number — Discount amount per unit in base currency.
            - `discountPercent` number — Discount percentage applied.
          - `withTaxStoreCurrencyExtendedNetPrice` number — Extended net price (store currency) with tax.
          - `withTaxUSDExtendedNetPrice` number — Extended net price in USD with tax.
          - `taxCode` string — Code representing the tax classification.
          - `taxFormat` string — Format or category of tax (e.g., "DIGITAL_ONLY").
          - `pricingPlanRenew` string — Renewal policy for the pricing plan (e.g., "auto").
          - `customPrice` boolean — Indicates if a custom price was used.
          - `paidTrial` boolean — Indicates if the trial period is paid.
          - `paymentRequired` boolean — Whether payment is required for the plan.
          - `reactivationEnabled` boolean — Indicates if reactivation is allowed.
          - `reactivationExpirationDays` integer — Days before a reactivation link expires.
          - `taxExemptedUnitAmount` number — Per-unit amount exempted from tax.
          - `taxExemptedExtendedAmount` number — Extended total amount exempted from tax.
          - `withoutTaxExemptionUnitNetPrice` number — Net price per unit when not tax-exempt.
          - `withoutTaxExemptionUnitListPrice` number — List price per unit when not tax-exempt.
          - `quantity` integer — Quantity used in pricing calculations.
          - `discountPath` string — Path for applying the discount, if any.
    - `quantityBehavior` string — Determines how quantity changes are handled.
    - `quantityDefault` integer — Default quantity if none is specified.
    - `discountDuration` integer — Number of intervals the discount remains valid.
    - `cancellationChoice` string — Cancellation policy (e.g., AFTER_LAST_NOTIFICATION).
    - `startNewTerm` boolean — Whether a new subscription term should begin.
    - `subscriptionCancelDisabled` boolean — Indicates if subscription cancellation is disabled.
    - `notifications` object[] — Notification rules for different events.
      - `notificationType` string — Type of notification (e.g., PAYMENT_REMINDER).
      - `enabled` boolean — Indicates if the notification is enabled.
      - `intervals` object[] — Interval definitions for sending notifications.
        - `intervalUnit` string — Unit of interval (day, week, etc.).
        - `intervalLength` integer — Length of each interval.
        - `intervalCount` integer, nullable — Number of times to repeat, if applicable.
      - `firstIntervalUnit` string — Unit for the first notification interval.
      - `firstIntervalLength` integer — Length of the first interval.
      - `firstIntervalCount` integer, nullable — How many times the first interval repeats.
    - `productDescriptions` object — Localized display and summary of the product.
      - `display` object — Localized display text.
        - `en` string
      - `summary` object — Localized summary text.
        - `en` string
  - `name` string — Name or label for the quote.
  - `notes` string, nullable — Additional notes for the quote.
  - `netTermsDays` integer — Number of days for net payment terms.
  - `quoteUrl` string — URL to view or manage the quote.
  - `recipient` object — Recipient information for the quote.
    - `company` string, nullable — Recipient's company name, if any.
    - `email` string — Recipient's email address.
    - `first` string — Recipient's first name.
    - `last` string — Recipient's last name.
    - `phone` string — Recipient's phone number.
    - `userId` string, nullable — Unique user ID for the recipient, if any.
  - `recipientAddress` object — Address of the quote recipient.
    - `addressLine1` string — First line of the address.
    - `addressLine2` string, nullable — Second line of the address, if needed.
    - `city` string — City of the address.
    - `country` string — Country code or name.
    - `postalCode` string — Postal or ZIP code for the address.
    - `region` string — State or region.
  - `siteId` string — Identifier of the site associated with this quote.
  - `status` 'OPEN' | 'CANCELED' | 'AWAITING_PAYMENT' | 'COMPLETED' | 'EXPIRED' — Current status of the quote.
  - `statusHistory` object[] — Array of objects describing status transitions.
    - `statusUpdatedTo` string — The status to which the quote was updated.
    - `statusUpdatedByFullName` string — Full name of the person (or system) updating the status.
    - `statusUpdatedByEmail` string — Email of the user (or system) who updated the status.
    - `statusUpdatedOn` string, date-time — Timestamp of the status update.
  - `subtotal` number — Subtotal in base currency before discounts and tax.
  - `subtotalDisplay` string — Formatted display of the subtotal.
  - `subtotalInPayoutCurrency` number — Subtotal in the payout currency.
  - `subtotalInPayoutCurrencyDisplay` string — Formatted display of the subtotal in the payout currency.
  - `tags` object[] — Array of tag objects associated with the quote.
    - `key` string — The tag key or name.
    - `value` string — The tag value associated with this key.
  - `tax` number — Total tax amount in base currency.
  - `taxRate` number — Tax rate applied, if any.
  - `taxType` string — Type of tax applied (e.g., TAX, VAT).
  - `total` number — Final total in base currency, after discounts/tax.
  - `totalDisplay` string — Formatted display of the total amount.
  - `totalInPayoutCurrency` number — Total in the payout currency.
  - `totalInPayoutCurrencyDisplay` string — Formatted display of the total in payout currency.
  - `updated` string, date-time — Timestamp when the quote was last updated.
  - `taxId` string, nullable — Tax ID associated with the quote, if any.
  - `source` string — Source from which the quote was generated (e.g., MANAGER).
  - `sourceIP` string, nullable — IP address from which the quote was created or updated.
  - `orderReference` string, nullable — Reference to an associated order, if any.
  - `isGrossTax` boolean — Indicates whether the quote uses gross tax.
  - `invoiceId` string, nullable — Invoice ID associated with this quote, if any.

## Other responses

- `401` — Authentication credentials are missing or invalid.
- `429` — Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header.
- `500` — Internal server error.

---

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