콘텐츠로 건너뛰기

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.

OpenAPI 설명 다운로드
언어
서버
Mock server
https://xsolla.redocly.app/_mock/ko/api/shop-builder/
https://store.xsolla.com/api/
작업

개인 맞춤형 카탈로그

이 API를 사용하여 사용자 특성에 대한 규칙을 지정할 수 있습니다. 사용자가 구체적인 규칙에 대한 모든 조건을 충족하면 개인 맞춤형 아이템이 표시됩니다.

개인 맞춤형 프로모션에 대한 내용은 프로모션 섹션을 참조하십시오.

구매 전에 특성을 전달하려면 엑솔라 로그인 API를 사용하거나 페이 스테이션 API를 사용하여 토큰을 생성하는 동안 user.attributes 특성으로 특성을 전달할 수 있습니다.

작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업

카탈로그

이 API를 사용하면 모든 종류의 판매할 수 있는 아이템 또는 특정 아이템을 가져올 수 있습니다.

작업
작업
작업

지정한 그룹으로 게임 키 목록 가져오기Client-side

요청

카탈로그 작성을 위해 지정된 그룹에서 게임 키를 가져옵니다.

주의

모든 프로젝트에는 응답에서 얻을 수 있는 아이템 수에 제한이 있습니다. 기본값과 최대값은 응답당 50개 아이템입니다. 페이지별로 더 많은 데이터 페이지를 가져오려면 제한오프셋 필드를 사용합니다.

참고

아이템 카탈로그 API 호출은 권한이 없어도 사용할 수 있지만 인증 헤더에서 사용자 JWT를 전달한 경우에만 사용자 맞춤형 카탈로그를 가져올 수 있습니다.
보안
XsollaLoginUserJWT
경로
project_idinteger필수

프로젝트 ID입니다. 이 매개 변수는 관리자 페이지의 프로젝트 이름 옆에서 확인할 수 있습니다.

예제: 44056
external_idstring필수

그룹 외부 ID입니다.

기본값 "all"
쿼리
limitinteger>= 1

페이지 요소 개수 제한입니다.

예제: limit=50
offsetinteger>= 0

목록이 생성된 요소의 개수입니다(개수는 0부터 시작함).

예제: offset=0
localestring

응답 언어입니다. ISO 639-1에 따른 두 자리 소문자 언어 코드입니다.

기본값 "en"
additional_fields[]Array of strings

추가 필드의 목록입니다. 이러한 필드는 요청에서 보내는 경우 응답에 포함됩니다.

항목 열거형"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2에 따른 2자리 대문자 국가 코드입니다. 엑솔라에서 지원하는 국가국가 판별 프로세스에 대한 자세한 정보는 설명서를 확인하십시오.

예제: country=US
promo_codestring[ 1 .. 128 ] characters

고유한 대/소문자 구분 코드입니다. 문자와 숫자를 포함합니다.

예제: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

사용자가 사용할 수 없는 사용기간 제한 아이템을 표시합니다. 해당 아이템의 사용기간이 아직 시작되지 않았거나 이미 만료되었습니다.

기본값 0
예제: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ko/api/shop-builder/v2/project/44056/items/game/key/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

응답

게임 키 목록을 성공적으로 수신했습니다.

본문application/json
has_moreboolean(Pagination_has-more)

페이지가 더 있다는 표시로 사용됩니다.

예제: true
itemsArray of objects
예제: [{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}],"description":"Game description","drm_name":"Steam","drm_sku":"steam_key_1","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","periods":[{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}],"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"com.xsolla.game_1","type":"game_key","virtual_prices":[]},{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}],"description":"Game description","drm_name":"Steam","drm_sku":"steam_key_2","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","periods":[],"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":null,"sku":"com.xsolla.game_2","type":"game_key","virtual_prices":[]}]
응답
application/json
{ "has_more": true, "items": [ {}, {} ] }

요청

카탈로그에 대한 게임 키를 가져옵니다.

참고

권한 없이 액세스할 수 있는 이 엔드포인트는 일반 데이터를 반환합니다. 그러나 권한이 제공되면 사용 가능한 사용자 제한 및 프로모션과 같은 개인화된 결과를 제공하기 위해 사용자별 세부 정보를 사용하여 응답이 보강됩니다.
보안
XsollaLoginUserJWT
경로
project_idinteger필수

프로젝트 ID입니다. 이 매개 변수는 관리자 페이지의 프로젝트 이름 옆에서 확인할 수 있습니다.

예제: 44056
item_skustring필수

아이템 SKU입니다.

기본값 "xsollus_basic_edition_steam"
쿼리
localestring

응답 언어입니다. ISO 639-1에 따른 두 자리 소문자 언어 코드입니다.

기본값 "en"
additional_fields[]Array of strings

추가 필드의 목록입니다. 이러한 필드는 요청에서 보내는 경우 응답에 포함됩니다.

항목 열거형"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2에 따른 2자리 대문자 국가 코드입니다. 엑솔라에서 지원하는 국가국가 판별 프로세스에 대한 자세한 정보는 설명서를 확인하십시오.

예제: country=US
promo_codestring[ 1 .. 128 ] characters

고유한 대/소문자 구분 코드입니다. 문자와 숫자를 포함합니다.

예제: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

사용자가 사용할 수 없는 사용기간 제한 아이템을 표시합니다. 해당 아이템의 사용기간이 아직 시작되지 않았거나 이미 만료되었습니다.

기본값 0
예제: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ko/api/shop-builder/v2/project/44056/items/game/key/sku/{item_sku}?locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

응답

게임 키를 성공적으로 수신했습니다.

본문application/json
attributesArray of objects(Game-Keys_schemas-client-attributes)

아이템에 해당하는 특성 및 해당 값의 목록입니다. 카탈로그 필터링에 사용할 수 있습니다.

기본값 []
예제: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
can_be_boughtboolean(Can_be_bought)

true일 경우 사용자는 아이템을 구매할 수 있습니다.

예제: true
descriptionstring

아이템 설명입니다.

예제: "Game description"
drm_namestring

DRM 이름입니다.

예제: "Steam"
drm_skustring

고유 DRM ID입니다. SKU는 소문자 및 대문자 라틴 영숫자, 마침표, 대시 및 밑줄만 포함할 수 있습니다.

예제: "steam_key_1"
groupsArray of objects(items_client_groups_response)

아이템이 속한 그룹입니다.

기본값 []
예제: [{"external_id":"exclusive","name":"Exclusive"}]
has_keysboolean

true인 경우 게임 키에 판매용 키가 있습니다.

예제: true
image_urlstring

이미지 URL입니다.

예제: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
is_freeboolean(value-is_free)

true일 경우 아이템은 무료입니다.

기본값 false
예제: false
is_pre_orderboolean

true인 경우 사전 판매 게임 키이며 출시 날짜가 전달되지 않은 상태입니다.

예제: true
limitsobject or null(Catalog_item_limits)

아이템 제한 사항입니다.

namestring

아이템 이름입니다.

예제: "Game name"
periodsArray of objects or null(item-periods)

아이템 판매 기간입니다.

priceobject

아이템 가격입니다.

예제: {"amount":"30.5","amount_without_discount":"30.5","currency":"USD"}
promotionsArray of objects(Catalog_item_promotions)

장바구니의 특정 아이템에 적용된 프로모션. 다음의 경우 배열이 반환됩니다.

  • 특정 아이템에 대한 할인 프로모션이 구성된 경우

  • 선택한 아이템 할인 설정이 있는 프로모션 코드가 적용된 경우

적용된 아이템 수준 프로모션이 없는 경우 빈 배열이 반환됩니다.

release_datestring

ISO 8601 형식으로 된 게임 키 출시 날짜입니다.

예제: "2020-08-11T10:00:00+03:00"
skustring

고유 아이템 ID입니다. SKU는 소문자 및 대문자 라틴 영숫자, 마침표, 대시 및 밑줄만 포함할 수 있습니다.

예제: "com.xsolla.game_1"
typestring

아이템의 유형: game_key.

예제: "game_key"
virtual_pricesArray of objects

가상 가격입니다.

예제: []
응답
application/json
{ "attributes": [ {}, {} ], "can_be_bought": true, "description": "Game description", "drm_name": "Steam", "drm_sku": "steam_key_1", "groups": [ {}, {} ], "has_keys": true, "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "is_free": false, "is_pre_order": true, "limits": null, "name": "Game name", "periods": [ {} ], "price": { "amount": "30.5", "amount_without_discount": "30.5", "currency": "USD" }, "promotions": [], "release_date": "2020-08-11T10:00:00+03:00", "sku": "com.xsolla.game_1", "type": "game_key", "virtual_prices": [] }

요청

카탈로그용 게임을 가져옵니다.

참고

권한 부여 없이 액세스할 수 있는 이 끝점은 일반 데이터를 반환합니다. 그러나 권한 부여는 사용 가능한 사용자 제한 및 프로모션과 같은 개인화된 결과에 대한 사용자별 세부 정보로 응답을 보강합니다.
보안
XsollaLoginUserJWT
경로
project_idinteger필수

프로젝트 ID입니다. 이 매개 변수는 관리자 페이지의 프로젝트 이름 옆에서 확인할 수 있습니다.

예제: 44056
item_skustring필수

아이템 SKU입니다.

기본값 "full_game_1"
쿼리
localestring

응답 언어입니다. ISO 639-1에 따른 두 자리 소문자 언어 코드입니다.

기본값 "en"
additional_fields[]Array of strings

추가 필드의 목록입니다. 이러한 필드는 요청에서 보내는 경우 응답에 포함됩니다.

항목 열거형"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2에 따른 2자리 대문자 국가 코드입니다. 엑솔라에서 지원하는 국가국가 판별 프로세스에 대한 자세한 정보는 설명서를 확인하십시오.

예제: country=US
promo_codestring[ 1 .. 128 ] characters

고유한 대/소문자 구분 코드입니다. 문자와 숫자를 포함합니다.

예제: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

사용자가 사용할 수 없는 사용기간 제한 아이템을 표시합니다. 해당 아이템의 사용기간이 아직 시작되지 않았거나 이미 만료되었습니다.

기본값 0
예제: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ko/api/shop-builder/v2/project/44056/items/game/sku/{item_sku}?locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

응답

게임을 성공적으로 수신했습니다.

본문application/json
attributesArray of objects(Game-Keys_schemas-client-attributes)

아이템에 해당하는 특성 및 해당 값의 목록입니다. 카탈로그 필터링에 사용할 수 있습니다.

기본값 []
예제: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
descriptionstring

아이템 설명입니다.

예제: "Game description"
groupsArray of objects(items_client_groups_response)

아이템이 속한 그룹입니다.

기본값 []
예제: [{"external_id":"exclusive","name":"Exclusive"}]
image_urlstring

이미지 URL입니다.

예제: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
namestring

아이템 이름입니다.

예제: "Game name"
promotionsArray of objects(Catalog_item_promotions)

장바구니의 특정 아이템에 적용된 프로모션. 다음의 경우 배열이 반환됩니다.

  • 특정 아이템에 대한 할인 프로모션이 구성된 경우

  • 선택한 아이템 할인 설정이 있는 프로모션 코드가 적용된 경우

적용된 아이템 수준 프로모션이 없는 경우 빈 배열이 반환됩니다.

skustring

고유 아이템 ID입니다. SKU는 소문자 및 대문자 라틴 영숫자, 마침표, 대시 및 밑줄만 포함할 수 있습니다.

예제: "game_01"
typestring

아이템의 유형: virtual_good/virtual_currency/bundle/physical_good/unit.

예제: "unit"
unit_itemsArray of objects
unit_typestring

유닛의 유형: game.

예제: "game"
응답
application/json
{ "attributes": [ {}, {} ], "description": "Game description", "groups": [ {}, {} ], "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "name": "Game name", "promotions": [], "sku": "com.xsolla.game_1", "type": "unit", "unit_items": [ {}, {} ], "unit_type": "game" }
작업
작업
작업

쿠폰

이 API를 사용하여 쿠폰을 관리할 수 있습니다.

작업

프로모션 코드

이 API를 사용하여 프로모션 코드를 관리할 수 있습니다.

작업

고유 카탈로그 혜택

이 API를 사용하여 고유 카탈로그 혜택을 관리할 수 있습니다.

작업

할인

이 API를 사용하여 할인 프로모션을 관리할 수 있습니다.

작업

보너스

이 API를 사용하여 보너스 프로모션을 관리할 수 있습니다.

작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업