# Получение игрового ключа для каталога

Получает иговой ключ для каталога.


Примечание
Без авторизации метод возвращает общие данные по каталогу товаров. Используйте авторизацию, чтобы получить персонализированные данные пользователя, такие как лимиты и акции, связанные с этим товаром. Для этого необходимо передать JWT пользователя в заголовке Authorization. Подробная информация о JWT пользователя приведена в блоке Безопасность для этого метода.

Endpoint: GET /v2/project/{project_id}/items/game/key/sku/{item_sku}
Version: 2.0.0
Security: XsollaLoginUserJWT

## Path parameters:

  - `project_id` (integer, required)
    ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта, а также в адресной строке браузера при работе с проектом. URL-адрес имеет следующий формат: https://publisher.xsolla.com//projects/.
    Example: 44056

  - `item_sku` (string, required)
    Артикул товара.

## Query parameters:

  - `locale` (string)
    Язык ответа. Двухбуквенный код языка в нижнем регистре по стандарту ISO 639-1 (например, en). Коды локали из пяти символов (например, en-US) поддерживаются в полях локализации (например, name, description), но в ответах приводятся к двухбуквенному формату. Полный список поддерживаемых языков приведен в документации.

  - `additional_fields[]` (array)
    Дополнительные поля, которые будут включены в ответ. По умолчанию не возвращаются. Передайте нужные значения, чтобы получить их в ответе.
    Enum: "media_list", "order", "long_description", "custom_attributes", "item_order_in_group"

  - `country` (string)
    Двухбуквенное обозначение страны в верхнем регистре согласно стандарту ISO 3166-1 alpha-2. Ознакомьтесь со списком стран, поддерживаемых Xsolla, а также с процессом определения страны.
    Example: "US"

  - `promo_code` (string)
    Уникальный код, чувствительный к регистру. Содержит буквы и цифры.
    Example: "WINTER2021"

  - `show_inactive_time_limited_items` (integer)
    Отображает предметы с ограниченным сроком действия, которые недоступны пользователю. Срок действия таких предметов еще не начался или уже истек.
    Example: 1

## Response 200 fields (application/json):

  - `sku` (string)
    Уникальный ID товара. Артикул может содержать только строчные и заглавные латинские буквы, цифры, точки, тире и подчеркивания.
    Example: "com.xsolla.game_1"

  - `name` (string)
    Название товара.
    Example: "Game name"

  - `groups` (array)
    Группы, к которым принадлежит товар.
    Example: [{"external_id":"all","name":"All games","item_order_in_group":2},{"external_id":"Xsolla","name":"Xsolla games","item_order_in_group":1}]

  - `groups.external_id` (string)
    [Внешний ID группы товаров](/ru/api/catalog/item-groups-admin/admin-create-item-group#item-groups-admin/admin-create-item-group/t=request&path=external_id), который был указан при создании.
    Example: "exclusive"

  - `groups.name` (string)
    Название группы.
    Example: "Exclusive"

  - `groups.item_order_in_group` (integer)
    Позиция предмета внутри группы, определяющая порядок отображения.
Возвращается в ответ только при указании в запросе query-параметра additional_fields[].
    Example: 1

  - `attributes` (array)
    Список атрибутов и их значений, соответствующих товару. Может использоваться для фильтрации каталога.
    Example: [{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}]

  - `attributes.external_id` (string)
    Уникальный ID атрибута. external_id может содержать только строчные и заглавные латинские буквы, цифры, тире и подчеркивания.

  - `attributes.name` (string)
    Название атрибута.
    Example: "Genre"

  - `attributes.values` (array)

  - `attributes.values.external_id` (string)
    Уникальный ID значения атрибута. external_id может содержать только строчные латинские буквы, цифры, тире и подчеркивания.

  - `attributes.values.value` (string)
    Значение атрибута.
    Example: "Strategy"

  - `type` (string)
    Тип товара: game_key.
    Example: "game_key"

  - `description` (string)
    Описание товара.
    Example: "Game description"

  - `image_url` (string)
    URL-адрес изображения.
    Example: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"

  - `is_free` (boolean)
    Является ли товар бесплатным.

  - `price` (object)
    Цены на товар.
    Example: {"amount":"30.5","amount_without_discount":"30.5","currency":"USD"}

  - `price.amount` (string)
    Цена товара со скидкой.
    Example: "30.5"

  - `price.amount_without_discount` (string)
    Цена товара.
    Example: "30.5"

  - `price.currency` (string)
    Валюта, в которой указана цена товара. Трехбуквенный код в соответствии со стандартом [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
    Example: "USD"

  - `virtual_prices` (array)
    Виртуальные цены.
    Example: []

  - `virtual_prices.amount` (integer)
    Цена товара в виртуальной валюте.
    Example: 100

  - `virtual_prices.amount_without_discount` (integer)
    Цена товара в виртуальной валюте без скидки. Всегда равна значению amount, так как скидки не применяются к ценам в виртуальной валюте.
    Example: 200

  - `virtual_prices.sku` (string)
    Артикул виртуальной валюты.
    Example: "vc_gold"

  - `virtual_prices.is_default` (boolean)
    Является ли ценой в виртуальной валюте по умолчанию.
    Example: true

  - `virtual_prices.image_url` (string,null)
    URL-адрес изображения виртуальной валюты.
    Example: "http://image.png"

  - `virtual_prices.name` (string)
    Название виртуальной валюты.
    Example: "Gold"

  - `virtual_prices.type` (string)
    Тип товара. Для виртуальной валюты всегда имеет значение virtual_currency.
    Example: "virtual_currency"

  - `virtual_prices.description` (string,null)
    Описание виртуальной валюты.
    Example: "In-game currency used to purchase weapons and upgrades"

  - `can_be_bought` (boolean)
    Если true, пользователь может купить товар.
    Example: true

  - `drm_name` (string)
    Название платформы распространения игры.
    Example: "Steam"

  - `drm_sku` (string)
    Уникальный ID платформы. Артикул может содержать только строчные и заглавные латинские буквы, цифры, точки, тире и подчеркивания.
    Example: "steam_key_1"

  - `has_keys` (boolean)
    Если true, у игры на платформе есть игровые ключи для продажи.
    Example: true

  - `is_pre_order` (boolean)
    Если true, игра на платформе находится в предзаказе и дата релиза еще не прошла.
    Example: true

  - `release_date` (string)
    Дата выпуска игры на платформе в формате ISO 8601.
    Example: "2020-08-11T10:00:00+03:00"

  - `promotions` (array)
    Примененные акции для отдельных товаров в корзине. Массив возвращается, если:

* Скидочная акция настроена для отдельного товара.

* Используется промокод с настройкой Скидка на выбранные товары.

Если акции на уровне отдельных товаров не применялись, возвращается пустой массив.
    Example: []

  - `promotions.name` (string)

  - `promotions.date_start` (string,null)

  - `promotions.date_end` (string,null)

  - `promotions.discount` (object,null)

  - `promotions.discount.percent` (string,null)

  - `promotions.discount.value` (string,null)

  - `promotions.bonus` (array)

  - `promotions.bonus.sku` (string)

  - `promotions.bonus.quantity` (integer)

  - `promotions.bonus.type` (string)
    Тип бонусного товара.
    Enum: "virtual_good", "virtual_currency", "bundle", "physical_good", "game_key", "nft"

  - `promotions.bonus.name` (string)
    Название бонусного товара. Недоступно для типа бонусного товара physical_good.

  - `promotions.bonus.image_url` (string)
    URL-адрес изображения бонусного бандла. Недоступно для типа бонусного товара physical_good.

  - `promotions.bonus.bundle_type` (string)
    Тип товара бонусного бандла. Доступно только для бонусного товара типа bundle.
    Enum: "standard", "virtual_currency_package"

  - `promotions.limits` (object)

  - `promotions.limits.per_user` (object)

  - `promotions.limits.per_user.available` (integer)

  - `promotions.limits.per_user.total` (integer)

  - `limits` (object,null)
    Ограничения на продажу товара.

  - `limits.per_user` (object,null)
    Ограничения на продажу товара для пользователя.

  - `limits.per_user.total` (integer)
    Максимальное количество товара, которое может приобрести один пользователь.
    Example: 5

  - `limits.per_user.available` (integer)
    Оставшееся количество товара, которое может приобрести текущий пользователь.
    Example: 3

  - `limits.per_user.recurrent_schedule` (any)

  - `limits.per_user.limit_exceeded_visibility` (string)
    Определяет видимость товара в каталоге после достижения лимита покупок до момента следующего обновления лимитов.

Применяется к товарам, для которых задано регулярное обновление лимитов в массиве recurrent_schedule.

Если обновление лимитов не задано, товар не отображается в каталоге после достижения лимита независимо от значения limit_exceeded_visibility.

Возможные значения:
- show — Товар возвращается в методах получения каталога товаров после достижения лимита покупок. В клиентских методах получения каталога после достижения лимита товар возвращается с флагом can_be_bought: false. Дата следующего сброса возвращается в reset_next_date.
- hide — Товар не возвращается в методах получения каталога товаров после достижения лимита покупок до момента сброса лимитов.
    Enum: "show", "hide"

  - `limits.per_item` (object,null)
    Ограничения на продажу для конкретного товара.

  - `limits.per_item.total` (integer)
    Максимальное количество товара, которое могут приобрести все пользователи.
    Example: 5

  - `limits.per_item.available` (integer)
    Оставшееся количество товара, которое могут приобрести все пользователи.
    Example: 3

  - `periods` (array,null)
    Период продажи товара.
    Example: [{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}]

  - `periods.date_from` (string)
    Дата, когда указанный товар будет доступен для продажи.
    Example: "2020-08-11T10:00:00+03:00"

  - `periods.date_until` (string,null)
    Дата, когда указанный товар станет недоступен для продажи. Может быть null.
    Example: "2020-08-11T20:00:00+03:00"

  - `loyalty_rewards` (array)
    Баллы лояльности, которые пользователь получает в награду за покупку товара.

  - `loyalty_rewards.name` (string)
    Название баллов лояльности.

  - `loyalty_rewards.sku` (string)
    Артикул балла лояльности. Используйте это значение в параметре loyalty_point_sku в других запросах API, например при создании заказа, оплачиваемого баллами лояльности.

  - `loyalty_rewards.description` (string)
    Описание баллов лояльности.

  - `loyalty_rewards.image_url` (string,null)
    URL-адрес изображения.

  - `loyalty_rewards.amount` (integer)
    Количество баллов лояльности, которое пользователь получает за покупку товара.

  - `loyalty_prices` (array)
    Баллы лояльности, за которые можно купить товар.

  - `loyalty_prices.name` (string)
    Название баллов лояльности.

  - `loyalty_prices.sku` (string)
    Артикул балла лояльности. Используйте это значение в параметре loyalty_point_sku в других запросах API, например при создании заказа, оплачиваемого баллами лояльности.

  - `loyalty_prices.description` (string)
    Описание баллов лояльности.

  - `loyalty_prices.image_url` (string,null)
    URL-адрес изображения.

  - `loyalty_prices.amount` (integer)
    Цена товара в указанных баллах лояльности.

## Response 404 fields (application/json):

  - `statusCode` (integer)
    Example: 404

  - `errorCode` (integer)
    Example: 4001

  - `errorMessage` (string)
    Example: "[0401-4001]: Item with sku = 'game_key_1' not found"


