---
title: "Create a new rolling offer"
method: POST
path: "/offering/rolling-offer"
tags: ["Rolling Offers"]
---

# Create a new rolling offer

`POST /offering/rolling-offer`

## Headers

- `x-publisher-token` string, required

## Request body

- CreateRollingOfferDto
  - `publisherOfferId` string, required — The rolling offer ID provided by the publisher. This is the offer's **External ID** value in the Publisher Dashboard.
  - `name` string, required — The name of the rolling offer (at least 3 characters).
  - `type` 'RollingOffer', required — The type of offer - In this case 'RollingOffer'.
  - `active` boolean, required — Whether the rolling offer is active.
  - `offerUiId` string — Internal ID of the Offer UI. Required if offerExternalUiId is not provided.
  - `offerExternalUiId` string — The offer UI ID as configured in the Publisher Dashboard.
  - `priority` integer, required — The priority level of the rolling offer. The priority starts from 1, where 1 is the highest priority. **Important:** Only the rolling offer with the highest priority will be returned. Rolling offers with the same or no priority will be sorted by createdAt date in ascending order.
  - `publisherTabId` string — Tab ID in the web store.
  - `segments` string[], required — List of player segments that this rolling offer applies to.
  - `productsSequence` object[], required — The sequence of products included in the rolling offer. A minimum of 2 productSequence objects is required, with a maximum limit of 50 product sequences.
    - `index` integer, required — The order of the product in the rolling offer. The index must start from 1 and be sequential.
    - `displayName` string — Sub offer display name.
    - `products` object[], required — List of products in the rolling offer, with a maximum of 3 per productSequence object.
      - `publisherProductId` string, required — The unique ID of the product.
      - `quantity` integer, required — The quantity of the product in the rolling offer.
      - `priority` 'Main' | 'Sub', required — Specifies the display priority of a product within the rolling offer.
    - `priceInUsdCents` integer, required — The price of the product in cents. The value must be either 0 (free), or have a minimum 80 cents.
    - `progressBarPoints` object[] — List of Progress Bar offers to which this offer contributes points.
      - `publisherBarId` string — The Progress Bar offer ID provided by the publisher. This is the Progress Bar offer's **External ID** value in the Publisher Dashboard.
      - `points` number — The number of points this offer contributes to the specified Progress Bar. This value is displayed in the Points Ribbon shown on contributing offers.
    - `priceDiscount` object — Price discount applied to the offer. Not relevant for free offers.
      - `discount` integer — The discount amount.
      - `type` 'percentage' — The type of discount.
    - `productSale` object — Sale details for the product quantity (relevant only for paid sub offers). The sale will only be applied on the first product.
      - `sale` integer — The sale amount.
      - `type` 'percentage' — The type of sale.
    - `badges` object[] — List of badges associated with the rolling offer.
      - `publisherBadgeId` string — The unique identifier of the badge.
  - `schedule` object — The schedule for when the rolling offer is available.
    - `permanent` boolean, required — Whether the rolling offer is permanent.
    - `timeFrames` object[], required — Time frame for the scheduled offer. Leave blank if permanent is set to true. If permanent is false, at least 1 time frame is required. When specifying multiple timeFrames, the startTime and endTime of each must not overlap.
      - `startTime` string, date-time, required — Scheduled offer start time.
      - `endTime` string, date-time, required — Scheduled offer end time. Can't be a past date.
      - `notes` string — Notes about the scheduled offer.
  - `publisherSectionId` string — The publisher section ID.
  - `displayName` string — If not specified, the offer name will be used.
  - `description` string — The offer description.

## Response `201`

Rolling offer created successfully.

- RollingOfferDtoResponse
  - `publisherId` string — Publisher ID.
  - `offerId` string — The unique identifier of the rolling offer.
  - `publisherOfferId` string — The rolling offer ID provided by the publisher. This is the offer's **External ID** value in the Publisher Dashboard.
  - `name` string — The name of the rolling offer.
  - `type` string — The type of rolling offer.
  - `active` boolean — Whether the rolling offer is active.
  - `priority` integer — The priority level of the rolling offer. The priority starts from 1, where 1 is the highest priority. **Important:** Only the rolling offer with the highest priority will be returned. Rolling offers with the same or no priority will be sorted by createdAt date in ascending order.
  - `segments` string[] — The player segments associated with the rolling offer.
  - `publisherTabId` string — Tab ID in the web store.
  - `offerUi` object — Information about the rolling offer design, as configured in the Publisher Dashboard.
    - `offerUiId` string — The ID of the rolling offer design.
    - `active` boolean — Whether the rolling offer design is active.
    - `offerUiType` string — The type of offer design. In this case, ‘RollingOffer’.
    - `name` string — The name of the rolling offer design.
    - `description` string — The description of the rolling offer design.
    - `backgroundImage` string — The background image of the rolling offer.
    - `borderColor` object — Border color details for the rolling offer.
      - `colorOne` string — The primary border color.
      - `colorTwo` string — The secondary border color. Returned only if the border color in the UI is set to **Linear**.
      - `direction` string — The direction of the gradient between both border colors. Returned only if the border color in the UI is set to **Linear**.
    - `borderWidth` integer — The width of the border surrounding the rolling offer.
    - `externalId` string — The SKU of the rolling offer design, as defined in the Publisher Dashboard.
    - `rollingOffer` object — Specific settings for the rolling offer UI, as configured in the Publisher Dashboard.
      - `arrowColor` string — The arrow color.
      - `backgroundColor` object — Information about the background color of the rolling offer.
        - `colorOne` string — The primary background color of the rolling offer.
        - `colorTwo` string — The secondary background color of the rolling offer. Returned only if the background color in the UI is set to **Linear**.
        - `gradientDirection` string — The direction of the gradient between both background colors. Returned only if the background color in the UI is set to **Linear**.
      - `headerImage` string — The header image of the rolling offer.
      - `backgroundOpacity` integer — The opacity level of the rolling offer background.
      - `subRollingOffer` object — Information about the sub offer design.
        - `backgroundColor` object — Information about the background color of the sub offer.
          - `colorOne` string — The primary background color of the sub offer.
          - `colorTwo` string — The secondary background color of the sub offer. Returned only if the background color in the UI is set to **Linear**.
          - `direction` string — The direction of the gradient between both background colors. Returned only if the background color in the UI is set to **Linear**.
        - `backgroundImage` string — The background image of the sub offer.
        - `lockImage` string — The image shown when the sub offer is locked.
        - `collectText` string — The text displayed on the button used to claim the sub offer.
  - `productsSequence` object[] — The sequence of products within the rolling offer. Min: 2 Max: 50
    - `index` integer — The order of the product in the rolling offer. The index must start from 1 and be sequential.
    - `displayName` string — Sub offer display name.
    - `products` object[] — List of products in the rolling offer. Max: 3
      - `publisherProductId` string — The unique ID of the product.
      - `quantity` integer — The quantity of the product in the rolling offer.
      - `priority` 'Main' | 'Sub' — Specifies the display priority of a product within the rolling offer.
    - `priceInUsdCents` integer — The price of the product in cents. The value must be either 0 (free), or have a minimum 80 cents.
    - `progressBarPoints` object[] — List of Progress Bar offers to which this offer contributes points.
      - `publisherBarId` string — The Progress Bar offer ID provided by the publisher. This is the Progress Bar offer's **External ID** value in the Publisher Dashboard.
      - `points` number — The number of points this offer contributes to the specified Progress Bar. This value is displayed in the Points Ribbon shown on contributing offers.
    - `badges` object[] — List of badges associated with the rolling offer.
      - `publisherBadgeId` string — The unique identifier of the badge.
  - `schedule` object — The schedule for when the rolling offer is available.
    - `permanent` boolean — Whether the rolling offer is permanent.
    - `timeFrames` object[] — Time frame for the scheduled offer. Leave blank if permanent is set to true. If permanent is false, at least 1 time frame is required. When specifying multiple timeFrames, the startTime and endTime of each must not overlap.
      - `startTime` string, date-time — Scheduled offer start time.
      - `endTime` string, date-time — Scheduled offer end time. Can't be a past date.
      - `notes` string — Notes about the scheduled offer.
  - `createdAt` string, date-time — Date the rolling offer was created.
  - `updatedAt` string, date-time — Date the rolling offer was updated.

## Other responses

- `400` — Bad request.
- `401` — Unauthorized.

---

[API](https://skmtc.net/appcharge/apis/grant-award.md) · [All operations](https://skmtc.net/appcharge/apis/grant-award/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/appcharge/grant-award/revisions/b4f6759240d5/schema)
