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
Operationen
Operationen

Anfrage

Erstellt ein Spiel im Projekt.

Sicherheit
basicAuth
Pfad
project_idintegererforderlich

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

Beispiel: 44056
Bodyapplication/jsonerforderlich

Objekt mit Spieldaten.

attributesArray of objects(Game-Keys_admin-post-put-attributes)<= 20 items

Liste der Attribute.

Achtung: Sie können für den Artikel maximal 20 Attribute angeben. Jeder Versuch, das Limit zu überschreiten, führt zu einem Fehler.
description(two-letter (object or null)) or (five-letter (object or null))(description-localization-object)

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.

One of:

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.

groupsArray of objects

Gruppen, zu denen der Artikel gehört.

Beispiel: ["new_games"]
image_urlstring

Bild-URL.

Beispiel: "http://image.png"
is_enabledboolean

Ist diese Option deaktiviert, kann der Artikel weder gekauft noch über das Inventar aufgerufen werden.

Beispiel: true
is_show_in_storeboolean

Artikel ist käuflich erhältlich.

Beispiel: true
long_description(two-letter (object or null)) or (five-letter (object or null))(long-description-localization-object)

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.

Any of:

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.

media_listArray of objects

Zusätzliche Spiel-Medieninhalte wie Screenshots, Gameplay-Videos usw.

Beispiel: [{"type":"image","url":"http://image.png"},{"type":"video","url":"http://video.png"}]
name(two-letter (object or null)) or (five-letter (object or null))(name-localization-object)erforderlich

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.

One of:

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.

name.​arstring or null

Arabisch

name.​bgstring or null

Bulgarisch

name.​cnstring or null

Chinesisch (vereinfacht)

name.​csstring or null

Tschechisch

name.​destring or null

Deutsch

name.​enstring or null

Englisch

name.​esstring or null

Spanisch (Spanien)

name.​frstring or null

Französisch

name.​hestring or null

Hebräisch

name.​idstring or null

Indonesisch

name.​itstring or null

Italienisch

name.​jastring or null

Japanisch

name.​kmstring or null

Khmer

name.​kostring or null

Koreanisch

name.​lostring or null

Laotisch

name.​mystring or null

Birmanisch

name.​nestring or null

Nepalesisch

name.​phstring or null

Filipino

name.​plstring or null

Polnisch

name.​ptstring or null

Portugiesisch

name.​rostring or null

Rumänisch

name.​rustring or null

Russisch

name.​thstring or null

Thai

name.​trstring or null

Türkisch

name.​twstring or null

Chinesisch (traditionell)

name.​vistring or null

Vietnamesisch

orderinteger

Priorität der Spielreihenfolge in der Liste.

Beispiel: 1
skustring[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$erforderlich

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

Beispiel: "com.xsolla.game_1"
unit_itemsArray of objectserforderlich

Spielschlüssel für verschiedene DRMs.

Beispiel: [{"drm_sku":"steam_key_1","is_enabled":true,"is_free":false,"is_show_in_store":true,"limits":{"per_item":{"available":5000,"reserved":500,"sold":4500,"total":10000},"per_user":{"total":5}},"name":{"en-US":"Game key name","ru-RU":"Название игрового ключа"},"periods":[{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}],"pre_order":{"description":"Some description","is_enabled":true,"release_date":"2020-08-11T10:00:00+03:00"},"prices":[{"amount":35.5,"currency":"USD","is_default":true,"is_enabled":true}],"regions":[{"id":12},{"id":64}],"sku":"com.xsolla.game_key_1","vc_prices":[{"amount":35.5,"is_default":true,"is_enabled":true,"sku":"com.xsolla.gold_1"}]}]
unit_items[].​attributesArray of objects(Game-Keys_admin-attributes)

Liste der Attribute.

Beispiel: [{"external_id":"attribute_external_id","name":{"de":"Attributname","en":"Attribute name"},"values":[{"external_id":"value_1","name":{"de":"wert 1","en":"value 1"}},{"external_id":"value_2","name":{"de":"wert 2","en":"value 2"}}]}]
unit_items[].​drm_skustringerforderlich

Eindeutige DRM-ID.

Beispiel: "steam"
unit_items[].​groupsArray of objects

Gruppen, zu denen der Artikel gehört.

unit_items[].​is_enabledboolean

Ist diese Option deaktiviert, kann der Artikel weder gekauft noch über das Inventar aufgerufen werden.

unit_items[].​is_freeboolean(value-is_free)

Ist true eingestellt, ist der Artikel kostenlos.

Standard false
Beispiel: false
unit_items[].​is_show_in_storeboolean

Artikel ist käuflich erhältlich.

unit_items[].​limitsobject(Game-key-item-limit)

Artikelbeschränkungen.

unit_items[].​name(two-letter (object or null)) or (five-letter (object or null))(name-localization-object)

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.

One of:

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.

unit_items[].​orderinteger

Priorität der Spielreihenfolge in der Liste.

Beispiel: 1
unit_items[].​periodsArray of objects or null(item-periods)

Artikelangebotszeitraum.

unit_items[].​pre_orderobject

Vorbestelleinstellungen.

unit_items[].​pricesArray of objectserforderlich

Preise in echten Währungen.

unit_items[].​prices[].​amountnumbererforderlich
Beispiel: 1299.99
unit_items[].​prices[].​currencystringerforderlich

Währung des Artikelpreises. Dreistelliger Code pro ISO 4217. Detaillierte Informationen zu Von Xsolla unterstützte Währungen.

Beispiel: "RUB"
unit_items[].​prices[].​is_defaultbooleanerforderlich

Der Standardpreis dient dazu, den Katalog zu erstellen, wenn kein Preis in der Währung des Nutzers angegeben ist.

unit_items[].​prices[].​is_enabledbooleanerforderlich
unit_items[].​regionsArray of objects(Game-Keys_regions)
unit_items[].​skustring[ 1 .. 255 ] characterserforderlich

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

Beispiel: "game_1"
unit_items[].​vc_pricesArray of objects
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/admin/items/game \
  -H 'Content-Type: application/json' \
  -d '{
    "description": {
      "en-US": "Game description",
      "ru-RU": "Краткое описание игры"
    },
    "groups": [
      "new_games"
    ],
    "image_url": "http://image.png",
    "is_enabled": true,
    "is_show_in_store": true,
    "long_description": {
      "en-US": "Game long description",
      "ru-RU": "Полное описание игры"
    },
    "media_list": [
      {
        "type": "image",
        "url": "http://image.png"
      },
      {
        "type": "video",
        "url": "http://video.png"
      }
    ],
    "name": {
      "en-US": "Game name",
      "ru-RU": "Название игры"
    },
    "sku": "com.xsolla.game_1",
    "unit_items": [
      {
        "drm_sku": "steam_key_1",
        "is_enabled": true,
        "is_free": false,
        "is_show_in_store": true,
        "limits": {
          "per_item": {
            "available": 5000,
            "reserved": 500,
            "sold": 4500,
            "total": 10000
          },
          "per_user": {
            "total": 5
          }
        },
        "name": {
          "en-US": "Game key name",
          "ru-RU": "Название игрового ключа"
        },
        "periods": [
          {
            "date_from": "2020-08-11T10:00:00+03:00",
            "date_until": "2020-08-11T20:00:00+03:00"
          }
        ],
        "pre_order": {
          "description": "Some description",
          "is_enabled": true,
          "release_date": "2020-08-11T10:00:00+03:00"
        },
        "prices": [
          {
            "amount": 35.5,
            "currency": "USD",
            "is_default": true,
            "is_enabled": true
          }
        ],
        "regions": [
          {
            "id": 12
          },
          {
            "id": 64
          }
        ],
        "sku": "com.xsolla.game_key_1",
        "vc_prices": [
          {
            "amount": 35.5,
            "is_default": true,
            "is_enabled": true,
            "sku": "com.xsolla.gold_1"
          }
        ]
      }
    ]
  }'

Antworten

Spiel wurde erfolgreich erstellt.

Bodyapplication/json
item_idinteger
Beispiel: 101
skustring
Beispiel: "com.xsolla.game_1"
Antwort
application/json
{ "item_id": 101, "sku": "com.xsolla.game_1" }

Spiel anhand der ID löschenServer-sideAdmin

Anfrage

Löscht ein Spiel im Projekt anhand der ID.

Sicherheit
basicAuth
Pfad
project_idintegererforderlich

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

Beispiel: 44056
item_idstringerforderlich

Artikel-ID.

Beispiel: 656
curl -i -X DELETE \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/admin/items/game/id/656

Antworten

Das Spiel wurde erfolgreich gelöscht.

Antwort
Kein Inhalt

Spiel anhand von ID abrufen (Verwaltung)Server-sideAdmin

Anfrage

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

Hinweis

Verwenden Sie diesen Endpunkt nicht zum Erstellen eines Shop-Katalogs.
Sicherheit
basicAuth
Pfad
project_idintegererforderlich

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

Beispiel: 44056
item_idstringerforderlich

Artikel-ID.

Beispiel: 656
Abfrage
promo_codestring[ 1 .. 128 ] characters

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

Beispiel: promo_code=WINTER2021
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/de/api/shop-builder/v2/project/44056/admin/items/game/id/656?promo_code=WINTER2021'

Antworten

Das Spiel wurde erfolgreich empfangen.

Bodyapplication/json
attributesArray of objects(Game-Keys_admin-attributes)

Liste der Attribute.

Beispiel: [{"external_id":"attribute_external_id","name":{"de":"Attributname","en":"Attribute name"},"values":[{"external_id":"value_1","name":{"de":"wert 1","en":"value 1"}},{"external_id":"value_2","name":{"de":"wert 2","en":"value 2"}}]}]
description(two-letter (object or null)) or (five-letter (object or null))(description-localization-object)

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.

One of:

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.

groupsArray of objects

Gruppen, zu denen der Artikel gehört.

Beispiel: [{"external_id":"horror","name":{"en":"Horror"}}]
image_urlstring

Bild-URL.

Beispiel: "https://image.example.com"
is_enabledboolean
is_freeboolean(value-is_free)

Ist true eingestellt, ist der Artikel kostenlos.

Standard false
Beispiel: false
is_show_in_storeboolean
item_idinteger

Interne eindeutige Artikel-ID, die bei der Artikelerstellung vergeben wird.

Beispiel: 1
long_description(two-letter (object or null)) or (five-letter (object or null))(long-description-localization-object)

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.

Any of:

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.

media_listArray of objects

Zusätzliche Spiel-Medieninhalte wie Screenshots, Gameplay-Videos usw.

Beispiel: [{"type":"image","url":"https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"}]
name(two-letter (object or null)) or (five-letter (object or null))(name-localization-object)

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.

One of:

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.

orderinteger

Priorität der Spielreihenfolge in der Liste.

Beispiel: 1
skustring

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

Beispiel: "game_1"
typestring

Artikeltyp. In diesem Fall immer unit.

Beispiel: "unit"
unit_itemsArray of objects

Spielschlüssel für verschiedene DRMs.

Antwort
application/json
{ "attributes": [ {} ], "description": { "en": "Example game 1" }, "groups": [ {} ], "image_url": "https://image.example.com", "is_enabled": true, "is_free": false, "is_show_in_store": false, "item_id": 1, "long_description": { "en": "Example game's long description" }, "media_list": [ {} ], "name": { "en": "Game 1" }, "order": 1, "sku": "com.xsolla.game_1", "type": "unit", "unit_items": [ {}, {} ] }
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