Saltar al contenido

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.

Descargar descripción de OpenAPI
Idiomas
Servidores
Mock server
https://xsolla.redocly.app/_mock/es/api/shop-builder/
https://store.xsolla.com/api/
Operaciones

Catálogo personalizado

Esta API permite especificar reglas para los atributos de usuario. Si el usuario cumple todas las condiciones de una regla específica, se mostrarán los elementos personalizados.

Para promociones personalizadas, consulte la sección Promotions.

Para transmitir atributos antes de una compra, puede utilizar Xsolla Login API o transmitirlos a la propiedad user.attributes mientras se genera el token utilizando Pay Station API.

Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones

Catálogo

Esta API permite obtener cualquier tipo de artículo vendible o artículo específico.

Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones

Cupones

Esta API le permite gestionar cupones.

Operaciones

Códigos promocionales

Esta API permite gestionar códigos promocionales.

Operaciones

Ofertas únicas por catálogo

Esta API le permite gestionar ofertas de catálogo únicas.

Operaciones

Descuentos

Esta API le permite gestionar promociones de descuento.

Operaciones

Bonificaciones

Esta API permite gestionar promociones de bonificaciones.

Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones

Obtener lista de cadenas de ofertasServer-sideAdmin

Solicitud

Obtiene la lista de cadenas de ofertas para su administración.

Aviso

Todos los proyectos tienen un límite en el número de artículos que se pueden devolver en una sola respuesta. El valor por defecto y máximo es 10 artículos por respuesta. Para obtener más datos, utilice los parámetros de consulta limit y offset para la paginación.
Seguridad
basicAuth
Ruta
project_idintegerrequerido

ID del proyecto. Encontrará este parámetro en su Cuenta del editor junto al nombre del proyecto.

Ejemplo: 44056
Consulta
limitinteger>= 1

Límite para el número de elementos presentes en la página.

Ejemplo: limit=50
offsetinteger>= 0

Número del elemento a partir del cual se genera la lista (el conteo empieza desde el 0).

Ejemplo: offset=0
enabledinteger

Filtrar elementos por la marca is_enabled.

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/shop-builder/v2/project/44056/admin/offer_chain?limit=50&offset=0&enabled=0'

Respuestas

La lista de cadenas de ofertas se ha obtenido correctamente.

Cuerpoapplication/json
has_moreboolean(Pagination_has-more)

Se utiliza como indicador de que hay más páginas.

Ejemplo: true
itemsArray of objects(admin-offer-chain-short-model)
Respuesta
application/json
{ "has_more": false, "items": [ {}, {}, {}, {} ] }

Crear cadena de ofertasServer-sideAdmin

Solicitud

Crea una cadena de ofertas.

Seguridad
basicAuth
Ruta
project_idintegerrequerido

ID del proyecto. Encontrará este parámetro en su Cuenta del editor junto al nombre del proyecto.

Ejemplo: 44056
Cuerpoapplication/json
attribute_conditionsArray of tipo = string (object) or tipo = number (object) or tipo = date (object)(chain_user-attribute_conditions_model-post)[ 1 .. 100 ] items

Condiciones para validar los atributos de usuario. Determina la disponibilidad de la cadena en función de si los atributos de usuario cumplen todas las condiciones especificadas.

date_endstring or null(date-time)(offer_chain_date_end)

Fecha en la que finaliza la cadena de ofertas. Puede ser null. Si date_end es null, la cadena de ofertas no tendrá límite de tiempo.

Ejemplo: "2020-04-15T18:16:00+05:00"
date_startstring(date-time)(offer_chain_date_start)requerido

Fecha de inicio de la cadena de ofertas.

Ejemplo: "2020-04-15T18:16:00+05:00"
description(two-letter (object or null)) or (cinco letras (object or null))(description-localization-object)

Objeto con traducciones para la descripción del artículo. Acepta valores en uno de dos formatos: códigos de idioma de dos letras en minúscula (p. ej., en) o códigos de configuración regional de cinco caracteres (p. ej., en-US). Aunque ambos formatos se aceptan como entradas, las respuestas devuelven códigos de idioma de dos letras en minúscula. Cuando se facilitan ambas opciones para el mismo idioma (p. ej. en y en-US), se almacena el último valor proporcionado. Puede consultar la lista completa de idiomas admitidos en la documentación.

One of:

Objeto con traducciones para la descripción del artículo. Acepta valores en uno de dos formatos: códigos de idioma de dos letras en minúscula (p. ej., en) o códigos de configuración regional de cinco caracteres (p. ej., en-US). Aunque ambos formatos se aceptan como entradas, las respuestas devuelven códigos de idioma de dos letras en minúscula. Cuando se facilitan ambas opciones para el mismo idioma (p. ej. en y en-US), se almacena el último valor proporcionado. Puede consultar la lista completa de idiomas admitidos en la documentación.

is_always_visibleboolean(chain_is_always_visible)

Si todos los usuarios pueden ver la cadena:

  • Si es true, la cadena aparece siempre, independientemente del estado de autenticación o los atributos del usuario.
  • Si es false, la cadena aparece solo si no se encuentra ninguna cadena personalizada. Por ejemplo, si el usuario no está autenticado o sus atributos no coinciden con ninguna cadena personalizada.

Solo se aplica en el contexto de cadenas personalizadas y se utiliza si no se transmite la matriz attribute_conditions.

Predeterminado true
Ejemplo: true
is_enabledboolean(is_enabled)requerido
Ejemplo: true
name(two-letter (object or null)) or (cinco letras (object or null))(name-localization-object)requerido

Objeto con traducciones para la descripción del artículo. Acepta valores en uno de estos dos formatos: códigos de idioma de dos letras en minúscula (p. ej., en) o códigos de idioma de cinco caracteres (p. ej., en-US). Aunque ambos formatos se aceptan como entradas, las respuestas devuelven códigos de idioma de dos letras en minúscula. Cuando se facilitan ambas opciones para el mismo idioma (p. ej. en y en-US), se almacena el último valor proporcionado. Puede consultar la lista completa de idiomas admitidos en la documentación.

One of:

Objeto con traducciones para la descripción del artículo. Acepta valores en uno de estos dos formatos: códigos de idioma de dos letras en minúscula (p. ej., en) o códigos de idioma de cinco caracteres (p. ej., en-US). Aunque ambos formatos se aceptan como entradas, las respuestas devuelven códigos de idioma de dos letras en minúscula. Cuando se facilitan ambas opciones para el mismo idioma (p. ej. en y en-US), se almacena el último valor proporcionado. Puede consultar la lista completa de idiomas admitidos en la documentación.

name.​arstring or null

Árabe

name.​bgstring or null

Búlgaro

name.​cnstring or null

Chino (simplificado)

name.​csstring or null

Checo

name.​destring or null

Alemán

name.​enstring or null

Inglés

name.​esstring or null

Español (España)

name.​frstring or null

Francés

name.​hestring or null

Hebreo

name.​idstring or null

Indonesio

name.​itstring or null

Italiano

name.​jastring or null

Japonés

name.​kmstring or null

Jemer

name.​kostring or null

Coreano

name.​lostring or null

Lao

name.​mystring or null

Birmano

name.​nestring or null

Nepalí

name.​phstring or null

Filipino

name.​plstring or null

Polaco

name.​ptstring or null

Portugués

name.​rostring or null

Rumano

name.​rustring or null

Ruso

name.​thstring or null

Tailandés

name.​trstring or null

Turco

name.​twstring or null

Chino (tradicional)

name.​vistring or null

Vietnamita

orderinteger(order)

Define el orden de disposición.

Ejemplo: 1
recurrent_schedule(interval_type = weekly (object or null)) or (interval_type = monthly (object or null)) or (interval_type = hourly (object or null))(offer_chain_recurrent_schedule_create_update)

Periodo de reinicio de la cadena de ofertas.

One of:

Reinicio semanal de la cadena de ofertas.

stepsArray of objects(create-offer-chain-step-model)requerido
steps[].​is_freeboolean(offer_chain_is_free)requerido

Indica si el paso de la cadena de ofertas es gratuito:

steps[].​itemsArray of objects(modify-offer-chain-item-model)non-emptyrequerido
steps[].​items[].​orderinteger or null>= 0

Orden de recompensa para el paso de la cadena de ofertas.

steps[].​items[].​quantityinteger>= 1requerido

Cantidad del artículo de recompensa para este paso de cadena.

steps[].​items[].​skustring(sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$requerido

ID único del artículo. El SKU solo puede contener caracteres alfanuméricos latinos en minúsculas y mayúsculas, puntos, guiones y guiones bajos.

Ejemplo: "booster_mega_1"
steps[].​step_numberinteger(offer_chain_step_number)>= 1requerido

Número del paso.

Ejemplo: 2
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/es/api/shop-builder/v2/project/44056/admin/offer_chain \
  -H 'Content-Type: application/json' \
  -d '{
    "date_end": null,
    "date_start": "2023-04-15T18:16:00+05:00",
    "description": {
      "de": "Eine kurze Beschreibung einer regulären Angebotskette",
      "en": "A short description of a regular offer chain",
      "fr": "Une brève description d'\''une chaîne d'\''offres régulière",
      "it": "Una breve descrizione di una catena di offerte regolare",
      "ru": "Краткое описание обычной цепочки предложений"
    },
    "is_always_visible": true,
    "is_enabled": true,
    "name": {
      "de": "Neue Angebotskette",
      "en": "New offer chain",
      "fr": "Nouvelle chaîne d'\''offres",
      "it": "Nuova catena di offerte",
      "ru": "Новая цепочка предложений"
    },
    "order": 4,
    "recurrent_schedule": null,
    "steps": [
      {
        "is_free": false,
        "items": [
          {
            "quantity": 2,
            "sku": "chain_step_1_paid_bundle_sku"
          }
        ],
        "step_number": 1
      },
      {
        "is_free": true,
        "items": [
          {
            "quantity": 1,
            "sku": "chain_step_2_free_virtual_good_sku"
          }
        ],
        "step_number": 2
      },
      {
        "is_free": false,
        "items": [
          {
            "quantity": 5,
            "sku": "chain_step_3_paid_virtual_currency_package_sku"
          }
        ],
        "step_number": 3
      },
      {
        "is_free": true,
        "items": [
          {
            "quantity": 1,
            "sku": "chain_step_4_free_bundle_sku"
          }
        ],
        "step_number": 4
      }
    ]
  }'

Respuestas

La cadena de ofertas se ha creado correctamente.

Cuerpoapplication/json
offer_chain_idinteger
Ejemplo: 10
Respuesta
application/json
{ "offer_chain_id": 10 }

Eliminar cadena de ofertasServer-sideAdmin

Solicitud

Elimina una cadena de ofertas determinada.

Tras la eliminación:

  • Se mantienen todas las recompensas ya recibidas por los usuarios.
  • Los pasos no completados dejan de estar disponibles y ya no se pueden obtener sus recompensas.

A diferencia de la desactivación de la cadena de ofertas mediante la llamada Activar o desactivar cadena de ofertas, la eliminación es irreversible y no se mantiene el progreso del usuario.

Seguridad
basicAuth
Ruta
project_idintegerrequerido

ID del proyecto. Encontrará este parámetro en su Cuenta del editor junto al nombre del proyecto.

Ejemplo: 44056
offer_chain_idintegerrequerido

ID de cadena de ofertas.

Ejemplo: 101
curl -i -X DELETE \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/es/api/shop-builder/v2/project/44056/admin/offer_chain/id/101

Respuestas

La cadena de ofertas se ha eliminado correctamente.

Cuerpo
Respuesta
Sin contenido
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones
Operaciones