Skip to content

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

LiveOps is a toolkit for driving ongoing player engagement through promotions and personalized offers.

Use the API to manage the following features:

  • Promotions — create and manage coupons, promo codes, discounts, and bonus campaigns.
  • Personalization — specify the conditions for displaying the item catalog and applying promotions only for certain authorized users.
  • Promotion limits — set a limit on how many times a promotion can be used by a user and configure scheduled resets for these limits.
  • Reward chains & Value points — configure reward progressions tied to value point accumulation.
  • Daily chains — set up recurring daily rewards to motivate regular logins.
  • Offer chains — build sequential purchase offers with per-step pricing and free reward options.
  • Upsell — a sales method in which the user is offered to buy an item with additional value.

API calls

The API is divided into the following groups:

  • Admin — calls for creating, updating, activating, and deleting campaigns and chain configurations. Authenticated via basic access authentication with your merchant or project credentials.
  • Client — calls for retrieving available promotions, getting active chains, redeeming codes, and claiming rewards on behalf of authenticated end users. Authenticated via user JWT.
Download OpenAPI description
Languages
Servers
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/api/liveops/
Operations

Coupons

This API allows to you to manage coupons.

Operations

Promo codes

This API allows to manage promo codes.

Operations

Unique catalog offers

This API allows to you to manage unique catalog offers.

Operations

Discounts

This API allows to you to manage discount promotions.

Operations

Bonuses

This API allows to manage bonus promotions.

Operations

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.

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations

Get current user's offer chain by IDClient-side

Request

Gets the current user’s offer chain by the offer chain's ID.

Security
XsollaLoginUserJWT
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
offer_chain_idintegerrequired

Offer chain ID.

Example: 101
curl -i -X GET \
  https://store.xsolla.com/api/v2/project/44056/user/offer_chain/101 \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

The user’s offer chain was successfully retrieved.

Bodyapplication/json
idinteger

Offer chain ID.

Example: 9
namestring

Offer chain name.

Example: "Weekly quest"
descriptionstring or null

Offer chain description.

Example: "Major weekly quest"
orderinteger(order)

Defines arrangement order.

Example: 1
date_startstring(date-time)(offer_chain_date_start)

Date when the offer chain starts.

Example: "2020-04-15T18:16:00+05:00"
date_endstring or null(date-time)(offer_chain_date_end)

Date when the offer chain ends. Can be null. If date_end is null, the offer chain will not have a time limit.

Example: "2020-04-15T18:16:00+05:00"
stepsArray of objects(client-offer-chain-step-model)
recurrent_scheduleobject or null(offer_chain_recurrent_schedule_client_side)

Reset period of the offer chain.

next_step_numberinteger or null

Next offer chain step number. null if the offer chain is completed.

Example: 1
Response
application/json
{ "id": 4, "name": "Offer chain with bundles", "description": null, "date_start": "2010-04-15T18:16:00+05:00", "date_end": "2025-04-25T18:16:00+05:00", "order": 1, "recurrent_schedule": null, "steps": [ {}, {} ], "next_step_number": 1 }

Claim free offer chain stepClient-side

Request

Completes the current user’s progression through the offer chain step and grants the associated reward.

Notice

Use this call only for free steps in the offer chain. For steps that require payment in real currency, use the Create order for paid offer chain step call instead.
Security
XsollaLoginUserJWT
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
offer_chain_idintegerrequired

Offer chain ID.

Example: 101
step_numberintegerrequired

Offer chain step number.

Example: 1
curl -i -X POST \
  https://store.xsolla.com/api/v2/project/44056/user/offer_chain/101/step/number/1/claim \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

The free step was successfully claimed and the reward granted.

Bodyapplication/json
order_idinteger

Order ID.

Response
application/json
{ "order_id": 641 }

Create order for paid offer chain stepClient-side

Request

Creates an order for the item associated with the specified paid offer chain step. The created order gets the new order status.

To open the payment UI in a new window, use the following link: https://secure.xsolla.com/paystation4/?token={token}, where {token} is the received token.

For testing purposes, use this URL: https://sandbox-secure.xsolla.com/paystation4/?token={token}.

Notice

This method must be used on the client side. The user's IP address is used to determine the country, which affects the currency and available payment methods. Using this method from the server side may result in incorrect currency detection and affect payment methods in Pay Station.

Notice

Use this call only for paid offer chain steps. For free steps, use the Claim free offer chain step call instead.
Security
XsollaLoginUserJWT
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
offer_chain_idintegerrequired

Offer chain ID.

Example: 101
step_numberintegerrequired

Offer chain step number.

Example: 1
curl -i -X POST \
  https://store.xsolla.com/api/v2/project/44056/user/offer_chain/101/step/number/1/order \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Order was successfully created.

Bodyapplication/json
order_idinteger

Order ID.

tokenstring

Payment token.

Response
application/json
{ "order_id": 641, "token": "f4puMEFFDZcx9nv5HoNHIkPe9qghvBQo" }
Operations
Operations