콘텐츠로 건너뛰기

개요

카탈로그 API를 통해 엑솔라 측 인게임 아이템에 대한 카탈로그를 구성하고 스토어 사용자에게 카탈로그를 표시합니다.

API를 통해 다음 카탈로그 엔터티를 관리할 수 있습니다:

  • 가상 아이템 - 무기, 스킨, 부스터와 같은 인게임 아이템.
  • 인게임 재화 - 가상 아이템을 구매하는 데 사용되는 가상 화폐.
  • 인게임 재화 패키지 - 사전 정의된 인게임 재화 번들.
  • 번들 - 가상 아이템, 통화 또는 단일 SKU로 판매되는 게임 키의 결합 패키지.
  • 게임 키 - Steam이나 기타 DRM 제공업체와 같은 플랫폼을 통해 배포되는 게임 및 DLC의 키.
  • 그룹 - 카탈로그 내 아이템을 정리하고 분류하기 위한 로직 그룹.

API 호출

API는 다음 그룹으로 구분됩니다:

  • Admin - 카탈로그 아이템 및 그룹 생성, 업데이트, 삭제 및 구성을 위한 호출. 상품 또는 프로젝트 자격 증명으로 기본 액세스 인증을 통해 인증됩니다. 스토어프런트 용도로 사용되지 않습니다.
  • Catalog - 아이템 검색 및 최종 사용자를 위한 맞춤형 스토어프론트 구축을 위한 호출. 높은 부하 시나리오를 처리하도록 설계되었습니다. 사용자별 한도나 진행 중인 프로모션과 같은 개인화된 데이터를 반환하기 위해 선택적 사용자 JWT 인증을 지원합니다.
OpenAPI 설명 다운로드
언어
서버
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/ko/api/catalog/
작업
작업
작업
작업

요청

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

참고

권한 없이 액세스할 수 있는 이 엔드포인트는 일반 데이터를 반환합니다. 그러나 권한이 제공되면 사용 가능한 사용자 제한 및 프로모션과 같은 개인화된 결과를 제공하기 위해 사용자별 세부 정보를 사용하여 응답이 보강됩니다.
보안
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://store.xsolla.com/api/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://store.xsolla.com/api/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를 사용하면 모든 종류의 판매할 수 있는 아이템 또는 특정 아이템을 가져올 수 있습니다.

작업
작업
작업