Zum Inhalt springen

Overview

  • Version: 2.0.0
  • Servers: https://store.xsolla.com/api
  • Contact Us by Email
  • Contact URL: https://xsolla.com/
  • Required TLS version: 1.2

Shop Builder API provides a third-party solution for implementing the server side for your store interface. Use the endpoints to manage in-game items, in-game currencies, cart, player inventory, promotions, game library, etc.

OpenAPI-Beschreibung herunterladen
Sprachen
Server
Mock server
https://xsolla.redocly.app/_mock/de/api/shop-builder/
https://store.xsolla.com/api/
Operationen

Personalisierter Katalog

Diese API ermöglicht es, Regeln für Benutzerattribute festzulegen. Wenn der Nutzer alle Bedingungen einer konkreten Regel erfüllt, werden personalisierte Artikel angezeigt.

Für personalisierte Werbeaktionen siehe Abschnitt Werbeaktionen.

Um Attribute vor einem Kauf zu übermitteln, können Sie die Xsolla Login API verwenden oder die Attribute in der Eigenschaft user.attributes übermitteln, während Sie den Token mit der Pay Station API generieren.

Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen

Katalog

Diese API ermöglicht es, jede Art von verkäuflichen oder bestimmten Artikeln zu erhalten.

Operationen
Operationen
Operationen

Liste der Spielschlüssel anhand angegebener Gruppe abrufenClient-side

Anfrage

Ruft eine Liste von Spielschlüsseln aus der angegebenen Gruppe ab, um einen Katalog zu erstellen.

Achtung

Bei allen Projekten ist die Anzahl der Artikel begrenzt, die Sie in der Antwort erhalten können. Der Standard- und Höchstwert beträgt 50 Artikel pro Antwort. Um Seite für Seite mehr Daten zu erhalten, verwenden Sie die Felder limit und offset.

Hinweis

Die API-Aufrufe für den Artikelkatalog können auch ohne Autorisierung verwendet werden. Um jedoch einen personalisierten Katalog abzurufen, müssen Sie den Benutzer-JWT im Authorization-Header übermitteln.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt.

Beispiel: 44056
external_idstringerforderlich

Externe ID der Gruppe.

Standard "all"
Abfrage
limitinteger>= 1

Begrenzung der Elementanzahl auf der Seite.

Beispiel: limit=50
offsetinteger>= 0

Elementnummer, aus der die Liste generiert wird (die Zählung beginnt bei 0).

Beispiel: offset=0
localestring

Antwortsprache. Sprachcode bestehend aus zwei Kleinbuchstaben gemäß ISO 639-1.

Standard "en"
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

Zweistelliger Ländercode in Großbuchstaben gemäß ISO 3166-1 Alpha-2. Weitere Informationen zu den von Xsolla unterstützten Ländern und dazu, wie das Land ermittelt wird, finden Sie in der Dokumentation.

Beispiel: country=US
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/items/game/key/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Die Liste der Spielschlüssel wurde erfolgreich empfangen.

Bodyapplication/json
has_moreboolean(Pagination_has-more)

Dient als Indikator dafür, dass weitere Seiten vorhanden sind.

Beispiel: true
itemsArray of objects
Beispiel: [{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}],"description":"Game description","drm_name":"Steam","drm_sku":"steam_key_1","groups":[{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}],"has_keys":true,"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","is_free":false,"is_pre_order":true,"name":"Game name","periods":[{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}],"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"com.xsolla.game_1","type":"game_key","virtual_prices":[]},{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}],"description":"Game description","drm_name":"Steam","drm_sku":"steam_key_2","groups":[{"external_id":"all","name":"All games"}],"has_keys":true,"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","is_free":false,"is_pre_order":false,"name":"Game name","periods":[],"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":null,"sku":"com.xsolla.game_2","type":"game_key","virtual_prices":[]}]
Antwort
application/json
{ "has_more": true, "items": [ {}, {} ] }

Spielschlüssel für den Katalog abrufenClient-side

Anfrage

Ruft einen Spielschlüssel für den Katalog ab.

Hinweis

Auf diesen Endpunkt kann man ohne Autorisierung zugreifen, er gibt generische Daten zurück. Liegt eine Autorisierung vor, ist die Antwort jedoch mit benutzerspezifischen Details (z. B. vorhandene Nutzerlimits und Werbeaktionen) angereichert und sorgt so für ein personalisiertes Ergebnis.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt.

Beispiel: 44056
item_skustringerforderlich

Artikel-SKU.

Standard "xsollus_basic_edition_steam"
Abfrage
localestring

Antwortsprache. Sprachcode bestehend aus zwei Kleinbuchstaben gemäß ISO 639-1.

Standard "en"
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

Zweistelliger Ländercode in Großbuchstaben gemäß ISO 3166-1 Alpha-2. Weitere Informationen zu den von Xsolla unterstützten Ländern und dazu, wie das Land ermittelt wird, finden Sie in der Dokumentation.

Beispiel: country=US
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/items/game/key/sku/{item_sku}?locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Spielschlüssel wurde erfolgreich empfangen.

Bodyapplication/json
attributesArray of objects(Game-Keys_schemas-client-attributes)

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

Standard []
Beispiel: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
can_be_boughtboolean(Can_be_bought)

Sofern true, kann der Nutzer einen Artikel kaufen.

Beispiel: true
descriptionstring

Artikelbeschreibung.

Beispiel: "Game description"
drm_namestring

DRM-Name.

Beispiel: "Steam"
drm_skustring

Eindeutige DRM-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

Beispiel: "steam_key_1"
groupsArray of objects(items_client_groups_response)

Gruppen, zu denen der Artikel gehört.

Standard []
Beispiel: [{"external_id":"exclusive","name":"Exclusive"}]
has_keysboolean

Ist true eingestellt, lassen sich Spielschlüssel auf der Plattform kaufen.

Beispiel: true
image_urlstring

Bild-URL.

Beispiel: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
is_freeboolean(value-is_free)

Ist true eingestellt, ist der Artikel kostenlos.

Standard false
Beispiel: false
is_pre_orderboolean

Ist true eingestellt, ist der Spielschlüssel vorbestellbar und der Release-Termin noch nicht verstrichen.

Beispiel: true
limitsobject or null(Catalog_item_limits)

Artikelbeschränkungen.

namestring

Artikelname.

Beispiel: "Game name"
periodsArray of objects or null(item-periods)

Artikelangebotszeitraum.

priceobject

Artikelpreise.

Beispiel: {"amount":"30.5","amount_without_discount":"30.5","currency":"USD"}
promotionsArray of objects(Catalog_item_promotions)

Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array wird in den folgenden Fällen zurückgegeben:

  • Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.

  • Ein Promocode mit der Einstellung Rabatt auf ausgewählte Artikel ist angewandt.

Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres Array zurückgegeben.

release_datestring

Release-Termin des Spielschlüssels im Format ISO 8601.

Beispiel: "2020-08-11T10:00:00+03:00"
skustring

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

Beispiel: "com.xsolla.game_1"
typestring

Artikeltyp: game_key.

Beispiel: "game_key"
virtual_pricesArray of objects

Virtuelle Preise.

Beispiel: []
Antwort
application/json
{ "attributes": [ {}, {} ], "can_be_bought": true, "description": "Game description", "drm_name": "Steam", "drm_sku": "steam_key_1", "groups": [ {}, {} ], "has_keys": true, "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "is_free": false, "is_pre_order": true, "limits": null, "name": "Game name", "periods": [ {} ], "price": { "amount": "30.5", "amount_without_discount": "30.5", "currency": "USD" }, "promotions": [], "release_date": "2020-08-11T10:00:00+03:00", "sku": "com.xsolla.game_1", "type": "game_key", "virtual_prices": [] }

Spiel für den Katalog abrufenClient-side

Anfrage

Ruft ein Spiel für den Katalog ab.

Hinweis

Auf diesen Endpunkt kann man ohne Autorisierung zugreifen, er gibt generische Daten zurück. Liegt eine Autorisierung vor, ist die Antwort jedoch mit benutzerspezifischen Details (z. B. vorhandene Nutzerlimits und Werbeaktionen) angereichert und sorgt so für ein personalisiertes Ergebnis.
Sicherheit
XsollaLoginUserJWT
Pfad
project_idintegererforderlich

Projekt-ID. Dieser Parameter wird im Kundenportal neben dem Projektnamen angezeigt.

Beispiel: 44056
item_skustringerforderlich

Artikel-SKU.

Standard "full_game_1"
Abfrage
localestring

Antwortsprache. Sprachcode bestehend aus zwei Kleinbuchstaben gemäß ISO 639-1.

Standard "en"
additional_fields[]Array of strings

Die Liste der zusätzlichen Felder. Diese Felder sind in der Antwort enthalten, sofern Sie diese in der Anfrage senden.

Elemente Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

Zweistelliger Ländercode in Großbuchstaben gemäß ISO 3166-1 Alpha-2. Weitere Informationen zu den von Xsolla unterstützten Ländern und dazu, wie das Land ermittelt wird, finden Sie in der Dokumentation.

Beispiel: country=US
promo_codestring[ 1 .. 128 ] characters

Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung unterschieden. Enthält Buchstaben und Ziffern.

Beispiel: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

Zeigt zeitlich begrenzte Artikel an, die nicht erhältlich sind. Der Gültigkeitszeitraum dieser Artikel hat noch nicht begonnen oder ist bereits vorüber.

Standard 0
Beispiel: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/items/game/sku/{item_sku}?locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Antworten

Das Spiel wurde erfolgreich empfangen.

Bodyapplication/json
attributesArray of objects(Game-Keys_schemas-client-attributes)

Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind. Kann für die Katalogfilterung verwendet werden.

Standard []
Beispiel: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
descriptionstring

Artikelbeschreibung.

Beispiel: "Game description"
groupsArray of objects(items_client_groups_response)

Gruppen, zu denen der Artikel gehört.

Standard []
Beispiel: [{"external_id":"exclusive","name":"Exclusive"}]
image_urlstring

Bild-URL.

Beispiel: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
namestring

Artikelname.

Beispiel: "Game name"
promotionsArray of objects(Catalog_item_promotions)

Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array wird in den folgenden Fällen zurückgegeben:

  • Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.

  • Ein Promocode mit der Einstellung Rabatt auf ausgewählte Artikel ist angewandt.

Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres Array zurückgegeben.

skustring

Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche enthalten.

Beispiel: "game_01"
typestring

Artikeltyp: virtual_good/virtual_currency/bundle/physical_good/unit.

Beispiel: "unit"
unit_itemsArray of objects
unit_typestring

Einheitstyp: game.

Beispiel: "game"
Antwort
application/json
{ "attributes": [ {}, {} ], "description": "Game description", "groups": [ {}, {} ], "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "name": "Game name", "promotions": [], "sku": "com.xsolla.game_1", "type": "unit", "unit_items": [ {}, {} ], "unit_type": "game" }
Operationen
Operationen
Operationen

Gutscheine

Mit dieser API können Sie Gutscheine verwalten.

Operationen

Promocodes

Diese API ermöglicht die Verwaltung von Promocodes.

Operationen

Katalogsonderangebote

Mit dieser API können Sie Katalogsonderangebote verwalten.

Operationen

Rabatte

Mit dieser API können Sie Rabattaktionen verwalten.

Operationen

Boni

Diese API ermöglicht die Verwaltung von Bonusaktionen.

Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen
Operationen