---
title: "Create an offer"
method: POST
path: "/v1/offers"
tags: ["Manage Offer (Synchronous API)"]
---

# Create an offer

`POST /v1/offers`

Creates a new offer.

## Headers

- `x-siteId` string, required

## Request body

- CreateOfferRequest
  - `name` string, required — Name of an offer.
  - `description` string — A description of the offer.
  - `externalReferenceOfferId` string — The external reference identifier of the offer.
  - `offerType` string, required — Type of the offer.
  - `offerTrigger` string, required — Determines how the offer is triggered. Possible values are promotionalUrlOrExternalTriggered, alwaysTriggered, couponCode, siteTest.
  - `couponType` string, required — Type of the added coupon. If offerTrigger is couponCode then couponType field is required. Possible values are importCouponCodes, enterCouponCodes, generateCouponCodes, rangeCouponCodes.
  - `offerStartDate` string — Start date of an offer.
  - `offerEndDate` string — End date of an offer.
  - `supportedLocales` object[] — The locales supported by the offer.
    - `locale` string — The supported locale for an offer. The en_US locale is also supported
  - `totalUsageLimit` number — Total usuage limit of an offer.
  - `shopperUsageLimit` number — Shopper usage limit of an offer.
  - `catalogId` string — The catalog associated to the offer.
  - `currency` string, required — The currency of an offer. It is required only when we have product’s discountType either 'Amount' or 'Amount Off'.
  - `priceListType` string — The price list of the offer.
  - `products` object[] — Eligibility and discount options for the product within the offer.
    - `id` string — The product identifier.
    - `discountType` string — The discount type of the product. Possible values are amountOff, percentOff.
    - `discountValue` number — The discount value of the product.

## Response `201`

Offer successfully created.

- CreateOffer
  - `id` string — Identifier of an offer..
  - `status` string — Status of an offer.
  - `name` string — The name of the offer.
  - `description` string — Description of an offer.
  - `externalReferenceOfferId` string — The external reference identifier of the offer.
  - `siteId` string — The site ID associated with the offer.
  - `offerType` string — The type of the offer.
  - `offerTrigger` string — Determines how the offer is triggered. Possible values are alwaysTriggered, couponCode, siteTest.
  - `offerStartDate` string — Start date of an offer.
  - `offerEndDate` string — End date of an offer. End date must be a future date.
  - `creationDate` string — The date of creation of an offer.
  - `modificationDate` string — The date of modification of an offer.
  - `defaultLocale` string — Default locale of an offer.
  - `supportedLocales` object[] — The locales supported by the offer.
    - `locale` string — The supported locale for an offer. The en_US locale is also supported
  - `totalUsageLimit` number — Total usuage limit of an offer.
  - `shopperUsageLimit` number — Shopper usage limit of an offer.
  - `catalogId` string — The catalog associated to the offer.
  - `currency` string — The currency of an offer.
  - `priceListType` string — The price list of an offer.
  - `products` object[] — Eligibility and discount options for the product within the offer.
    - `id` string — The product identifier.
    - `discountType` string — Discount type of the product. Possible values are amountOff, percentOff.
    - `discountValue` number — Discount value of the product.

## Other responses

- `400` — * Bad request.
- `401` — * Please verify your API key and secret (if applicable) is correct.

---

[API](https://skmtc.net/digitalriver/apis/commerce-api-suite-admin-apis.md) · [All operations](https://skmtc.net/digitalriver/apis/commerce-api-suite-admin-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitalriver/commerce-api-suite-admin-apis/revisions/a6efafc1669c/schema)
