This API allows getting any kind of sellable items or specific item.
- Get promo code rewards
Shop Builder API (2.0.0)
- 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.
Personalized catalog
This API allows to specify rules for user attributes. If the user meets all conditions for a concrete rule, personalized items will be shown.
For personalized promotions see Promotions section.
To pass attributes before a purchase, you can use Xsolla Login API or pass them into user.attributes property while generating token using Pay Station API.
Project ID. You can find this parameter in your Publisher Account next to the name of the project.
- Mock serverhttps://xsolla.redocly.app/_mock/api/shop-builder/v2/project/{project_id}/promocode/remove
- https://store.xsolla.com/api/v2/project/{project_id}/promocode/remove
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
https://xsolla.redocly.app/_mock/api/shop-builder/v2/project/44056/promocode/remove \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"cart": {
"id": "current"
}
}'Promo code is successfully canceled.
Cart price.
{ "cart_id": "cart_id", "is_free": false, "items": [ { … } ], "price": { "amount": "6150.0000000000000000", "amount_without_discount": "6150.0000000000000000", "currency": "USD" } }
Project ID. You can find this parameter in your Publisher Account next to the name of the project.
- Mock serverhttps://xsolla.redocly.app/_mock/api/shop-builder/v2/project/{project_id}/promocode/code/{promocode_code}/rewards
- https://store.xsolla.com/api/v2/project/{project_id}/promocode/code/{promocode_code}/rewards
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
https://xsolla.redocly.app/_mock/api/shop-builder/v2/project/44056/promocode/code/SO6rew99j9/rewards \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'{ "bonus": [ { … }, { … } ], "discount": { "percent": "10.00" }, "is_selectable": true, "discounted_items": [ { … } ] }
Project ID. You can find this parameter in your Publisher Account next to the name of the project.
Unique promotion ID. The external_id may contain only lowercase and uppercase Latin alphanumeric characters, periods, dashes, and underscores.
Promotion validity periods. If multiple periods are specified, both date_from and date_until are required.
Name of promotion. Should contain key/value pairs where key is a locale with "^[a-z]{2}-[A-Z]{2}$" format, value is string.
Limits total numbers of coupons.
Limits total numbers of coupons redeemed by single user.
Number of redemptions per code.
List of items that are discounted by a promo code.
Conditions for validating user attributes. Determine promotion availability based on whether user attributes match all specified conditions.
Array of objects with conditions that set the price range for applying the promotion to the entire cart.
The total price of all items in the user's cart is compared with the price range specified in the condition. Bonuses and discounts are applied to all items in the cart if the price of the cart meets the specified condition.
If you pass this array, set the value of the discounted_items array to null.
Array of objects with conditions that set the price range for applying the promotion to certain items in the cart.
The price of each item in the user's cart is compared with the price range specified in the condition. Bonuses and discounts are applied only to those items in the cart whose price meets the condition.
If you pass this array, set the value of the discounted_items array to null.
- Mock serverhttps://xsolla.redocly.app/_mock/api/shop-builder/v3/project/{project_id}/admin/promocode
- https://store.xsolla.com/api/v3/project/{project_id}/admin/promocode
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
https://xsolla.redocly.app/_mock/api/shop-builder/v3/project/44056/admin/promocode \
-H 'Content-Type: application/json' \
-d '{
"external_id": "promo_code_external_id",
"promotion_periods": [
{
"date_from": "2020-04-15T18:16:00+05:00",
"date_until": "2020-04-25T18:16:00+05:00"
},
{
"date_from": "2020-05-15T18:16:00+05:00",
"date_until": "2020-05-25T18:16:00+05:00"
}
],
"name": {
"en-US": "New Year Bonus",
"de-DE": "Neujahrsbonus"
},
"redeem_total_limit": 100,
"redeem_user_limit": 1,
"redeem_code_limit": 1,
"bonus": [
{
"sku": "com.xsolla.elven_sword_1",
"quantity": 1
},
{
"sku": "com.xsolla.elven_shield_1",
"quantity": 2
},
{
"sku": "com.xsolla.elven_gloves_1",
"quantity": 2
}
]
}'{ "external_id": "coupon_external_id" }