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
Mock server
https://xsolla.redocly.app/_mock/fr/api/digital-distribution-hub/
https://store.xsolla.com/api/
Opérations
Opérations

Requête

Récupère la liste des DRM disponibles.

Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
curl -i -X GET \
  https://xsolla.redocly.app/_mock/fr/api/digital-distribution-hub/v2/project/44056/items/game/drm \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Réponses

La liste des DRM a été reçue avec succès.

Corpsapplication/json
drmArray of objects(Catalog_inline_response_200_4_drm)
Exemple: [{"drm_id":1,"image":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","link":"https://support.steampowered.com","name":"Steam","redeem_instruction_link":"https://support.steampowered.com","sku":"steam"},{"drm_id":2,"image":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Playstation","redeem_instruction_link":"https://support.us.playstation.com","sku":"playstation"}]
Réponse
application/json
{ "drm": [ {}, {} ] }

Lire une liste de jeux par groupe spécifique

Requête

Récupère une liste de jeux au sein d'un groupe spécifique pour la constitution d'un catalogue.

Attention. Tous les projets sont soumis à une limite de nombre d'objets que vous pouvez obtenir dans la réponse. La valeur par défaut et la valeur maximale sont 50 éléments par réponse. Pour obtenir plus de données page par page, utilisez les champs limit et offset.
Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
external_idstringobligatoire

External ID du groupe.

Par défaut "all"
Requête
limitinteger

Nombre maximal d'éléments sur une page.

Exemple: limit=50
offsetinteger

Numéro de l'élément à partir duquel la liste est générée (le compte commence à 0).

Exemple: offset=0
localestring

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

Par défaut "en"
additional_fields[]Array of strings

Liste des champs supplémentaires. Ces champs figureront dans la réponse si vous les envoyez dans votre requête. Champs disponibles media_list, order et long_description.

countrystring

Pays pour la détermination des prix régionaux et des restrictions pour le catalogue. Code pays à deux lettres majuscules selon la norme ISO 3166-1 alpha-2. Si vous ne spécifiez pas explicitement le pays, il sera déterminé en fonction de l'adresse IP de l'utilisateur.

Par défaut "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/fr/api/digital-distribution-hub/v2/project/44056/items/game/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Réponses

La liste de jeux a été reçue avec succès.

Corpsapplication/json
itemsArray of objects(Catalog_inline_response_200_items)
Exemple: [{"attributes":{"$ref":"#/components/examples/client-attribute-game/Catalog_value"},"description":"Game description","groups":[{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}],"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Game name","sku":"game_1","type":"unit","unit_items":[{"drm_name":"Steam","drm_sku":"steam","has_keys":true,"is_free":false,"is_pre_order":true,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"game_key_01","type":"game_key","virtual_prices":[]},{"drm_name":"Origin","drm_sku":"origin","has_keys":false,"is_free":false,"is_pre_order":false,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_key_02","type":"game_key","virtual_prices":[]}],"unit_type":"game"},{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]}],"description":"Game description","groups":[{"external_id":"all","name":"All games"}],"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Game name","sku":"game_2","type":"unit","unit_items":[{"drm_name":"Steam","drm_sku":"steam","has_keys":false,"is_free":false,"is_pre_order":false,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_key_01","type":"game_key","virtual_prices":[]}],"unit_type":"game"}]
Réponse
application/json
{ "items": [ {}, {} ] }

Lire une liste de clés de jeu par groupe spécifique

Requête

Récupère une liste de clés de jeu au sein d'un groupe spécifique pour la constitution d'un catalogue.

Attention. Tous les projets sont soumis à une limite de nombre d'objets que vous pouvez obtenir dans la réponse. La valeur par défaut et la valeur maximale sont 50 éléments par réponse. Pour obtenir plus de données page par page, utilisez les champs limit et offset.
Sécurité
AuthForClient
Chemin
project_idintegerobligatoire

ID de projet.

Exemple: 44056
external_idstringobligatoire

External ID du groupe.

Par défaut "all"
Requête
limitinteger

Nombre maximal d'éléments sur une page.

Exemple: limit=50
offsetinteger

Numéro de l'élément à partir duquel la liste est générée (le compte commence à 0).

Exemple: offset=0
localestring

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

Par défaut "en"
additional_fields[]Array of strings

Liste des champs supplémentaires. Ces champs figureront dans la réponse si vous les envoyez dans votre requête. Champs disponibles media_list, order et long_description.

countrystring

Pays pour la détermination des prix régionaux et des restrictions pour le catalogue. Code pays à deux lettres majuscules selon la norme ISO 3166-1 alpha-2. Si vous ne spécifiez pas explicitement le pays, il sera déterminé en fonction de l'adresse IP de l'utilisateur.

Par défaut "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/fr/api/digital-distribution-hub/v2/project/44056/items/game/key/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Réponses

La liste des clés de jeu a été reçue avec succès.

Corpsapplication/json
itemsArray of objects(Catalog_inline_response_200_3_items)
Exemple: [{"attributes":{"$ref":"#/components/examples/client-attribute-game-horror/Catalog_value"},"description":"Game description","drm_name":"Steam","drm_sku":"steam","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","price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"game_1","type":"game_key","virtual_prices":[]},{"attributes":{"$ref":"#/components/examples/client-attribute-game-horror/Catalog_value"},"description":"Game description","drm_name":"Steam","drm_sku":"steam","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","price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_2","type":"game_key","virtual_prices":[]}]
Réponse
application/json
{ "items": [ {}, {} ] }
Opérations
Opérations
Opérations
Opérations
Opérations