---
title: "Update gifting config"
method: PUT
path: "/open-api/v1.0/gifting/config"
tags: ["Gifting"]
---

# Update gifting config

`PUT /open-api/v1.0/gifting/config`

Writes the four creator-controlled gifting rule fields. Validation (duration 20-180s, valid shipping/products) and the one-platform-per-shop mutex are enforced server-side. Upserts: a first-ever PUT materializes the config row.

## Request body

- UpdateGiftingConfigXRequest — The gifting rules to save.
  - `enabled` boolean, required — Master flag. Off pauses purchasability without losing the rest.
  - `entryTimeLimitSeconds` integer, required — Entry time limit in seconds. Validated 20-180.
  - `shipping` union, required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXRequestAllCreator
      - `type` 'ALL_CREATOR', required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXRequestAllWinner
      - `type` 'ALL_WINNER', required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXRequestMaxCreator
      - `type` 'MAX_CREATOR', required
      - `max` number, double, required
  - `products` union, required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXRequestAllProducts
      - `type` 'ALL', required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXRequestExcludedProducts
      - `type` 'EXCLUDED', required
      - `offerIds` string[], required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXRequestSelectedProducts
      - `type` 'SELECTED', required
      - `offerIds` string[], required

## Response `200`

OK

- GiftingConfigXResponse — A shop's saved gifting rules.
  - `enabled` boolean, required — Master "gift while live" flag.
  - `entryTimeLimitSeconds` integer, required — Entry time limit in seconds (20-180), maps to the giveaway duration.
  - `shipping` union, required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXResponseAllCreator
      - `type` 'ALL_CREATOR', required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXResponseAllWinner
      - `type` 'ALL_WINNER', required
    - ComFourthwallAppOpenapiEndpointShippingPolicyXResponseMaxCreator
      - `type` 'MAX_CREATOR', required
      - `max` number, double, required
  - `products` union, required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXResponseAllProducts
      - `type` 'ALL', required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXResponseExcludedProducts
      - `type` 'EXCLUDED', required
      - `offerIds` string[], required
    - ComFourthwallAppOpenapiEndpointProductsPolicyXResponseSelectedProducts
      - `type` 'SELECTED', required
      - `offerIds` string[], required
  - `platform` 'TWITCH' | 'STREAMELEMENTS' | 'OPEN_API' | 'NOT_SELECTED', required — Current giveaway platform owning the shop's single gifting slot. Read-only conflict signal — TWITCH or STREAMELEMENTS means another integration owns the slot. A Kick shop operates on the OPEN_API slot.

---

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