Passer au contenu

Aperçu

Digital Distribution Hub est une nouvelle solution Xsolla qui comble le fossé entre les paiements numériques et les paiements en espèces via la technologie des paiements push et le e-commerce.

Cette référence décrit les endpoints API de deux produits Xsolla : In-Game Store et Pay Station. Deux URL de base sont utilisées :

  • https://store.xsolla.com/api pour les groupes Communs, Catalogue, Panier, et Commande.
  • https://ps.xsolla.com pour le groupe Notifications.

Les endpoints API dans le groupe Catalogue ne requièrent pas d'autorisation.

Pour utiliser les opérations des groupes Panier et Commande, vous devez générer un jeton via Create user token.

Note

Cette référence présente un projet d'une future API et non une interface entièrement fonctionnelle. Actuellement, vous ne pouvez essayer que les endpoints des groupes Catalogue et Notifications. Si vous souhaitez nous faire part de vos commentaires, envoyez-nous un e-mail à l'adresse suivante : techdoc@xsolla.com.
Télécharger la description d'OpenAPI
Langues
Serveurs
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/fr/api/digital-distribution-hub/
Opérations

Requête

Renvoie le panier de l'utilisateur actuel.

Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
Requête
currencystring

Devise dans laquelle les prix sont affichés (USD par défaut). Code de devise à trois lettres selon la norme ISO 4217.

Par défaut "USD"
localestring

Langue de la réponse. Code de langue à deux lettres minuscules selon la norme ISO 639-1.

Par défaut "en"
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/cart?currency=USD&locale=en' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Réponses

Le panier contenant des objets a été renvoyé avec succès.

Corpsapplication/json
cart_idstring

ID de panier.

Exemple: "cart_id"
is_freeboolean

Si ce paramètre est défini sur true, le panier est gratuit.

itemsArray of objects(Cart_inline_response_200_items)
Exemple: [{"attributes":[],"description":"Take it, take it all! All of Xsollas riches in one Mega Booster.","groups":[{"external_id":"powerups","name":"Power Ups"}],"image_url":"https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png","inventory_options":{"consumable":{"usages_count":1}},"is_free":false,"name":"Xsolla Booster Mega","price":{"amount":"50.0000000000000000","amount_without_discount":"100.0000000000000000","currency":"USD"},"quantity":123,"sku":"booster_mega_1","type":"virtual_good","virtual_item_type":"consumable","virtual_prices":[]}]
items[].​attributesArray of objects(Cart_client-attributes)

Liste des attributs et de leurs valeurs correspondantes pour l'objet. Peut être utilisée pour le filtrage du catalogue.

Par défaut []
Exemple: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
items[].​attributes[].​external_idstring(Cart_admin-attribute-external_id)[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

ID unique de l'attribut. Le paramètre external_id ne peut comprendre que des caractères alphanumériques latins minuscules, des tirets et des traits bas.

Exemple: "attribute_1"
items[].​attributes[].​namestring

Nom de l'attribut.

Exemple: "Genre"
items[].​attributes[].​valuesArray of objects
items[].​attributes[].​values[].​external_idstring(Cart_value-external_id)[ 1 .. 255 ] characters^[-_.\d\w]+$

ID unique de la valeur d'un attribut. Le external_id ne peut comprendre que des caractères alphanumériques latins minuscules, des tirets et des tirets bas.

Exemple: "attribute_value"
items[].​attributes[].​values[].​valuestring

Valeur de l'attribut.

Exemple: "Strategy"
items[].​descriptionstring
items[].​groupsArray of objects(Cart_inline_response_200_groups)
items[].​groups[].​external_idstring
items[].​groups[].​namestring
items[].​image_urlstring
items[].​is_freeboolean
items[].​namestring or null
items[].​quantityinteger
items[].​skustring
items[].​typestring
priceobject or null(Cart_inline_response_200_price)

Prix du panier.

Exemple: "{\"amount\":\"6150.0000000000000000\",\"amount_without_discount\":\"6150.0000000000000000\",\"currency\":\"USD\"}"
price.​amountstring
Par défaut "50.0000000000000000"
price.​amount_without_discountstring
Par défaut "100.0000000000000000"
price.​currencystring
Par défaut "USD"
Réponse
application/json
{ "cart_id": "cart_id", "is_free": false, "items": [ {} ], "price": { "amount": "6150.0000000000000000", "amount_without_discount": "6150.0000000000000000", "currency": "USD" } }

Supprimer tous les objets du panier actuel

Requête

Supprime tous les objets du panier.

Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
curl -i -X PUT \
  https://store.xsolla.com/api/v2/project/44056/cart/clear \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Réponses

Le panier a été vidé avec succès.

Requête

Remplit d'objets le panier. Si le panier contient déjà un objet avec la même UGS, l'objet existant sera remplacé par la valeur passée.

Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
Corpsapplication/json
currencystring(Cart-Payment_settings_currency)

Devise de paiement préférée. Code de devise à trois lettres selon la norme ISO 4217.

itemsArray of objectsobligatoire

Liste des objets.

items[].​quantitynumberobligatoire
Par défaut 123
items[].​skustringobligatoire
Par défaut "booster_mega_1"
curl -i -X PUT \
  https://store.xsolla.com/api/v2/project/44056/cart/fill \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "quantity": 123,
      "sku": "booster_mega_1"
    }
  ]'

Réponses

Le panier contenant des objets a été renvoyé avec succès.

Corpsapplication/json
cart_idstring

ID de panier.

Exemple: "cart_id"
is_freeboolean

Si ce paramètre est défini sur true, le panier est gratuit.

itemsArray of objects(Cart_inline_response_200_items)
items[].​attributesArray of objects(Cart_client-attributes)

Liste des attributs et de leurs valeurs correspondantes pour l'objet. Peut être utilisée pour le filtrage du catalogue.

Par défaut []
Exemple: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
items[].​attributes[].​external_idstring(Cart_admin-attribute-external_id)[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

ID unique de l'attribut. Le paramètre external_id ne peut comprendre que des caractères alphanumériques latins minuscules, des tirets et des traits bas.

Exemple: "attribute_1"
items[].​attributes[].​namestring

Nom de l'attribut.

Exemple: "Genre"
items[].​attributes[].​valuesArray of objects
items[].​attributes[].​values[].​external_idstring(Cart_value-external_id)[ 1 .. 255 ] characters^[-_.\d\w]+$

ID unique de la valeur d'un attribut. Le external_id ne peut comprendre que des caractères alphanumériques latins minuscules, des tirets et des tirets bas.

Exemple: "attribute_value"
items[].​attributes[].​values[].​valuestring

Valeur de l'attribut.

Exemple: "Strategy"
items[].​descriptionstring
items[].​groupsArray of objects(Cart_inline_response_200_groups)
items[].​groups[].​external_idstring
items[].​groups[].​namestring
items[].​image_urlstring
items[].​is_freeboolean
items[].​namestring or null
items[].​quantityinteger
items[].​skustring
items[].​typestring
priceobject or null(Cart_inline_response_200_price)

Prix du panier.

Exemple: "{\"amount\":\"6150.0000000000000000\",\"amount_without_discount\":\"6150.0000000000000000\",\"currency\":\"USD\"}"
price.​amountstring
Par défaut "50.0000000000000000"
price.​amount_without_discountstring
Par défaut "100.0000000000000000"
price.​currencystring
Par défaut "USD"
warningsArray of objects(Cart_inline_response_200_1_warnings)
Exemple: [{"attributes":[],"description":"Take it, take it all! All of Xsollas riches in one Mega Booster.","groups":[{"external_id":"powerups","name":"Power Ups"}],"image_url":"https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png","inventory_options":{"consumable":{"usages_count":1}},"is_free":false,"name":"Xsolla Booster Mega","price":{"amount":"50.0000000000000000","amount_without_discount":"100.0000000000000000","currency":"USD"},"quantity":123,"sku":"booster_mega_1","type":"virtual_good","virtual_item_type":"consumable","virtual_prices":[]}]
warnings[].​errorCodeinteger
warnings[].​errorMessagestring
warnings[].​quantityinteger
warnings[].​skustring
Réponse
application/json
{ "cart_id": "cart_id", "is_free": false, "items": [ {} ], "price": { "amount": "6150.0000000000000000", "amount_without_discount": "6150.0000000000000000", "currency": "USD" }, "warnings": [ {} ] }
Opérations
Opérations
Opérations
Opérations
Opérations
Opérations