{ "openapi": "3.0.0", "x-stoplight": { "docs": { "showModels": false, "includeDownloadLink": true } }, "info": { "version": "2.0.0", "description": "This section describes API endpoints for virtual items and virtual currency management.\n\nThe **Virtual Currency** option allows game developers to sell in-game currencies. Key features:\n* Sell packages of in-game currency.\n* Run promotional campaigns.\n* Manage in-game currency user balances.\n* Auto-detect user currency and country.\n\nThe **Virtual Items** option allows you to sell in-game content for real or virtual currencies. Key features:\n* Set prices in real and virtual currencies.\n* Set up catalogs with one or several levels.\n* Configure brief and detailed item cards.\n* Manage in-game currency user balances.\n* Auto-detect user currency and country.\n", "title": "Virtual Items & Currency" }, "tags": [ { "name": "Admin" }, { "name": "Catalog" }, { "name": "Virtual Payment" } ], "paths": { "/v2/project/{project_id}/admin/items/virtual_items": { "get": { "summary": "Get list of virtual items for administration", "description": "Gets the list of virtual items within a project for administration.\n\nDo not use this endpoint for building a store catalog.\n", "parameters": [ { "name": "project_id", "in": "path", "required": true, "description": "Project ID.", "schema": { "type": "integer", "default": 44056, "description": "Project ID.", "required": true } }, { "name": "limit", "in": "query", "example": 50, "required": false, "description": "Limit for the number of elements on the page.", "schema": { "type": "integer", "example": 50, "description": "Limit for the number of elements on the page." } }, { "name": "offset", "in": "query", "required": false, "example": 0, "description": "Number of the element from which the list is generated (the count starts from 0).", "schema": { "type": "integer", "example": 0, "description": "Number of the element from which the list is generated (the count starts from 0)." } } ], "tags": [ "Admin" ], "operationId": "admin-get-virtual-items-list", "security": [ { "basicAuth": [] } ], "responses": { "200": { "description": "The list of virtual items was successfully received.", "content": { "application/json": { "example": { "items": [ { "sku": "armor_max_1", "name": { "en": "Maximum Armor Xsolla Skin" }, "type": "virtual_good", "description": { "en": "Suit up with flair showcasing your allegiance to Xsolla" }, "image_url": "https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png", "long_description": { "en": "The metal coverings formerly worn by soldiers or warriors to protect the body in battle." }, "attributes": [ { "external_id": "attr_1", "name": { "en-US": "OK" }, "values": [ { "external_id": "val1", "value": { "en-US": "VALUE" } }, { "external_id": "val2", "value": { "en-US": "VALUE2" } } ] } ], "is_free": false, "order": 1, "groups": [ { "id": 11, "external_id": "featured", "name": { "en": "featured" }, "description": { "en": "featured" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false }, { "id": 12, "external_id": "Xsolla", "name": { "en": "Xsolla" }, "description": { "en": "Xsolla" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false }, { "id": 107, "external_id": "Premium", "name": { "en": "Premium" }, "description": { "en": "Premium" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": true }, { "id": 113, "external_id": "NonConsumableGroupCode", "name": { "en": "Non-consumable" }, "description": { "en": "Non-consumable items" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false } ], "regional_prices": [], "prices": [ { "amount": 12.99, "currency": "USD", "is_default": true, "is_enabled": true } ], "media_list": [], "vc_prices": [], "is_enabled": true, "is_show_in_store": true, "regions": [], "inventory_options": { "consumable": false, "expiration_period": null } }, { "sku": "armor_max_2", "name": { "en": "Empire Maximum Armor" }, "type": "virtual_good", "description": { "en": "Defend your Empire against Xsolla with the max armor" }, "image_url": "https://cdn.xsolla.net/img/misc/images/67d647ad4f4e9a905bd552b0408db8a8.png", "long_description": "merchant_virtual_items_virtual_item_long_description_160310", "attributes": [], "is_free": false, "order": 1, "groups": [ { "id": 10, "external_id": "all", "name": { "en": "Equipment" }, "description": { "en": "Equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": true }, { "id": 14, "external_id": "equipment", "name": { "en": "Nice Equipment" }, "description": { "en": "equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false }, { "id": 17, "external_id": "Empire", "name": { "en": "Empire" }, "description": { "en": "1" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false } ], "regional_prices": [], "prices": [ { "amount": 12.99, "currency": "USD", "is_default": true, "is_enabled": true } ], "media_list": [], "vc_prices": [], "is_enabled": true, "is_show_in_store": true, "regions": [], "inventory_options": { "consumable": true, "expiration_period": null } }, { "sku": "armor_med_1", "name": { "en": "Xsolla Medium Armor" }, "type": "virtual_good", "description": { "en": "Moderately protect yourself against the Empires barrage of attacks" }, "image_url": "https://cdn.xsolla.net/img/misc/images/7f6e216f8fcc3c1796162897c2b0db01.png", "long_description": { "en": "Armor is a security-as-a-service company that provides cloud security and compliance solutions for small businesses and enterprises." }, "attributes": [], "is_free": false, "order": 1, "groups": [ { "id": 10, "external_id": "all", "name": { "en": "Equipment" }, "description": { "en": "Equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": true }, { "id": 12, "external_id": "Xsolla", "name": { "en": "Xsolla" }, "description": { "en": "Xsolla" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false }, { "id": 14, "external_id": "equipment", "name": { "en": "Nice Equipment" }, "description": { "en": "equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false } ], "regional_prices": [], "prices": [ { "amount": 4.99, "currency": "USD", "is_default": true, "is_enabled": true } ], "media_list": [], "vc_prices": [], "is_enabled": true, "is_show_in_store": false, "regions": [], "inventory_options": { "consumable": true, "expiration_period": null } }, { "sku": "armor_med_2", "name": { "en": "Empire Medium Armor" }, "type": "virtual_good", "description": { "en": "Moderately protect yourself against Xsolla's barrage of attacks" }, "image_url": "https://cdn.xsolla.net/img/misc/images/737b4c93205dc774f47dda1f73037734.png", "long_description": "merchant_virtual_items_virtual_item_long_description_160311", "attributes": [ { "external_id": "attr_1", "name": { "en-US": "OK" }, "values": [ { "external_id": "val1", "value": { "en-US": "VALUE" } }, { "external_id": "val2", "value": { "en-US": "VALUE2" } } ] } ], "is_free": false, "order": 1, "groups": [ { "id": 10, "external_id": "all", "name": { "en": "Equipment" }, "description": { "en": "Equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": true }, { "id": 14, "external_id": "equipment", "name": { "en": "Nice Equipment" }, "description": { "en": "equipment" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false }, { "id": 17, "external_id": "Empire", "name": { "en": "Empire" }, "description": { "en": "1" }, "image_url": null, "level": 0, "order": 1, "parent_group_id": null, "children": [], "parent_external_id": null, "is_enabled": false } ], "regional_prices": [], "prices": [ { "amount": 4.99, "currency": "USD", "is_default": true, "is_enabled": true } ], "media_list": [], "vc_prices": [], "is_enabled": true, "is_show_in_store": true, "regions": [], "inventory_options": { "consumable": true, "expiration_period": null } } ] }, "schema": { "type": "object", "properties": { "items": { "type": "array", "items": { "type": "object", "properties": { "sku": { "type": "string", "example": "booster_mega_1", "description": "Unique item ID. The SKU may only contain lowercase Latin alphanumeric characters, periods, dashes, and underscores." }, "attributes": { "allOf": [ { "type": "array", "description": "List of attributes.", "items": { "type": "object", "required": [ "external_id", "values" ], "properties": { "external_id": { "type": "string", "minLength": 1, "maxLength": 255, "pattern": "^[a-zA-Z0-9-_]+$", "example": "attribute_1", "description": "Unique attribute ID. The `external_id` may only contain lowercase Latin alphanumeric characters, dashes, and underscores." }, "name": { "type": "object", "description": "Object with localizations for attribute's name. Keys are specified in ISO 3166-1.", "additionalProperties": { "type": "string" }, "example": { "en": "Genre", "de": "Genre" }, "default": { "en": "Genre", "de": "Genre" } }, "values": { "type": "array", "items": { "type": "object", "required": [ "value", "external_id" ], "properties": { "external_id": { "type": "string", "minLength": 1, "maxLength": 255, "pattern": "^[-_.\\d\\w]+$", "example": "attribute_value", "description": "Unique value ID for an attribute. The `external_id` may only contain lowercase Latin alphanumeric characters, dashes, and underscores." }, "value": { "type": "object", "description": "Object with localizations of the value's name. Keys are specified in ISO 3166-1.", "additionalProperties": { "type": "string" }, "example": { "en": "Strategy", "de": "Strategie" }, "default": { "en": "Strategy", "de": "Strategie" } } }, "example": { "external_id": "value_external_id", "name": { "en": "Value 1", "de": "Wert 1" } } }, "example": [ { "external_id": "strategy", "value": { "en": "Strategy", "de": "Strategie" } }, { "external_id": "action", "value": { "en": "Action", "de": "Aktion" } } ] } }, "example": { "external_id": "attribute_external_id", "name": { "en": "Attribute name", "de": "Attributname" }, "values": [ { "external_id": "value_1", "name": { "en": "value 1", "de": "wert 1" } }, { "external_id": "value_2", "name": { "en": "value 2", "de": "wert 2" } } ] } } }, { "description": "List of attributes." } ] }, "name": { "type": "object", "description": "Object with localizations for item's name. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Item's name." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Name des Artikels." }, "es": { "type": "string", "nullable": true, "example": "Nombre del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Nom de l'élément." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Nome dell'elemento." }, "ja": { "type": "string", "nullable": true, "example": "買い物の名前。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "description": { "type": "object", "description": "Object with localizations for item's description. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Item's description." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Artikelbeschreibung." }, "es": { "type": "string", "nullable": true, "example": "Descripción del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Description de l'article." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Descrizione dell'oggetto." }, "ja": { "type": "string", "nullable": true, "example": "買い物の説明。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "long_description": { "type": "object", "description": "Object with localizations for long description of item. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Long description of item." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Lange Beschreibung des Artikels." }, "es": { "type": "string", "nullable": true, "example": "Descripción larga del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Description longue de l'article." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Descrizione lunga dell'articolo." }, "ja": { "type": "string", "nullable": true, "example": "アイテムの長い説明。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "groups": { "type": "array", "items": { "type": "object", "required": [ "id", "external_id" ], "properties": { "id": { "type": "integer" }, "external_id": { "type": "string" }, "name": { "type": "object", "additionalProperties": { "type": "string", "nullable": true } }, "description": { "type": "object", "additionalProperties": { "type": "string", "nullable": true } }, "image_url": { "type": "string", "nullable": true }, "level": { "type": "integer" }, "order": { "type": "integer" }, "parent_group_id": { "type": "integer", "nullable": true }, "children": { "type": "array", "default": [], "items": { "type": "object" } }, "parent_external_id": { "type": "string", "nullable": true }, "is_enabled": { "type": "boolean" } } } }, "media_list": { "type": "array", "example": [ { "type": "image", "url": "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg" } ], "description": "Item's additional assets such as screenshots, gameplay video and so on.", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "image", "video" ], "example": "image", "description": "Type of media: `image`/`video`." }, "url": { "type": "string", "example": "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg", "description": "Resource file." } } } }, "type": { "type": "string", "description": "Type of item: `virtual_good`/`virtual_currency`/`bundle`/`physical_good`/`unit`." }, "prices": { "type": "array", "items": { "type": "object", "required": [ "amount", "currency" ], "properties": { "currency": { "type": "string", "example": "USD", "description": "Default purchase currency. Three-letter code per [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)." }, "amount": { "description": "Amount.", "type": "number", "minimum": 0, "exclusiveMinimum": true }, "is_default": { "type": "boolean", "default": false }, "is_enabled": { "type": "boolean", "default": true } }, "example": { "currency": "USD", "amount": 10.5, "is_default": true, "is_enabled": true } } }, "regional_prices": { "type": "array", "nullable": true, "items": { "type": "object", "required": [ "region_id", "country_iso", "currency_iso", "amount", "is_default", "is_enabled" ], "properties": { "region_id": { "type": "integer", "nullable": true }, "country_iso": { "type": "string", "nullable": true, "description": "Format of country should follow the [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) standard.", "example": "US" }, "currency_iso": { "type": "string", "example": "USD", "description": "Default purchase currency. Three-letter code per [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)." }, "amount": { "type": "number", "minimum": 0, "exclusiveMinimum": true, "example": 10.5 }, "is_default": { "type": "boolean", "default": false, "example": true }, "is_enabled": { "type": "boolean", "default": true, "example": true } }, "example": { "region_id": null, "country_iso": "US", "currency_iso": "USD", "amount": 10.5, "is_default": true, "is_enabled": true } } }, "vc_prices": { "type": "array", "items": { "type": "object", "required": [ "sku", "amount" ], "properties": { "sku": { "type": "string", "example": "bundle_1", "description": "Unique item ID. The SKU may only contain lowercase Latin alphanumeric characters, periods, dashes, and underscores." }, "amount": { "description": "Amount.", "type": "number", "minimum": 0, "exclusiveMinimum": true }, "is_default": { "type": "boolean", "default": false } }, "example": { "sku": "gold", "amount": 10, "is_default": true } } }, "image_url": { "type": "string" }, "is_free": { "type": "boolean", "example": false, "description": "If `true`, the item is free." }, "order": { "type": "integer", "example": 1, "description": "Defines arrangement order." }, "is_enabled": { "type": "boolean" }, "is_show_in_store": { "type": "boolean" }, "inventory_options": { "type": "object", "description": "Defines the inventory item options.", "properties": { "consumable": { "type": "object", "nullable": true, "description": "Defines the consumable properties if this is a consumable item, or `null` if this is a non-consumable item.", "properties": { "usages_count": { "type": "integer", "example": 1, "nullable": true, "description": "Total number of remaining uses if this is a consumable item, or `null` if this is a non-consumable item." } } }, "expiration_period": { "type": "object", "nullable": true, "description": "Defines the expiration properties if this is a expired item, or `null` if this is a non-expired item.", "properties": { "type": { "type": "string", "example": "day", "enum": [ "minute", "hour", "day", "week", "month", "year" ], "description": "Defines type of item expiration." }, "value": { "type": "integer", "example": 1, "description": "Defines value for an expiration period." } } } } }, "regions": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "minimum": 1, "example": 1 } } } } } } } } } } } }, "401": { "description": "Basic authentication not passed or wrong. Make sure you used basic authentication or correct credentials.", "content": { "application/json": { "schema": { "type": "object", "properties": { "statusCode": { "type": "integer", "example": 401 }, "errorCode": { "type": "integer", "example": 1020 }, "errorMessage": { "type": "string", "example": "[0401-1020]: Error in Authentication method occurred" } } }, "examples": { "response": { "value": { "statusCode": 401, "errorCode": 1020, "errorMessage": "[0401-1020]: Error in Authentication method occurred" } } } } } } } }, "post": { "summary": "Create virtual item", "description": "Creates a virtual item.", "security": [ { "basicAuth": [] } ], "operationId": "admin-create-virtual-item", "parameters": [ { "name": "project_id", "in": "path", "required": true, "description": "Project ID.", "schema": { "type": "integer", "default": 44056, "description": "Project ID.", "required": true } } ], "tags": [ "Admin" ], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "sku": { "type": "string", "example": "booster_mega_1", "description": "Unique item ID. The SKU may only contain lowercase Latin alphanumeric characters, periods, dashes, and underscores." }, "name": { "type": "object", "description": "Object with localizations for item's name. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Item's name." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Name des Artikels." }, "es": { "type": "string", "nullable": true, "example": "Nombre del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Nom de l'élément." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Nome dell'elemento." }, "ja": { "type": "string", "nullable": true, "example": "買い物の名前。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "description": { "type": "object", "description": "Object with localizations for item's description. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Item's description." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Artikelbeschreibung." }, "es": { "type": "string", "nullable": true, "example": "Descripción del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Description de l'article." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Descrizione dell'oggetto." }, "ja": { "type": "string", "nullable": true, "example": "買い物の説明。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "long_description": { "type": "object", "description": "Object with localizations for long description of item. Two-letter lowercase [language code](https://developers.xsolla.com/doc/pay-station/features/localization/).", "properties": { "en": { "type": "string", "nullable": true, "example": "Long description of item." }, "ar": { "type": "string", "nullable": true, "example": null }, "bg": { "type": "string", "nullable": true, "example": null }, "cn": { "type": "string", "nullable": true, "example": null }, "cs": { "type": "string", "nullable": true, "example": null }, "de": { "type": "string", "nullable": true, "example": "Lange Beschreibung des Artikels." }, "es": { "type": "string", "nullable": true, "example": "Descripción larga del artículo." }, "fr": { "type": "string", "nullable": true, "example": "Description longue de l'article." }, "he": { "type": "string", "nullable": true, "example": null }, "it": { "type": "string", "nullable": true, "example": "Descrizione lunga dell'articolo." }, "ja": { "type": "string", "nullable": true, "example": "アイテムの長い説明。" }, "ko": { "type": "string", "nullable": true, "example": null }, "pl": { "type": "string", "nullable": true, "example": null }, "pt": { "type": "string", "nullable": true, "example": null }, "ro": { "type": "string", "nullable": true, "example": null }, "ru": { "type": "string", "nullable": true, "example": null }, "th": { "type": "string", "nullable": true, "example": null }, "tr": { "type": "string", "nullable": true, "example": null }, "tw": { "type": "string", "nullable": true, "example": null }, "vi": { "type": "string", "nullable": true, "example": null } } }, "image_url": { "type": "string", "example": "https://image.example.com", "description": "Image URL." }, "media_list": { "type": "array", "example": [ { "type": "image", "url": "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg" } ], "description": "Item's additional assets such as screenshots, gameplay video and so on.", "items": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "image", "video" ], "example": "image", "description": "Type of media: `image`/`video`." }, "url": { "type": "string", "example": "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg", "description": "Resource file." } } } }, "groups": { "type": "array", "description": "Groups the item belongs to.", "items": { "type": "object", "properties": { "external_id": { "type": "string", "example": "horror", "required": [ "external_id" ] } } } }, "attributes": { "type": "array", "maxItems": 20, "description": "List of attributes.\n