# Coupon expiration modified

Endpoint: POST coupon-expiration-modified
Version: latest
Security: SecretApiKey, JWT

## Request fields (application/json):

  - `couponId` (string)
    ID of the coupon.

  - `eventType` (string)
    Type of event that triggered the webhook.
    Enum: "coupon-expiration-modified", "coupon-expired", "coupon-issued", "coupon-modified"

  - `_embedded` (object)
    Embedded objects related to the coupon event.

  - `_embedded.coupon` (object)
    Coupons and discounts.

  - `_embedded.coupon.discount` (object, required) — one of (discriminator: type):
    Coupon discount.
    - fixed:
      - `amount` (number, required)
        Amount of discount.
      - `currency` (string, required)
        Currency code in ISO 4217 format.
      - `type` (string, required)
        Enum: "fixed"
      - `context` (string)
        Context in which the discount applies.
        Enum: "items", "shipping", "items-and-shipping"
    - percent:
      - `value` (number, required)
        Percentage of discount.
      - `type` (string, required)
        Enum: "percent"
      - `context` (string)
        Context in which the discount applies.
        Enum: same as `context` in "fixed" (3 values)

  - `_embedded.coupon.restrictions` (array) — one of (discriminator: type):
    Coupon restrictions.
All type values in this array must be unique.
    - discounts-per-redemption:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "discounts-per-redemption"
      - `quantity` (integer, required)
        Permitted number of discounts per redemption.
    - maximum-order-amount:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "maximum-order-amount"
      - `amount` (number, required)
        Maximum order amount that is allowed to apply the coupon.
      - `currency` (string, required)
        Currency code in ISO 4217 format.
    - minimum-order-amount:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "minimum-order-amount"
      - `amount` (number, required)
        Minimum order quantity that is required to apply the coupon.
      - `currency` (string, required)
        Currency code in ISO 4217 format.
    - paid-by-time:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "paid-by-time"
      - `time` (string, required)
        Date and time when a coupon redemption is no longer valid, and the coupon is removed from unpaid invoices if applied.

> Note: This date-time cannot be changed.
    - redemptions-per-customer:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "redemptions-per-customer"
      - `quantity` (integer, required)
        Permitted number of redemptions per customer.
    - restrict-to-bxgy:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-bxgy"
      - `buy` (array, required)
        One or more plan and quantity definitions that must be purchased to receive all plans and quantities that are defined in the get instruction.
All planId values in this array must be unique.
      - `buy.planId` (string, required)
        Plan ID of the item being purchased.
This value must be unique within the buy.items array.
        Example: "plan_0YV7DENSVGDBW9S71XZNNYYQ0X"
      - `buy.quantity` (integer, required)
        Total quantity of the associated plan ID that must be purchased for this restriction to apply.
      - `get` (array, required)
        One or more plan and quantity definitions that are added to a purchase if all definitions in the buy condition are met.
All planId values in this array must be unique.
      - `get.planId` (string, required)
        Plan ID of the item that is to be received by the customer.
This value must be unique within the get.items array.
        Example: "plan_0YV7DENSVGDBW9S71XZNNYYQ0X"
      - `get.quantity` (integer, required)
        Total quantity of the associated plan ID that is to be received by the customer.
    - restrict-to-countries:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-countries"
      - `countries` (array, required)
        Countries where the coupon can be applied, in ISO Alpha-2 code format.
For examples, see [ISO.org](https://www.iso.org/obp/ui/#search/code/).
    - restrict-to-customer-tags:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-customer-tags"
      - `tags` (array, required)
        Customer tags on which a coupon can be applied.
      - `requireAllTags` (boolean, required)
        Specifies if the customer must have all listed tags,
or at least one of the listed tags, to redeem a coupon.
        Enum: true, false
    - restrict-to-customers:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-customers"
      - `customerIds` (array, required)
        Customer IDs on which a coupon can be applied.
    - restrict-to-exclusive-application:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-exclusive-application"
    - restrict-to-invoices:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-invoices"
      - `invoiceIds` (array, required)
        Invoice IDs on which a coupon can be applied.
    - restrict-to-plans:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-plans"
      - `planIds` (array, required)
        Plan IDs on which a coupon can be applied.
      - `minimumQuantity` (integer)
        Minimum quantity that is required to apply the restriction and subsequent discount.
    - restrict-to-products:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-products"
      - `productIds` (array, required)
        Product IDs on which a coupon can be applied.
      - `minimumQuantity` (integer)
        Minimum quantity that is required to apply the restriction and subsequent discount.
    - restrict-to-subscriptions:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "restrict-to-subscriptions"
      - `subscriptionIds` (array, required)
        Subscription IDs on which a coupon can be applied.
    - total-redemptions:
      - `type` (string, required)
        Type of coupon restriction.
        Enum: "total-redemptions"
      - `quantity` (integer, required)
        Permitted total number of redemptions.

  - `_embedded.coupon.description` (string)
    Description of the coupon.
Use this field to provide a description for the invoice discount item.

If this field is empty,
the invoice discount item description uses the related coupon ID,
in the following format: Coupon "COUPON-ID".

  - `_embedded.coupon.issuedTime` (string, required)
    Date and time when the coupon is issued.
This value may also be described as start time of the coupon.

  - `_embedded.coupon.expiredTime` (string,null)
    Date and time when the coupon expires.

  - `_links` (array)
    Links to related resources.

  - `_links.href` (string)
    URL of the link.

  - `_links.rel` (string)
    Relationship type of the link.
    Enum: "coupon"


## Response 2xx fields
