Xsolla-logo

Update promo code promotionServer-sideAdmin

put/v2/project/{project_id}/admin/promocode/{external_id}

Updates a promo code promotion.

SecuritybasicAuth
Request
path Parameters
project_id
required
integer

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
external_id
required
integer

Promotion external ID. Unique promotion identifier within the project.

Example: coupon_44056_1
Request Body schema: application/json
required
object
Default: {"en-US":"Coupon title","de-DE":"Gutscheintitel"}

Name of promotion. Should contain key/value pairs where key is a locale with "^[a-z]{2}-[A-Z]{2}$" format, value is string.

property name*
additional property
string
date_start
string or null <date-time>
Default: "2020-04-15T18:16:00+05:00"

Date when your promotion will be started.

date_end
string or null <date-time>
Default: "2020-04-15T18:16:00+05:00"

Date when your promotion will be finished. Can be null. If date_end is null, promotion will be unlimited by time.

Array of objects or null
Array
sku
string
Default: "elven_shield"

Item SKU.

quantity
number
Default: 1

Item quantity.

redeem_total_limit
integer or null
Default: 10

Limits total numbers of coupons.

redeem_user_limit
integer or null
Default: 10

Limits total numbers of coupons redeemed by single user.

redeem_code_limit
integer or null
Default: 10

Number of redemptions per code.

object or null
percent
string or null
Default: "10.00"

Percent discount. The price of cart will be decreased using a value calculated by using this percent and then rounded to 2 decimal places.

Array of objects or null

List of items that are discounted by a promo code.

Array
sku
required
string
Default: "elven_shield"

Item SKU.

required
object
percent
required
string
Default: "10.00"

Percent discount.

The price of cart item will be decreased using a value calculated by using this percent and then rounded to 2 decimal places.

Array of type = string (objects) or Array of type = date (objects) or Array of type = number (objects)

Conditions which are compared to user attribute values. All conditions must be met for the action to take an effect.

One of:

Conditions which are compared to user attribute values. All conditions must be met for the action to take an effect.

[ 1 .. 100 ] items
Array ([ 1 .. 100 ] items)
attribute
required
string [ 1 .. 255 ] characters ^[-_.\\d\\w]+$

User attribute code.

operator
required
string

Type of operation performed by condition. For string attribute type.

Enum: Description
eq

Equals

ne

Not equals

value
required
string <= 255 characters

Condition value which user attribute value will be compared to. Type depends on attribute type.

type
required
string

User attribute type.

Value: "string"
can_be_missing
boolean

Indicates that the condition is met even if attribute is missing from user attributes. Pass true to show the item to users who don't have this attribute. Users who have the attribute, but the value does not match that specified in the condition, will not see the item. false — users who have the attribute, but the value does not match that specified in the condition, or the attribute is missing, will not see the item.

Responses
204

Promo code was successfully updated.

401

Basic authentication not passed or wrong. Make sure you used basic authentication or correct credentials.

404

Promo code not found. Make sure the external_id is correct.

422

Invalid request.

Request samples
application/json
{
  • "date_start": "2020-04-15T18:16:00+05:00",
  • "date_end": "2020-04-25T18:16:00+05:00",
  • "name": {
    },
  • "redeem_total_limit": 100,
  • "redeem_user_limit": 1,
  • "redeem_code_limit": 1,
  • "bonus": [
    ]
}
Response samples
application/json
{
  • "statusCode": 401,
  • "errorCode": 1020,
  • "errorMessage": "[0401-1020]: Error in Authentication method occurred"
}