Xsolla-logo

Update virtual item

put/v2/project/{project_id}/admin/items/virtual_items/sku/{item_sku}

Updates a virtual item.

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
item_sku
required
string

Item SKU.

Example: booster_mega_1
Request Body schema: application/json
sku
string [ 1 .. 255 ] characters ^[a-zA-Z0-9_\\-–.]*$

Unique item ID. The SKU may only contain lowercase Latin alphanumeric characters, periods, dashes, and underscores.

object

Object with localizations for item's name. Two-letter lowercase language code.

en
string or null
ar
string or null
bg
string or null
cn
string or null
cs
string or null
de
string or null
es
string or null
fr
string or null
he
string or null
it
string or null
ja
string or null
ko
string or null
pl
string or null
pt
string or null
ro
string or null
ru
string or null
th
string or null
tr
string or null
tw
string or null
vi
string or null
object

Object with localizations for item's description. Two-letter lowercase language code.

en
string or null
ar
string or null
bg
string or null
cn
string or null
cs
string or null
de
string or null
es
string or null
fr
string or null
he
string or null
it
string or null
ja
string or null
ko
string or null
pl
string or null
pt
string or null
ro
string or null
ru
string or null
th
string or null
tr
string or null
tw
string or null
vi
string or null
object

Object with localizations for long description of item. Two-letter lowercase language code.

en
string or null
ar
string or null
bg
string or null
cn
string or null
cs
string or null
de
string or null
es
string or null
fr
string or null
he
string or null
it
string or null
ja
string or null
ko
string or null
pl
string or null
pt
string or null
ro
string or null
ru
string or null
th
string or null
tr
string or null
tw
string or null
vi
string or null
image_url
string

Image URL.

Array of objects

Item's additional assets such as screenshots, gameplay video and so on.

Array
type
string

Type of media: image/video.

Enum: "image" "video"
url
string

Resource file.

groups
Array of strings

Groups the item belongs to.

Note. The string value refers to group `external_id`.
Array of objects <= 20 items

List of attributes.

Attention. You can't specify more than 20 attributes for the item. Any attempts to exceed the limit result in an error.
Array (<= 20 items)
external_id
required
string [ 1 .. 255 ] characters ^[a-zA-Z0-9-_]+$

Unique attribute ID. The external_id may only contain lowercase Latin alphanumeric characters, dashes, and underscores.

required
Array of objects
Attention. You can't create more than 6 values for each attribute. Any attempts to exceed the limit result in an error.
Array
required
object
Default: {"en":"Strategy","de":"Strategie"}

Object with localizations of the value's name. Keys are specified in ISO 3166-1.

property name*
additional property
string
external_id
required
string [ 1 .. 255 ] characters ^[-_.\d\w]+$

Unique value ID for an attribute. The external_id may only contain lowercase Latin alphanumeric characters, dashes, and underscores.

object
Default: {"en":"Genre","de":"Genre"}

Object with localizations for attribute's name. Keys are specified in ISO 3166-1.

property name*
additional property
string
Array of objects
Array
amount
required
number > 0

Amount.

currency
required
string

Default purchase currency. Three-letter code per ISO 4217.

country_iso
string

Format of country should follow the ISO 3166-1 alpha-2 standard.

is_default
boolean
Default: false
is_enabled
boolean
Default: true
Array of objects
Array
amount
required
integer
is_default
required
boolean
Default: false
is_enabled
required
boolean
Default: false

The price is enabled.

sku
string

Unique item ID. The SKU may only contain lowercase Latin alphanumeric characters, periods, dashes, and underscores.

is_enabled
boolean
is_deleted
boolean
is_show_in_store
boolean
is_free
boolean
Default: false

If true, the item is free.

order
integer

Defines arrangement order.

object

Defines the inventory item options.

object or null

Defines the consumable properties if this is a consumable item, or null if this is a non-consumable item.

usages_count
integer or null

Total number of remaining uses if this is a consumable item, or null if this is a non-consumable item.

object or null

Defines the expiration properties if this is a expired item, or null if this is a non-expired item.

type
string

Defines type of item expiration.

Enum: "minute" "hour" "day" "week" "month" "year"
value
integer

Defines value for an expiration period.

object
release_date
required
string or null <date-time>
is_enabled
required
boolean
description
string or null
Array of objects
Array
id
integer >= 1
object

Item limits.

per_user
integer or null

Item limitation for a separate user.

per_item
integer or null

Global item limitation.

object or null

Limit refresh period.

interval_type = daily (object) or interval_type = weekly (object) or interval_type = monthly (object)
One of:

Daily type of user limits refresh.

interval_type
required
string

Recurrent refresh period.

Value: "daily"
time
required
string((0[0-9]|1[0-9]|2[0-3]):00:00)(\+|-)(0[0-9]|1...

Time of limit refresh in the desired time zone (rounding to hours).

Array of objects or null

Item sales period.

Array
date_from
string <date-time>

Date when the specified item will be available for sale.

date_until
string or null <date-time>

Date when the specified item will become unavailable for sale. Can be null.

custom_attributes
object <json> <= 500 characters

A JSON object containing item attributes and values. Attributes allow you to add more info to items like the player's required level to use the item. Attributes enrich your game's internal logic and are accessible through dedicated GET methods and webhooks.

Responses
204

Virtual item was successfully updated.

401

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

422

Invalid request.

Request samples
application/json
{
  • "sku": "sword",
  • "name": {
    },
  • "is_enabled": true,
  • "is_free": false,
  • "groups": [
    ],
  • "order": 1,
  • "description": {
    },
  • "prices": [
    ],
  • "vc_prices": [ ],
  • "is_show_in_store": true,
  • "attributes": [
    ],
  • "limits": {
    },
  • "periods": [
    ],
  • "custom_attributes": {
    }
}
Response samples
application/json
{
  • "statusCode": 401,
  • "errorCode": 1020,
  • "errorMessage": "[0401-1020]: Error in Authentication method occurred"
}