# Spiel abrufen (Verwaltung)

Ruft ein Spiel zur Verwaltung ab.
Das Spiel besteht aus Spielschlüsseln, die von einem Nutzer gekauft werden können.

HinweisVerwenden Sie diesen Endpunkt nicht zum Erstellen eines Shop-Katalogs.

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

## Path parameters:

  - `project_id` (integer, required)
    Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt sowie in der Adressleiste des Browsers, wenn Sie im Kundenportal ein Projekt geöffnet haben. Die URL hat das folgende Format: https://publisher.xsolla.com//projects/.
    Example: 44056

  - `item_sku` (string, required)
    Artikel-SKU.
    Example: "booster_mega_1"

## Query parameters:

  - `promo_code` (string)
    Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.
    Example: "WINTER2021"

## Response 200 fields (application/json):

  - `item_id` (integer)
    Interne eindeutige Artikel-ID, die bei der Artikelerstellung vergeben wird.
    Example: 1

  - `sku` (string)
    Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.
    Example: "game_1"

  - `type` (string)
    Artikeltyp. In diesem Fall immer unit.
    Example: "unit"

  - `name` (object,null)
    Objekt mit Lokalisierungen für Artikelnamen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Optionen angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/).

  - `description` (object,null)
    Objekt mit Lokalisierungen für Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Optionen angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/).

  - `long_description` (object,null)
    Objekt mit Lokalisierungen für lange Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z. B. en) oder fünfstelliger Gebietsschemacode (z. B. en-US). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Varianten angegeben sind (z. B. en und en-US), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/).

  - `image_url` (string)
    Bild-URL.
    Example: "https://image.example.com"

  - `media_list` (array)
    Zusätzliche Spiel-Medieninhalte wie Screenshots, Gameplay-Videos usw.
    Example: [{"type":"image","url":"https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"}]

  - `media_list.type` (string)
    Medieninhaltstyp: image/video.
    Enum: "image", "video"

  - `media_list.url` (string)
    Ressourcendatei.
    Example: "https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"

  - `order` (integer)
    Priorität der Spielreihenfolge in der Liste.
    Example: 1

  - `groups` (array)
    Gruppen, zu denen der Artikel gehört.
    Example: [{"external_id":"horror","name":{"en":"Horror"}}]

  - `groups.external_id` (string)
    Example: "horror"

  - `groups.name` (object)
    Example: {"en":"Horror"}

  - `attributes` (array)
    Liste der Attribute.
    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"}}]}]

  - `attributes.external_id` (string, required)
    Eindeutige Attribut-ID. Die external_id darf nur lateinische Klein- und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.
    Example: "attribute_external_id"

  - `attributes.name` (object)
    Objekt mit lokalisierten Attributnamen. Schlüssel sind in ISO 3166-1 spezifiziert.
    Example: {"en":"Attribute name","de":"Attributname"}

  - `attributes.values` (array, required)
    Example: [{"external_id":"value_1","name":{"en":"value 1","de":"wert 1"}},{"external_id":"value_2","name":{"en":"value 2","de":"wert 2"}}]

  - `attributes.values.external_id` (string, required)
    Eindeutige Wert-ID für ein Attribut. Die external_id darf nur lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und Unterstriche enthalten.
    Example: "value_external_id"

  - `attributes.values.value` (object, required)
    Objekt mit lokalisierten Wertnamen. Schlüssel sind in ISO 3166-1 spezifiziert.

  - `is_enabled` (boolean)

  - `is_free` (boolean)
    Ob der Artikel kostenlos ist.

  - `is_show_in_store` (boolean)

  - `unit_items` (array)
    Spielschlüssel für verschiedene DRMs.

  - `unit_items.item_id` (integer)
    Interne eindeutige Artikel-ID, die bei der Artikelerstellung vergeben wird.
    Example: 1

  - `unit_items.sku` (string)
    Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.
    Example: "game_1"

  - `unit_items.type` (string)
    Artikeltyp. In diesem Fall immer game_key.
    Example: "game_key"

  - `unit_items.is_free` (boolean)
    Ob der Artikel kostenlos ist.

  - `unit_items.prices` (array)
    Preise in echten Währungen.
    Example: [{"amount":1299.99,"currency":"RUB","is_default":true,"is_enabled":true,"country_is":"RU"}]

  - `unit_items.prices.amount` (number)
    Example: 1299.99

  - `unit_items.prices.currency` (string)
    Währung des Artikelpreises. Dreistelliger Code pro [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
    Example: "RUB"

  - `unit_items.prices.is_default` (boolean)
    Der Standardpreis dient dazu, den Katalog zu erstellen, wenn kein Preis in der Währung des Nutzers angegeben ist.

  - `unit_items.prices.is_enabled` (boolean)

  - `unit_items.prices.country_iso` (string,null)
    Land, in dem dieser Preis gilt. Code bestehend aus zwei Buchstaben gemäß [ISO 3166-1 Alpha 2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
    Example: "US"

  - `unit_items.virtual_prices` (array,null)
    Example: [{"sku":"com.xsolla.gold_1","name":{"en":"Gold"},"type":"virtual_currency","description":null,"image_url":"https://i.pinimg.com/originals/91/ae/56/91ae5683045f6dbef16b1482bade938f.png","amount":1000,"is_default":true}]

  - `unit_items.virtual_prices.sku` (string)
    Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.
    Example: "gold"

  - `unit_items.virtual_prices.name` (object)
    Objekt mit lokalisierten Namen der virtuellen Währung. Schlüssel sind in ISO 3166-1 spezifiziert.
    Example: {"en":"Gold"}

  - `unit_items.virtual_prices.type` (string)
    Artikeltyp. In diesem Fall immer virtual_currency.
    Example: "virtual_currency"

  - `unit_items.virtual_prices.description` (object)
    Objekt mit lokalisierten Spielbeschreibung. Die Schlüssel sind in ISO 3166-1 spezifiziert.
    Example: {"en":"Game 1 Example"}

  - `unit_items.virtual_prices.image_url` (string)
    Bild-URL.
    Example: "https://image.example.com"

  - `unit_items.virtual_prices.amount` (number)

  - `unit_items.virtual_prices.is_default` (boolean)

  - `unit_items.order` (integer)
    Priorität der Spielreihenfolge in der Liste.
    Example: 1

  - `unit_items.is_enabled` (boolean)
    Ist diese Option deaktiviert, kann der Artikel weder gekauft noch über das Inventar aufgerufen werden.

  - `unit_items.is_show_in_store` (boolean)
    Artikel ist käuflich erhältlich.

  - `unit_items.drm_name` (string)
    DRM-Name des Spielschlüssels.
    Example: "Steam"

  - `unit_items.drm_sku` (string)
    Eindeutige DRM-ID.
    Example: "steam"

  - `unit_items.drm_image` (string,null)
    DRM-Symbol für den Spielschlüssel.
    Example: "https://upload.wikimedia.org/wikipedia/en/4/48/Steam_Icon_2014.png"

  - `unit_items.drm_id` (integer)
    Interne eindeutige DRM-ID.
    Example: 1

  - `unit_items.keys` (object)

  - `unit_items.keys.available` (integer)
    Anzahl der käuflich erhältlichen Schlüssel.

  - `unit_items.keys.total` (integer)
    Gesamtzahl der hochgeladenen Schlüssel.

  - `unit_items.keys.used` (integer)
    Anzahl der verkauften Schlüssel.

  - `unit_items.is_sales_exist` (boolean)
    Ist true eingestellt, wurde der Spielschlüssel von Nutzern gekauft.

  - `unit_items.pre_order` (object)
    Vorbestelleinstellungen.

  - `unit_items.pre_order.release_date` (string,null)
    Release-Termin des Spielschlüssels im Format ISO 8601.

  - `unit_items.pre_order.is_enabled` (boolean)
    Wenn diese Option deaktiviert ist, kann der Artikel nicht vorbestellt werden.

  - `unit_items.pre_order.description` (string,null)
    Zusätzliche Vorbestellinformationen, die per E-Mail verschickt werden.

  - `unit_items.regions` (array)

  - `unit_items.regions.id` (integer)
    Example: 1

  - `unit_items.limits` (object,null)
    Artikelbeschränkungen.

  - `unit_items.limits.per_user` (object,null)
    Artikelbeschränkung für einen separaten Nutzer.

  - `unit_items.limits.per_user.total` (integer)
    Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.

  - `unit_items.limits.per_user.limit_exceeded_visibility` (string)
    Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.

Gilt für Artikel, bei denen im Array recurrent_schedule Limits konfiguriert sind, die regelmäßig zurückgesetzt werden.

Wenn festgelegt ist, dass das Kauflimit nicht zurückgesetzt wird, wird der Artikel nach Erreichen des Kauflimits nicht mehr im Katalog angezeigt, unabhängig davon, welcher Wert für limit_exceeded_visibility festgelegt ist.

Mögliche Wert:
- show – Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben, auch wenn das Kauflimit bereits erreicht wurde.
Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel nach Erreichen des Limits mit dem Flag can_be_bought: false zurückgegeben.
Das Datum, an dem das Limit das nächste Mal zurückgesetzt wird, wird im Parameter reset_next_date zurückgegeben.
- hide – nachdem das Kauflimit erreicht wurde, wird der Artikel bei API-Aufrufen zur Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt wird.
    Enum: "show", "hide"

  - `unit_items.limits.per_item` (object,null)
    Globale Artikelbeschränkung.

  - `unit_items.limits.per_item.total` (integer)
    Höchstzahl von Artikeln, die alle Nutzer kaufen können.

  - `unit_items.limits.per_item.available` (integer)
    Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.

  - `unit_items.limits.per_item.reserved` (integer)

  - `unit_items.limits.per_item.sold` (integer)

  - `unit_items.limits.recurrent_schedule` (object,null)
    Aktualisierungszeitraum begrenzen.

  - `unit_items.limits.recurrent_schedule.per_user` (any)
    Aktualisierungszeitraum für das Nutzerlimit.

  - `unit_items.periods` (array)
    Artikelangebotszeitraum.

  - `unit_items.periods.date_from` (string,null)
    Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.
    Example: "2020-08-11T10:00:00+03:00"

  - `unit_items.periods.date_until` (string,null)
    Datum, an dem der angegebene Artikel nicht mehr zum Verkauf angeboten wird. Möglich ist: null.
    Example: "2020-08-11T20:00:00+03:00"

## Response 401 fields (application/json):

  - `statusCode` (integer)
    Example: 401

  - `errorCode` (integer)
    Example: 1020

  - `errorMessage` (string)
    Example: "[0401-1020]: Error in Authentication method occurred"

## Response 404 fields (application/json):

  - `statusCode` (integer)
    Example: 404

  - `errorCode` (integer)
    Example: 4001

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


