---
title: "Update offer localization"
method: PATCH
path: "/offers/{offerId}/localizations/{countryCode}"
---

# Update offer localization

`PATCH /offers/{offerId}/localizations/{countryCode}`

## Path parameters

- `countryCode` string, required
- `offerId` string, required

## Request body

- object
  - `title` string — Offer title, up to 255 characters.
  - `description` string — Offer description, up to 255 characters. Example: Best deal!
  - `price` object — Offer price. The offer price may be equal to zero. If it is above zero, it must be higher than the set minimum price (the minimum price differs per offer type and currency). If you decide to update an offer price, the `amount` or `rules` is **required**. You cannot change the currency of an offer.
    - `amount` number, float — Strict number float or int. The price of an offer. Minimum: 0.
    - `rules` object[] — These are special price rules for initial purchase of a **seasonal subscription** that define promotional prices that a publisher wants to offer in certain periods (e.g. before the season begins or once the season is halfway through). Price rules are defined with their name, start date, end date, and amount. Allowed values: the same restrictions as for price object apply. <br><br> If you decide to update an offer price and price rules: you can omit past rules and only send current and future rules (`from`, `to`, `name`, and `amount` are **required**.) You can send all rules (including past rules, but you cannot change parameters for past rules).
      - `from` integer — The start date of a special price rule that defines a promotional price. Format: Unix timestamp. Example: 1764590400
      - `to` integer — The end date of a special price rule that defines a promotional price. Format: Unix timestamp. Example: 1777636800
      - `name` string — The name of a promotional price period defined by a price rule, e.g. "Early-bird", "Mid-season".
      - `amount` number, float — Strict number float or int. The price for this special rule. The amount may be equal to zero.
    - `currency` string — Only currencies available in Cleeng are allowed.
  - `geoRestriction` object — `geoRestriction` might be object or null (when disabled). If `geoRestriction` is an object, then `type` or `countries` are required. If you want to update `geoRestriction`, and you only change `type`, `countries` will remain unchanged (if you only change `countries`, `type` will remain unchanged ).
    - `type` string — Specify the type of geo-restriction. Allowed values: `whitelist` (allowed in) or `blacklist` (blocked in).
    - `countries` string[] — Based on geo-restriction type, set the array of whitelisted/blacklisted country codes. Allowed values: 2-letter country codes (ISO-3166 country code without UK). Example: List [ "NL" ]
  - `freeTrial` object — Used only in 'subscription' offer type.
    - `type` string — Allowed values: `day`, `period`. `period` is only available for weekly and monthly subscriptions.
    - `duration` integer — The length of a free trial. Allowed values: for the type `day`: min value = 1, max value = 365; for the type `period` and weekly subscriptions: 1 - 52 weeks ; for monthly subscriptions: 1-12 months. (See [Free Trials](https://publisher.support.cleeng.com/hc/en-us/articles/360011481813-Free-Trials) for more information).

## Response `200`

## Other responses

- `400` — Bad Request
- `404` — Not Found
- `422` — Unprocessable Entity

---

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