---
title: "Update coupon series"
method: PUT
path: "/coupon/series/{id}"
---

# Update coupon series

`PUT /coupon/series/{id}`

Lets you update existing coupon series details.

## Path parameters

- `id` integer, required

## Request body

- object
  - `CouponSeriesV2` object — Details of the coupon series.
    - `customPropertyMap` object
      - `key1` string — Mapping of each field in key:value pairs.
      - `key2` string
      - object
        - `standard_terms_and_conditions` string — Map terms and conditions.
    - `description` string — Brief description of the card series.
    - `discountCode` string — Discount code of the coupon.
    - `validTillDate` string, date — Validity of the card series in UTC timestamp. Format: YYYY-MM-DDTHH:MM:SS+/-(time-zone).
    - `expiryStrategyType` string — Pass `SERIES_EXPIRY` (to expire along with the offer), `MONTHS_END` (to expire at the end of specific months). For the month end expiry, specify expiryStrategyType, expiryStrategyType, and expiryStrategyValue.
    - `expiryStrategyValue` integer — Expiry strategy value for the selected expiryStrategyType type.
    - `maxCreate` integer — Limit number of coupons to be created from the coupon series (offer).
    - `maxRedeem` integer — Limit number of coupons to be redeemed from the coupon series.
    - `isTransferrable` boolean — Pass `true` if the recipient can transfer the coupon to someone else.
    - `anyUser` boolean — Pass `true` to allow any customer to redeem the coupon, `false` to allow only the customer who received the coupon to redeem it.
    - `sameUserMultipleRedeem` boolean — Pass `true` to allow a customer to redeem the the coupon multiple times.
    - `isReferralExistingUsersAllowed` boolean — Deprecated
    - `isMultipleUseAllowed` boolean — Can a coupon be used multiple times?
    - `isValidationRequired` boolean — Whether validation code checking is required to redeem coupon. Deprecated.
    - `isValidWithDiscountedItem` boolean — Deprecated
    - `seriesCode` string — Unique alpha-numeric code of the coupon series. Deprecated.
    - `smsTemplate` string — Message to be sent to issue a coupon from the series. Use predefined tags in the message wherever required. For example, first_name, last_name, voucher (for voucher code) and so on.
    - `isSMSDisabled` boolean — Pass t`rue` to disable sending coupon related SMS to audience.
    - `info` string — Information or description about the coupon series.
    - `isMultipleVouchersPerUserAllowed` boolean — Can more than one coupon be issued to a customer?
    - `doNotResendExistingVoucher` boolean — If true, it does not allow resending coupon to the customer. Pass `false` to allow resending coupon if the customer misses it.
    - `mutualExclusiveSeriesIds` integer[] — List of offer ids, which are mutually exclusive to this offer. That is, if a customer has a coupon specific to the in the list of offer ID(s) passed here, then the customer would not get any coupon from the current series.
    - `maxVouchersPerUser` integer — Maximum number of vouchers per user in the series. -1 implies unlimited.
    - `minDaysBetweenVouchers` integer — Minimum gap (no. of days) between two consecutive coupon issuals for a customer.
    - `maxReferralsPerReferee` integer — Deprecated
    - `discountUpto` number, float — The maximum discount amount in case percentage discount.
    - `discountValue` string — Value corresponding to the discountType (percentage or flat amount discount).
    - `redemptionRange` string — When to allow redemption (days of week, dates of month, and hours of day ). For example, `"{\"dom\" : [1, 13, 31], \"dow\": [1, 2, 7], \"hours\": [0, 1, 2, 23]}"`. <br>1 for Monday in Days of week.
    - `minBillAmount` number, double — Minimum transaction amount for which the coupon redemption is applicable.
    - `maxBillAmount` number, double — Maximum transaction amount for which the coupon redemption is applicable.
    - `redemptionOrgEntityDetails` object
      - `redemptionOrgEntityType` string — Type of the org entity. Values: CONCEPT, TILL, STORE, ZONE
      - `orgEntityId` integer — Unique ID of the store, zone, concept, or till.
    - `redemptionValidFrom` string, date — Date after which the coupon can be redeemed in YYYY-MM-DDThh:mm:ssZ format.
    - `targetUserDetails` object
      - `validMaxUserTransactionLimit` integer
      - `valid` object
        - `UserRegistrationStartTime` string
      - `validUserRegistrationEndTime` string
    - `redemptionValidAfterDays` integer — Days after which the coupon redemption is valid from the date of issual.
    - `alphaNumeric` boolean — Whether the coupon codes generated automatically should be alphanumeric.
    - `randomCodeLength` integer — Length of the coupon code.
    - `resendMessageEnabled` boolean — Pass `true` to enable resending message.
    - `clientHandlingType` string — DISC_CODE (generate coupon codes automatically), GENERIC (provide a common coupon code), DISC_CODE_PIN (Upload existing coupon codes)
    - `redemptionPerCouponMaxLimit` integer — Specifies the maximum number of times a particular coupon code can be redeemed across all users.
  - `storeIdsJson` integer[] — Unique IDs of the stores where the series is applicable.
  - `isDvsEnabled` boolean — Whether DVS is enabled for the coupon series or not. Pass true for DVS coupons.
  - `dvsExpiryDate` string, date — Date and time of expiry of the DVS campaign associated with the coupon series in YYYY-MM-DDThh:mm:ssZ.
  - `shortSMSTemplate` string — Short message to send to users. Pass voucher_code to insert coupon code in the message.
  - `campaignId` integer — Unique ID of the campaign associated with the series.
  - `maxRedemptionsInSeriesPerUser` integer — Limit number of time same user can redeem the coupon
  - `minDaysBetweenRedemption` integer — Minimum number of days between any two redemption

## Response `200`

200

- union
  - object
    - `id` integer
    - `orgId` integer
    - `description` string
    - `discountCode` string
    - `validTillDate` string
    - `validDaysFromCreation` integer
    - `expiryStrategyValue` integer
    - `maxCreate` integer
    - `maxRedeem` integer
    - `isTransferrable` boolean
    - `anyUser` boolean
    - `sameUserMultipleRedeem` boolean
    - `isReferralExistingUsersAllowed` boolean
    - `isMultipleUseAllowed` boolean
    - `isValidationRequired` boolean
    - `isValidWithDiscountedItem` boolean
    - `createdBy` integer
    - `numIssued` integer
    - `numRedeemed` integer
    - `createdOn` string
    - `lastUsed` string
    - `seriesCode` string
    - `smsTemplate` string
    - `isSMSDisabled` boolean
    - `info` string
    - `isMultipleVouchersPerUserAllowed` boolean
    - `doNotResendExistingVoucher` boolean
    - `mutualExclusiveSeriesIds` string
    - `storeIdsJson` string
    - `isDvsEnabled` boolean
    - `dvsExpiryDate` string
    - `priority` integer
    - `shortSMSTemplate` string
    - `maxVouchersPerUser` integer
    - `minDaysBetweenVouchers` integer
    - `maxReferralsPerReferee` integer
    - `discountUpto` integer
    - `discountValue` integer
    - `dvsItems` string
    - `redemptionRange` string
    - `minBillAmount` integer
    - `maxBillAmount` integer
    - `redeemAtStore` string
    - `campaignId` integer
    - `tag` string
    - `maxRedemptionsInSeriesPerUser` integer
    - `minDaysBetweenRedemption` integer
    - `redemptionValidFrom` string
    - `sourceOrgId` integer
    - `issueToLoyalty` boolean
    - `redeemStoreType` string
    - `offlineRedeemType` boolean
    - `isOldFlowEnabled` boolean
    - `isPreRedeemEventRequired` boolean
    - `termsAndConditions` string
    - `signalRedemptionEvent` boolean
    - `syncToClient` boolean
    - `showPinCode` boolean
    - `numUploadedNonIssued` integer
    - `numUploadedTotal` integer
    - `redemptionValidAfterDays` integer
    - `ownedBy` string
    - `ownerId` integer
    - `ownerValidity` integer
    - `alphaNumeric` boolean
    - `shortCodeLength` integer
    - `randomCodeLength` integer
    - `fixedExpiryDate` integer
    - `numTotal` integer
    - `latestIssualTime` integer
    - `latestRedemptionTime` integer
    - `resendMessageEnabled` boolean
    - `redemptionPerCouponMaxLimit` integer
    - `seriesType` string
    - `clientHandlingType` string
    - `expiryStrategyType` string
    - `discountOn` string
    - `discountType` string
    - `updateProductData` boolean
    - `externalIssual` boolean
    - `warnings` unknown[]
      - unknown
  - object
    - `id` integer
    - `orgId` integer
    - `description` string
    - `discountCode` string
    - `validTillDate` string
    - `validDaysFromCreation` integer
    - `expiryStrategyValue` integer
    - `maxCreate` integer
    - `maxRedeem` integer
    - `isTransferrable` boolean
    - `anyUser` boolean
    - `sameUserMultipleRedeem` boolean
    - `isReferralExistingUsersAllowed` boolean
    - `isMultipleUseAllowed` boolean
    - `isValidationRequired` boolean
    - `isValidWithDiscountedItem` boolean
    - `createdBy` integer
    - `numIssued` integer
    - `numRedeemed` integer
    - `createdOn` string
    - `lastUsed` string
    - `seriesCode` string
    - `smsTemplate` string
    - `isSMSDisabled` boolean
    - `info` string
    - `isMultipleVouchersPerUserAllowed` boolean
    - `doNotResendExistingVoucher` boolean
    - `mutualExclusiveSeriesIds` string
    - `storeIdsJson` string
    - `isDvsEnabled` boolean
    - `dvsExpiryDate` string
    - `priority` integer
    - `shortSMSTemplate` string
    - `maxVouchersPerUser` integer
    - `minDaysBetweenVouchers` integer
    - `maxReferralsPerReferee` integer
    - `discountUpto` integer
    - `discountValue` integer
    - `dvsItems` string
    - `redemptionRange` string
    - `minBillAmount` integer
    - `maxBillAmount` integer
    - `redeemAtStore` string
    - `campaignId` integer
    - `tag` string
    - `maxRedemptionsInSeriesPerUser` integer
    - `minDaysBetweenRedemption` integer
    - `redemptionValidFrom` string
    - `sourceOrgId` integer
    - `issueToLoyalty` boolean
    - `redeemStoreType` string
    - `offlineRedeemType` boolean
    - `isOldFlowEnabled` boolean
    - `isPreRedeemEventRequired` boolean
    - `termsAndConditions` string
    - `signalRedemptionEvent` boolean
    - `syncToClient` boolean
    - `showPinCode` boolean
    - `numUploadedNonIssued` integer
    - `numUploadedTotal` integer
    - `redemptionValidAfterDays` integer
    - `ownedBy` string
    - `ownerId` integer
    - `ownerValidity` integer
    - `alphaNumeric` boolean
    - `shortCodeLength` integer
    - `randomCodeLength` integer
    - `fixedExpiryDate` integer
    - `numTotal` integer
    - `latestIssualTime` integer
    - `latestRedemptionTime` integer
    - `resendMessageEnabled` boolean
    - `redemptionPerCouponMaxLimit` integer
    - `seriesType` string
    - `clientHandlingType` string
    - `expiryStrategyType` string
    - `discountOn` string
    - `discountType` string
    - `updateProductData` boolean
    - `externalIssual` boolean
    - `warnings` unknown[]
      - unknown

## Other responses

- `400` — 400

---

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