> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Store Items

> _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new Economy features are being developed only for version 2._ Retrieves the set of items defined for the specified store, including all prices defined, for the specified player

## Error codes

This operation may return the following PlayFab errors:

| Error | Code |
| --- | --- |
| CatalogNotConfigured | 1218 |
| ProductDisabledForTitle | 1609 |
| StoreNotFound | 1221 |




## OpenAPI

````yaml /services/playfab/api-references/rest/server/server.openapi.json post /Server/GetStoreItems
openapi: 3.0.0
info:
  version: '260922'
  title: PlayFab Server API
  description: >-
    Provides functionality to allow external (developer-controlled) servers to
    interact with user inventories and data in a trusted manner, and to handle
    matchmaking and client connection orchestration
  termsOfService: https://playfab.com/terms/
  contact:
    url: https://community.playfab.com/index.html
  license:
    name: Apache 2.0
    url: https://github.com/PlayFab/API_Specs/blob/master/LICENSE
servers:
  - url: https://{titleId}.playfabapi.com
    description: PlayFab title endpoint
    variables:
      titleId:
        default: your_title_id
        description: Your PlayFab title ID (hex).
security: []
tags:
  - name: Account Management
    description: Account Management APIs
  - name: Analytics
    description: Analytics APIs
  - name: Authentication
    description: Authentication APIs
  - name: Character Data
    description: Character Data APIs
  - name: Characters
    description: Characters APIs
  - name: Content
    description: Content Service APIs
  - name: Friend List Management
    description: Friend List Management APIs
  - name: Matchmaking
    description: Matchmaking APIs
  - name: Platform Specific Methods
    description: Platform Specific Methods APIs
  - name: Player Data Management
    description: Player Data Management APIs
  - name: Player Item Management
    description: Player Item Management APIs
  - name: PlayStream
    description: PlayStream Management APIs
  - name: Server-Side Cloud Script
    description: Server-Side Cloud Script APIs
  - name: Shared Group Data
    description: Shared Group Data APIs
  - name: Title-Wide Data Management
    description: Title-Wide Data Management APIs
paths:
  /Server/GetStoreItems:
    post:
      tags:
        - Title-Wide Data Management
      summary: Get Store Items
      description: >
        _NOTE: This is a Legacy Economy API, and is in bugfix-only mode. All new
        Economy features are being developed only for version 2._ Retrieves the
        set of items defined for the specified store, including all prices
        defined, for the specified player


        ## Error codes


        This operation may return the following PlayFab errors:


        | Error | Code |

        | --- | --- |

        | CatalogNotConfigured | 1218 |

        | ProductDisabledForTitle | 1609 |

        | StoreNotFound | 1221 |
      operationId: GetStoreItems
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetStoreItemsServerRequest'
        description: >-
          A store contains an array of references to items defined in one or
          more catalog versions of the game, along with the prices for the item,
          in both real world and virtual currencies. These prices act as an
          override to any prices defined in the catalog. In this way, the base
          definitions of the items may be defined in the catalog, with all
          associated properties, while the pricing can be set for each store, as
          needed. This allows for subsets of goods to be defined for different
          purposes (in order to simplify showing some, but not all catalog items
          to users, based upon different characteristics), along with unique
          prices. Note that all prices defined in the catalog and store
          definitions for the item are considered valid, and that a compromised
          client can be made to send a request for an item based upon any of
          these definitions. If no price is specified in the store for an item,
          the price set in the catalog should be displayed to the user.
      responses:
        '200':
          $ref: '#/components/responses/GetStoreItemsResult'
        '400':
          $ref: '#/components/responses/ApiErrorWrapper'
      security:
        - SecretKey: []
components:
  schemas:
    GetStoreItemsServerRequest:
      description: >-
        A store contains an array of references to items defined in one or more
        catalog versions of the game, along with the prices for the item, in
        both real world and virtual currencies. These prices act as an override
        to any prices defined in the catalog. In this way, the base definitions
        of the items may be defined in the catalog, with all associated
        properties, while the pricing can be set for each store, as needed. This
        allows for subsets of goods to be defined for different purposes (in
        order to simplify showing some, but not all catalog items to users,
        based upon different characteristics), along with unique prices. Note
        that all prices defined in the catalog and store definitions for the
        item are considered valid, and that a compromised client can be made to
        send a request for an item based upon any of these definitions. If no
        price is specified in the store for an item, the price set in the
        catalog should be displayed to the user.
      type: object
      properties:
        CatalogVersion:
          description: >-
            Catalog version to store items from. Use default catalog version if
            null
          type: string
        CustomTags:
          description: >-
            The optional custom tags associated with the request (e.g. build
            number, external trace identifiers, etc.).
          type: object
        PlayFabId:
          description: >-
            Optional identifier for the player to use in requesting the store
            information - if used, segment overrides will be applied
          type: string
        StoreId:
          description: Unqiue identifier for the store which is being requested
          type: string
      required:
        - StoreId
      example:
        StoreId: BonusStore
        PlayFabId: '20394883'
    GetStoreItemsResult:
      type: object
      properties:
        CatalogVersion:
          description: The base catalog that this store is a part of.
          type: string
        MarketingData:
          allOf:
            - $ref: '#/components/schemas/StoreMarketingModel'
          description: Additional data about the store.
        Source:
          allOf:
            - $ref: '#/components/schemas/SourceType'
          description: How the store was last updated (Admin or a third party).
        Store:
          description: Array of items which can be purchased from this store.
          type: array
          items:
            $ref: '#/components/schemas/StoreItem'
          x-isUnordered: true
          x-isclass: true
        StoreId:
          description: The ID of this store.
          type: string
      example:
        Store:
          - ItemId: shield_level_5
            VirtualCurrencyPrices:
              RM: 180
              GV: 20
            RealCurrencyPrices:
              GBP: 100
          - ItemId: energy_boost_1
            VirtualCurrencyPrices:
              RM: 250
              GV: 30
          - ItemId: starterpack_1
            VirtualCurrencyPrices:
              RM: 399
        Source: Admin
        CatalogVersion: '1'
        StoreId: BonusStore
        MarketingData:
          DisplayName: Amazing Bonus Store
          Description: Elite tier bonuses available here
    ApiErrorWrapper:
      description: The basic wrapper around every failed API response
      type: object
      properties:
        code:
          description: Numerical HTTP code
          type: integer
        status:
          description: String HTTP code
          type: string
        error:
          description: Playfab error code
          type: string
        errorCode:
          description: Numerical PlayFab error code
          type: integer
        errorMessage:
          description: Description for the PlayFab errorCode
          type: string
        errorDetails:
          description: Detailed description of individual issues with the request object
          type: object
      required:
        - code
        - errorCode
    StoreMarketingModel:
      description: Marketing data about a specific store
      type: object
      properties:
        Description:
          description: Tagline for a store.
          type: string
        DisplayName:
          description: Display name of a store as it will appear to users.
          type: string
        Metadata:
          description: Custom data about a store.
          type: object
    SourceType:
      type: string
      enum:
        - Admin
        - BackEnd
        - GameClient
        - GameServer
        - Partner
        - Custom
        - API
    StoreItem:
      description: A store entry that list a catalog item at a particular price
      type: object
      properties:
        CustomData:
          description: >-
            Store specific custom data. The data only exists as part of this
            store; it is not transferred to item instances
          type: object
        DisplayPosition:
          description: >-
            Intended display position for this item. Note that 0 is the first
            position
          type: number
          x-actualtype: uint32
        ItemId:
          description: >-
            Unique identifier of the item as it exists in the catalog - note
            that this must exactly match the ItemId from the catalog
          type: string
        RealCurrencyPrices:
          description: Override prices for this item for specific currencies
          type: object
          x-actualtype: uint32
        VirtualCurrencyPrices:
          description: >-
            Override prices for this item in virtual currencies and "RM" (the
            base Real Money purchase price, in USD pennies)
          type: object
          x-actualtype: uint32
      required:
        - ItemId
      x-sortKey: ItemId
  responses:
    GetStoreItemsResult:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              code:
                type: integer
                description: >-
                  The Http status code. If X-ReportErrorAsSuccess header is set
                  to true, this will report the actual http error code.
              status:
                type: string
                description: The Http status code as a string.
              data:
                $ref: '#/components/schemas/GetStoreItemsResult'
            example:
              code: 200
              status: OK
              data:
                Store:
                  - ItemId: shield_level_5
                    VirtualCurrencyPrices:
                      RM: 180
                      GV: 20
                    RealCurrencyPrices:
                      GBP: 100
                  - ItemId: energy_boost_1
                    VirtualCurrencyPrices:
                      RM: 250
                      GV: 30
                  - ItemId: starterpack_1
                    VirtualCurrencyPrices:
                      RM: 399
                Source: Admin
                CatalogVersion: '1'
                StoreId: BonusStore
                MarketingData:
                  DisplayName: Amazing Bonus Store
                  Description: Elite tier bonuses available here
    ApiErrorWrapper:
      description: This is the outer wrapper for all responses with errors
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorWrapper'
  securitySchemes:
    SecretKey:
      type: apiKey
      in: header
      name: X-SecretKey
      description: >-
        This API requires a title secret key, available to title admins, from
        PlayFab Game Manager.

````

## Related topics

- [Get Store Items](/services/playfab/api-references/rest/admin/title-wide-data-management/get-store-items.md)
- [Stores (Economy Legacy) Quickstart](/services/playfab/economy-monetization/economy/stores/quickstart.md)
- [Stores and sales in Economy (Legacy)](/services/playfab/economy-monetization/economy/tutorials/stores-and-sales.md)
- [Get Item](/services/playfab/api-references/rest/economy/catalog/get-item.md)
- [Get Items](/api-reference/catalog/get-items.md)
