콘텐츠로 건너뛰기

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

Catalog API는 인게임 스토어 카탈로그를 관리하고 구매를 처리하기 위한 엔드포인트를 제공합니다. 엔드포인트를 사용하여 가상 아이템, 인게임 재화, 게임 키, 번들, 장바구니 및 결제 플로우, 아이템 속성을 구성하고 외부 소스에서 아이템을 가져올 수 있습니다.

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

요청

카탈로그 작성을 위해 인게임 재화 목록을 가져옵니다.

주의

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

참고

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

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

예제: 44056
쿼리
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/catalog/v2/project/44056/items/virtual_currency?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(Virtual-Items-Currency_virtual-currency)
응답
application/json
{ "has_more": false, "items": [ {}, {}, {} ] }

인게임 재화 패키지 목록 가져오기Client-side

요청

카탈로그 작성을 위해 인게임 재화 패키지 목록을 가져옵니다.

주의

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

참고

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

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

예제: 44056
쿼리
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/catalog/v2/project/44056/items/virtual_currency/package?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(Virtual-Items-Currency_virtual-currency-package)
응답
application/json
{ "has_more": false, "items": [ {}, {} ] }

요청

카탈로그를 작성하기 위해 SKU별로 가상 재화 패키지를 가져옵니다.

참고

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

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

예제: 44056
virtual_currency_package_skustring필수

인게임 재화 패키지 SKU입니다.

예제: crystal-pack
쿼리
localestring

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

기본값 "en"
countrystring

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

예제: country=US
show_inactive_time_limited_itemsinteger

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

기본값 0
예제: show_inactive_time_limited_items=1
additional_fields[]Array of strings

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

항목 열거형"media_list""order""long_description""custom_attributes""item_order_in_group"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ko/api/catalog/v2/project/44056/items/virtual_currency/package/sku/crystal-pack?locale=en&country=US&show_inactive_time_limited_items=1&additional_fields%5B%5D=media_list' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

응답

인게임 재화 패키지를 성공적으로 수신했습니다.

본문application/json
attributesArray of objects(Virtual-Items-Currency_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"}]}}
bundle_typestring

번들 유형: standard/virtual_currency_package.

예제: "virtual_currency_package"
can_be_boughtboolean(Can_be_bought)

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

예제: true
contentArray of objects

인게임 재화 패키지 콘텐츠입니다.

예제: [{"description":"Crystal Pack - short description","image_url":"https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png","name":"Crystal Pack","quantity":100,"sku":"com.xsolla.crystal_pack_1","type":"virtual_currency"}]
custom_attributesobject(json)(item-custom-attributes-response)

아이템 특성 및 값이 포함된 JSON 개체입니다.

descriptionstring

아이템 설명입니다.

예제: "Crystal Pack Description"
groupsArray of objects(items_client_groups_response)

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

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

이미지 URL입니다.

예제: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
is_freeboolean(value-is_free)

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

기본값 false
예제: false
item_idinteger
limitsobject or null(Catalog_item_limits)

아이템 제한 사항입니다.

namestring

아이템 이름입니다.

예제: "Crystal Pack"
periodsArray of objects(item-periods-response)

아이템 판매 기간입니다.

priceobject

아이템 가격입니다.

promotionsArray of objects(Catalog_item_promotions)

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

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

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

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

skustring

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

예제: "crystal-pack"
typestring

아이템 유형: virtual_good/virtual_currency/bundle.

예제: "bundle"
virtual_pricesArray of objects

가상 가격입니다.

vp_rewardsArray of arrays
응답
application/json
{ "attributes": [], "bundle_type": "virtual_currency_package", "can_be_bought": true, "content": [ {} ], "custom_attributes": { "attr": "value", "purchased": 0 }, "description": "Crystal Pack Short Description", "groups": [], "image_url": "http://vc_package_image.png", "is_free": false, "item_id": 488832, "limits": { "per_item": null, "per_user": {} }, "name": "Crystal Pack", "periods": [ {} ], "price": { "amount": "100", "amount_without_discount": "100", "currency": "USD" }, "promotions": [], "sku": "com.xsolla.crystal_pack_1", "type": "bundle", "virtual_prices": [], "vp_rewards": [] }
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업
작업

카탈로그

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

작업
작업
작업