components:
  examples:
    200-admin-daily-chain:
      summary: Tägliche Belohnung (Beispiel)
      value:
        date_end: '2025-04-25T18:16:00+05:00'
        date_start: '2023-04-15T18:16:00+05:00'
        description:
          en: Daily reward short description
        id: 3
        is_enabled: true
        is_recurrent: false
        name:
          en: Daily reward
          ru: Ежедневная награда
        number_of_steps: 3
        order: 1
        steps:
          - items:
              - description:
                  en: Allows to see the stars
                  ru: Позволяет увидеть звезды
                image_url: https://picture.bundle-picture.png
                item_id: 9010
                name:
                  en: Telescope
                  ru: Телескоп
                quantity: 1
                sku: telescope
                type: virtual_good
              - description:
                  en: Heal 10% of your health
                  ru: Лечит 10% здоровья
                image_url: https://picture.bundle-picture.png
                item_id: 9012
                name:
                  en: Healing potion
                  ru: Зелье лечения
                quantity: 2
                sku: health_potion
                type: virtual_good
            step_id: 7
            step_number: 1
          - items:
              - description:
                  en: Allows to see the stars
                  ru: Позволяет увидеть звезды
                image_url: https://picture.bundle-picture.png
                item_id: 9010
                name:
                  en: Telescope
                  ru: Телескоп
                quantity: 5
                sku: telescope
                type: virtual_good
            step_id: 6
            step_number: 2
          - items:
              - description:
                  en: Allows to see the stars
                  ru: Позволяет увидеть звезды
                image_url: https://picture.bundle-picture.png
                item_id: 9010
                name:
                  en: Telescope
                  ru: Телескоп
                quantity: 2
                sku: telescope
                type: virtual_good
            step_id: 5
            step_number: 3
        type: calendar_hard
    200-admin-daily-chain-list:
      summary: Liste der täglichen Belohnungen (Beispiel)
      value:
        has_more: false
        items:
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description:
              en: Daily reward short description
            id: 1
            is_enabled: false
            is_recurrent: true
            name:
              en: Daily reward
              ru: Ежедневная награда
            number_of_steps: 10
            order: 1
            type: calendar_hard
          - date_end: '2025-04-28T15:00:00+08:00'
            date_start: '2025-04-15T00:00:00+08:00'
            description:
              en: Monthly daily reward short description
            id: 2
            is_enabled: false
            is_recurrent: true
            name:
              en: Monthly daily reward
              ru: Ежедневные награды в цепочке на месяц
            number_of_steps: 13
            order: 2
            type: calendar_hard
          - date_end: '2025-05-31T18:16:00+05:00'
            date_start: '2023-05-01T18:16:00+05:00'
            description:
              en: Login reward short description
            id: 3
            is_enabled: true
            is_recurrent: true
            name:
              en: Login reward
            number_of_steps: 7
            order: 3
            type: rolling_skippable
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description:
              en: Daily reward short description
            id: 4
            is_enabled: true
            is_recurrent: true
            name:
              en: Daily reward
              ru: Ежедневная награда
            number_of_steps: 10
            order: 4
            type: calendar_hard
          - date_end: '2025-11-30T10:00:00+05:00'
            date_start: '2025-11-01T10:00:00+05:00'
            description:
              en: Unskippable login reward short description
            id: 5
            is_enabled: true
            is_recurrent: true
            name:
              en: Unskippable login reward
            number_of_steps: 7
            order: 3
            type: rolling_unskippable
        total_items_count: 3
    200-admin-offer-chain:
      summary: Angebotskette (Beispiel)
      value:
        attribute_conditions:
          - attribute: race
            can_be_missing: false
            operator: eq
            type: string
            value: elf
          - attribute: level
            can_be_missing: false
            operator: ge
            type: number
            value: '10'
          - attribute: 10_level_up_date
            can_be_missing: false
            operator: le
            type: date
            value: '2026-01-01T00:00:00'
        date_end: '2025-04-25T18:16:00+05:00'
        date_start: '2023-04-15T18:16:00+05:00'
        description:
          de: >-
            Personalisierte Angebotskette mit Benutzerattributbedingungen - für
            Elfen der Stufe 10 und höher, die Stufe 10 spätestens am 2026-01-01
            00:00:00 erreicht haben, einschließlich
          en: >-
            Personalized offer chain with user attribute conditions - for level
            10 and above elves who reached level 10 no later than 2026-01-01
            00:00:00, inclusive
          fr: >-
            Chaîne d'offres personnalisée avec des conditions d'attribut
            utilisateur - pour les elfes de niveau 10 et plus qui ont atteint le
            niveau 10 au plus tard le 2026-01-01 00:00:00, inclus
          it: >-
            Catena di offerte personalizzata con condizioni di attributo utente
            - per elfi di livello 10 e superiore che hanno raggiunto il livello
            10 non più tardi del 2026-01-01 00:00:00, inclusi
          ru: >-
            Персонализированная цепочка предложений - для эльфов 10 уровня и
            выше, достигших 10 уровня не позднее 2026-01-01 00:00:00
            включительно
        id: 3
        is_always_visible: false
        is_enabled: true
        name:
          de: Angebotskette
          en: Offer chain
          fr: Chaîne d'offres
          it: Catena di offerte
          ru: Цепочка
        order: 1
        recurrent_schedule: null
        steps:
          - is_free: false
            items:
              - description:
                  de: Ermöglicht das Betrachten der Sterne
                  en: Allows to see the stars
                  fr: Permet de voir les étoiles
                  it: Permette di vedere le stelle
                  ru: Позволяет увидеть звезды
                image_url: https://cdn.picture.vg.sku-telescope.png
                item_id: 9010
                name:
                  de: Teleskop
                  en: Telescope
                  fr: Télescope
                  it: Telescopio
                  ru: Телескоп
                order: 1
                quantity: 1
                sku: telescope
                type: virtual_good
              - description:
                  de: Heilt 10% deiner Gesundheit
                  en: Heal 10% of your health
                  fr: Soigne 10% de votre santé
                  it: Cura il 10% della tua salute
                  ru: Лечит 10% здоровья
                image_url: https://cdn.picture/vg-sku-health_potion.png
                item_id: 9012
                name:
                  de: Heiltrank
                  en: Healing potion
                  fr: Potion de soin
                  it: Pozione curativa
                  ru: Зелье лечения
                order: 0
                quantity: 2
                sku: health_potion
                type: virtual_good
            step_id: 7
            step_number: 1
          - is_free: false
            items:
              - description:
                  de: Ermöglicht das Betrachten der Sterne
                  en: Allows to see the stars
                  fr: Permet de voir les étoiles
                  it: Permette di vedere le stelle
                  ru: Позволяет увидеть звезды
                image_url: https://cdn.picture/vg-sku-telescope.png
                item_id: 9010
                name:
                  de: Teleskop
                  en: Telescope
                  fr: Télescope
                  it: Telescopio
                  ru: Телескоп
                order: 0
                quantity: 5
                sku: telescope
                type: virtual_good
            step_id: 6
            step_number: 2
          - is_free: true
            items:
              - description:
                  de: Ermöglicht das Betrachten der Sterne
                  en: Allows to see the stars
                  fr: Permet de voir les étoiles
                  it: Permette di vedere le stelle
                  ru: Позволяет увидеть звезды
                image_url: https://cdn.picture/vg-sku-telescope.png
                item_id: 9010
                name:
                  de: Teleskop
                  en: Telescope
                  fr: Télescope
                  it: Telescopio
                  ru: Телескоп
                order: 0
                quantity: 2
                sku: telescope
                type: virtual_good
            step_id: 5
            step_number: 3
    200-admin-offer-chain-list:
      summary: Liste der Angebotsketten (Beispiel)
      value:
        has_more: false
        items:
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description:
              de: >-
                Standard-personalisierte Angebotskette für Benutzer, die die
                Bedingungen anderer personalisierter Ketten nicht erfüllen
              en: >-
                Default personalized offer chain for users that do not meet the
                conditions of other personalized chains
              fr: >-
                Chaîne d'offres personnalisée par défaut pour les utilisateurs
                qui ne répondent pas aux conditions des autres chaînes
                personnalisées
              it: >-
                Catena di offerte personalizzata predefinita per gli utenti che
                non soddisfano le condizioni di altre catene personalizzate
              ru: >-
                Персонализированная цепочка по умолчанию для пользователей, не
                подходящих под условия других персонализированных цепочек
            id: 1
            is_always_visible: false
            is_enabled: true
            name:
              de: Neue personalisierte Standard-Angebotskette
              en: New personalized default offer chain
              fr: Nouvelle chaîne d'offres personnalisée par défaut
              it: Nuova catena di offerte personalizzata predefinita
              ru: Новая персонализированная цепочка предложений по умолчанию
            order: 1
            recurrent_schedule: null
          - attribute_conditions:
              - attribute: race
                can_be_missing: false
                operator: eq
                type: string
                value: elf
              - attribute: level
                can_be_missing: false
                operator: ge
                type: number
                value: '10'
              - attribute: 10_level_up_date
                can_be_missing: false
                operator: le
                type: date
                value: '2026-01-01T00:00:00'
            date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description:
              de: >-
                Personalisierte Angebotskette mit Benutzerattributbedingungen -
                für Elfen der Stufe 10 und höher, die Stufe 10 spätestens am
                2026-01-01 00:00:00 erreicht haben, einschließlich
              en: >-
                Personalized offer chain with user attribute conditions - for
                level 10 and above elves who reached level 10 no later than
                2026-01-01 00:00:00, inclusive
              fr: >-
                Chaîne d'offres personnalisée avec des conditions d'attribut
                utilisateur - pour les elfes de niveau 10 et plus qui ont
                atteint le niveau 10 au plus tard le 2026-01-01 00:00:00, inclus
              it: >-
                Catena di offerte personalizzata con condizioni di attributo
                utente - per elfi di livello 10 e superiore che hanno raggiunto
                il livello 10 non più tardi del 2026-01-01 00:00:00, inclusi
              ru: >-
                Персонализированная цепочка предложений с условиями по атрибутам
                пользователя - для эльфов уровня 10 и выше, достигших 10 уровня
                не позднее 2026-01-01 00:00:00 включительно
            id: 2
            is_always_visible: false
            is_enabled: true
            name:
              de: Neue personalisierte Angebotskette
              en: New personalized offer chain
              fr: Nouvelle chaîne d'offres personnalisée
              it: Nuova catena di offerte personalizzata
              ru: Новая персонализированная цепочка предложений
            order: 2
            recurrent_schedule: null
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description:
              de: >-
                Angebotskette, die sich wöchentlich mittwochs um 07:00 Uhr GMT+3
                zurücksetzt
              en: Offer chain that resets weekly on Wednesdays at 07:00 GMT+3
              fr: >-
                Chaîne d'offres qui se réinitialise chaque semaine le mercredi à
                07h00 GMT+3
              it: >-
                Catena di offerte che si resetta settimanalmente il mercoledì
                alle 07:00 GMT+3
              ru: >-
                Цепочка предложений, которая сбрасывается еженедельно по средам
                в 07:00 GMT+3
            id: 4
            is_always_visible: true
            is_enabled: false
            name:
              de: Wöchentliche Angebotskette
              en: Weekly offer chain
              fr: Chaîne d'offres hebdomadaire
              it: Catena di offerte settimanale
              ru: Еженедельная цепочка предложений
            order: 3
            recurrent_schedule:
              day_of_week: 3
              displayable_reset_next_date: '2018-12-05T07:00:00+03:00'
              displayable_reset_start_date: '2018-12-05T07:00:00+03:00'
              interval_type: weekly
              reset_next_date: 1543982400
              time: 07:00:00+03:00
          - date_end: '2025-08-28T15:00:00+08:00'
            date_start: '2025-04-15T00:00:00+08:00'
            description:
              de: >-
                Angebotskette, die sich monatlich am 28. um 15:00 Uhr GMT+8
                zurücksetzt
              en: Offer chain that resets monthly on the 28th at 15:00 GMT+8
              fr: >-
                Chaîne d'offres qui se réinitialise mensuellement le 28 à 15h00
                GMT+8
              it: >-
                Catena di offerte che si resetta mensilmente il 28 alle 15:00
                GMT+8
              ru: >-
                Цепочка предложений, которая сбрасывается ежемесячно 28-го числа
                в 15:00 GMT+8
            id: 5
            is_always_visible: true
            is_enabled: true
            name:
              de: Monatliche Angebotskette
              en: Monthly offer chain
              fr: Chaîne d'offres mensuelle
              it: Catena di offerte mensile
              ru: Ежемесячная цепочка предложений
            order: 4
            recurrent_schedule:
              day_of_month: 28
              displayable_reset_next_date: '2025-05-28T15:00:00+08:00'
              displayable_reset_start_date: '2025-05-28T15:00:00+08:00'
              interval_type: monthly
              reset_next_date: 1748415600
              time: 15:00:00+08:00
    200-clan-reward-chain:
      summary: Clan-Belohnungskette (Beispiel)
      value:
        clan_type: guild
        description:
          en: Clan reward chain description.
        image_url: >-
          https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
        is_enabled: true
        long_description:
          en: Clan reward chain long description.
        name:
          en: Clan reward chain
        order: 1
        periods:
          - date_from: '2020-04-15T18:16:00+05:00'
            date_until: '2021-04-15T18:16:00+05:00'
        popup_header:
          en: How to unlock rewards
        popup_image_url: >-
          https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
        popup_instruction:
          en: >-
            You must be a clan member in order to get clan rewards. You join a
            clan when a clan member invites you to the clan, and you accept the
            invite. You can also create your own clan.
        recurrent_schedule:
          day_of_week: 2
          displayable_reset_next_date: '2023-03-07T11:00:00+08:00'
          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
          interval_type: weekly
          reset_next_date: 1677553200
          time: 11:00:00+08:00
        reward_chain_id: 1
        steps:
          - image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            name:
              en: First step of the reward chain
            price:
              amount: 10
            reward:
              - quantity: 5
                sku: com.xsolla.item_1
              - quantity: 1
                sku: com.xsolla.item_2
            step_id: 1
          - image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            name:
              en: Second step of the reward chain
            price:
              amount: 15
            reward:
              - quantity: 5
                sku: com.xsolla.item_3
              - quantity: 1
                sku: com.xsolla.item_4
            step_id: 2
        value_point:
          description:
            en: Value points for clan reward system.
          image_url: >-
            https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
          is_clan: true
          is_enabled: true
          long_description:
            en: >-
              Value points given to clans to get new rewards in a certain reward
              chain.
          media_list: []
          name:
            en: Clan Reward VP 1
          order: 1
          sku: com.xsolla.clan_value_point_1
    200-client-daily-chain:
      summary: Tägliche Belohnung des Nutzers (Beispiel)
      value:
        date_end: '2025-04-03T18:16:00+05:00'
        date_start: '2025-04-01T18:16:00+05:00'
        description: Active daily reward description
        id: 101
        name: Active daily reward
        order: 1
        steps:
          - items:
              - bundle_type: standard
                content:
                  - description: Virtual good one
                    image_url: https://picture.virtual-good-picture.png
                    is_free: false
                    item_id: 1
                    name: virtual_good_one
                    quantity: 1
                    sku: d0df11c5-f7c4-4907-9ae1-7dd40cecab05
                    type: virtual_good
                  - description: Gold Coins
                    image_url: https://picture.gold_coins.png
                    is_free: false
                    item_id: 2
                    name: Gold Coins
                    quantity: 100
                    sku: coins
                    type: virtual_currency
                description: Many stuff
                image_url: https://picture.bundle-with-many-stuff.png
                is_free: false
                item_id: 10001
                name: Bundle with awesome stuff!
                quantity: 1
                sku: bundle_with_items
                type: bundle
            status: blocked
            step_number: 1
            unlocked_date: 1711978560
          - items:
              - description: Heal 10% of your health
                image_url: https://picture.bundle-picture.png
                is_free: false
                item_id: 9012
                name: Healing potion
                quantity: 1
                sku: health_potion
                type: virtual_good
            status: claimed
            step_number: 2
            unlocked_date: 1712064960
          - items:
              - description: Heal 10% of your health
                image_url: https://picture.bundle-picture.png
                is_free: false
                item_id: 9012
                name: Healing potion
                quantity: 2
                sku: health_potion
                type: virtual_good
            status: claimable
            step_number: 3
            unlocked_date: 1712151360
          - items:
              - description: store_item_0_lost_telescope_2_short_description
                image_url: https://picture.bundle-picture.png
                is_free: false
                item_id: 9011
                name: Free item
                quantity: 1
                sku: free_item
                type: virtual_good
            status: claim_in_future
            step_number: 4
            unlocked_date: 1712237760
        type: calendar_hard
    200-client-daily-chain-list:
      summary: Liste der täglichen Belohnungen des Nutzers (Beispiel)
      value:
        has_more: false
        items:
          - date_end: '2025-04-03T18:16:00+05:00'
            date_start: '2025-04-01T18:16:00+05:00'
            description: null
            id: 101
            name: Active daily reward
            order: 1
            steps:
              - items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    quantity: 1
                    sku: health_potion
                    type: virtual_good
                status: claimed
                step_number: 1
                unlocked_date: 1711978560
              - items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    quantity: 2
                    sku: health_potion
                    type: virtual_good
                status: claimable
                step_number: 2
                unlocked_date: 1712064960
              - items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    quantity: 1
                    sku: free_item
                    type: virtual_good
                status: claim_in_future
                step_number: 3
                unlocked_date: 1712151360
            type: calendar_hard
          - date_end: '2025-05-03T18:16:00+05:00'
            date_start: '2025-05-01T18:16:00+05:00'
            description: null
            id: 102
            name: Active daily reward 2
            order: 1
            steps:
              - items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    quantity: 3
                    sku: free_item
                    type: virtual_good
                status: claimable
                step_number: 1
                unlocked_date: 1714560960
              - items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    quantity: 3
                    sku: health_potion
                    type: virtual_good
                status: claim_in_future
                step_number: 2
                unlocked_date: 1714647360
            type: calendar_hard
          - date_end: '2025-04-03T18:16:00+05:00'
            date_start: '2025-04-01T18:16:00+05:00'
            description: null
            id: 103
            name: Active daily reward 3
            order: 1
            steps:
              - items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    quantity: 3
                    sku: free_item
                    type: virtual_good
                status: claimable
                step_number: 1
                unlocked_date: 1711978560
              - items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    quantity: 3
                    sku: health_potion
                    type: virtual_good
                status: blocked
                step_number: 2
                unlocked_date: 1712064960
              - items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    quantity: 3
                    sku: health_potion
                    type: virtual_good
                status: blocked
                step_number: 3
                unlocked_date: 1712151360
            type: calendar_hard
          - date_end: '2025-04-28T10:00:00+05:00'
            date_start: '2025-04-01T10:00:00+05:00'
            description: null
            id: 104
            name: Active daily rolling reward
            order: 1
            steps:
              - items:
                  - description: Item one description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 1001
                    name: Item One
                    quantity: 1
                    sku: item_one
                    type: virtual_good
                status: claimed
                step_number: 1
                unlocked_date: -1
              - items:
                  - description: Item two description
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 1002
                    name: Item Two
                    quantity: 1
                    sku: item_two
                    type: virtual_good
                status: claimable
                step_number: 2
                unlocked_date: 1712064960
              - items:
                  - description: Item three description
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 1003
                    name: Item Three
                    quantity: 1
                    sku: item_three
                    type: virtual_good
                status: claim_in_future
                step_number: 3
                unlocked_date: 1712151360
            type: rolling_skippable
        total_items_count: 3
    200-client-get-reward-chains-list:
      value:
        has_more: false
        items:
          - clan_type: null
            date_end: '2023-04-25T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description: Big weekly quest
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            long_description: >-
              You can get a lot of additional items just by shopping during the
              week
            name: Weekly quest
            order: 1
            popup_header: null
            popup_image_url: null
            popup_instruction: null
            recurrent_schedule:
              interval_type: weekly
              reset_next_date: 1746057600
            reward_chain_id: 10
            steps:
              - image_url: >-
                  https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                is_claimed: true
                name: Level 1
                price:
                  amount: 100
                reward:
                  - description: Super box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Super box
                    quantity: 1
                    sku: com.xsolla.box_1
                    type: bundle
                  - description: Mega box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Mega box
                    quantity: 1
                    sku: com.xsolla.box_2
                    type: bundle
                step_id: 1
              - image_url: >-
                  https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                is_claimed: false
                name: Level 2
                price:
                  amount: 200
                reward:
                  - description: Super box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Super box
                    quantity: 2
                    sku: com.xsolla.box_1
                    type: bundle
                  - description: Mega box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Mega box
                    quantity: 2
                    sku: com.xsolla.box_2
                    type: bundle
                step_id: 2
            top_contributors: []
            value_point:
              amount: 130
              description: null
              image_url: >-
                https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
              long_description: null
              name: Value point
              sku: com.xsolla.value_point_1
          - clan_type: guild
            date_end: '2023-10-15T18:16:00+05:00'
            date_start: '2023-04-15T18:16:00+05:00'
            description: Major weekly clan quest.
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            long_description: >-
              You and your clan members can get additional items for shopping
              during a certain month.
            name: Weekly clan quest
            order: 2
            popup_header:
              en: How to unlock rewards
            popup_image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            popup_instruction:
              en: >-
                You should be a clan member to get clan rewards. You join a clan
                when a clan member invited you to the clan, and you accepted the
                invite. You can create your own clan.
            recurrent_schedule:
              interval_type: monthly
              reset_next_date: 1746057600
            reward_chain_id: 12
            steps:
              - image_url: >-
                  https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                is_claimed: true
                name: Level 1
                price:
                  amount: 100
                reward:
                  - description: Super box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Super box
                    quantity: 1
                    sku: com.xsolla.box_1
                    type: bundle
                  - description: Mega box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Mega box
                    quantity: 1
                    sku: com.xsolla.box_2
                    type: bundle
                step_id: 1
              - image_url: >-
                  https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                is_claimed: false
                name: Level 2
                price:
                  amount: 200
                reward:
                  - description: Super box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Super box
                    quantity: 2
                    sku: com.xsolla.box_1
                    type: bundle
                  - description: Mega box with items
                    image_url: >-
                      https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                    name: Mega box
                    quantity: 2
                    sku: com.xsolla.box_2
                    type: bundle
                step_id: 2
            top_contributors:
              - contributed_amount: 100
                name: Rabbit
              - contributed_amount: 80
                name: Rocket
              - contributed_amount: 40
                name: Rain
            value_point:
              amount: 80
              description: Value points for clan reward system.
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
              long_description: >-
                Value points given to clans to get new rewards in a reward
                chain.
              name: Clan Reward VP 1
              sku: com.xsolla.clan_value_point_1
        total_items_count: 1
    200-client-get-user-clan-reward-chain-balance:
      summary: Clan-Belohnungskette (Beispiel)
      value:
        amount: 80
        description: Value points for clan reward system.
        image_url: >-
          https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
        is_clan: true
        long_description: Value points given to clans to get new rewards in a reward chain.
        name: Clan Reward VP 1
        sku: com.xsolla.clan_value_point_1
    200-client-get-user-reward-chain-balance:
      summary: Belohnungskette (Beispiel)
      value:
        amount: 130
        description: null
        image_url: >-
          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
        is_clan: false
        long_description: null
        name: Value point
        sku: com.xsolla.value_point_1
    200-client-offer-chain:
      summary: Angebotskette des Nutzers (Beispiel)
      value:
        date_end: '2025-04-25T18:16:00+05:00'
        date_start: '2010-04-15T18:16:00+05:00'
        description: null
        id: 4
        name: Offer chain with bundles
        next_step_number: 1
        order: 1
        recurrent_schedule: null
        steps:
          - is_claimed: false
            is_free: false
            items:
              - bundle_type: standard
                content:
                  - description: >-
                      virtual_good_short_description_d0df11c5-f7c4-4907-9ae1-7dd40cecab05
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/female/accessory/female_crossnecklace_2_silver-01.png
                    is_free: false
                    item_id: 1
                    name: Virtual Good Bundle
                    quantity: 1
                    sku: d0df11c5-f7c4-4907-9ae1-7dd40cecab05
                    type: virtual_good
                  - description: Big Rocket - short description
                    image_url: https://picture.bigrocket.png
                    is_free: false
                    item_id: 7009
                    name: Big Rocket
                    quantity: 1
                    sku: vg-in-bundle-big-rocket
                    type: virtual_good
                  - description: Gold Coins - short description
                    image_url: https://picture.gold_coins.png
                    is_free: true
                    item_id: 7010
                    name: Gold Coins
                    quantity: 100
                    sku: vc-in-bundle-gold-coins
                    type: virtual_currency
                  - description: Some Game - short description
                    image_url: https://picture.some_game.png
                    is_free: true
                    item_id: 7011
                    name: Some Game
                    quantity: 1
                    sku: digital-content-drm-in-bundle-awesome-game
                    type: virtual_good
                  - bundle_type: standard
                    content:
                      - description: Gold Coins - short description
                        image_url: https://picture.gold_coins.png
                        is_free: true
                        item_id: 7010
                        name: Gold Coins
                        quantity: 1
                        sku: vc-in-bundle-gold-coins
                        type: virtual_currency
                    description: Bundle - short description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 7012
                    name: Some Bundle in Bundle
                    quantity: 1
                    sku: bundle-in-bundle-another-bundle
                    type: bundle
                  - description: Lootbox in bundle - short description
                    image_url: https://picture.lootbox-picture.png
                    is_free: true
                    item_id: 7013
                    name: Some Lootbox
                    quantity: 1
                    sku: lootbox-in-bundle-awesome-game
                    type: lootbox
                description: Many stuff
                image_url: https://picture.bundle-with-many-stuff.png
                is_free: false
                item_id: 7008
                name: Bundle with many awesome stuff!
                order: 0
                quantity: 5
                sku: bundle_with_many_items
                type: bundle
            step_number: 1
            step_price:
              amount: 499.95
              currency: USD
            step_vp_rewards: null
          - is_claimed: false
            is_free: true
            items:
              - bundle_type: standard
                content: []
                description: 'No'
                image_url: https://picture.bundle-no-items.png
                is_free: true
                item_id: 7007
                name: Empty bundle
                order: 0
                quantity: 10
                sku: bundle-empty
                type: bundle
            step_number: 2
            step_price: null
            step_vp_rewards: null
    200-client-offer-chain-list:
      summary: Liste der Angebotsketten des Nutzers (Beispiel)
      value:
        has_more: false
        items:
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2018-04-15T18:16:00+05:00'
            description: null
            id: 101
            name: Active offer chain
            next_step_number: 1
            order: 1
            recurrent_schedule: null
            steps:
              - is_claimed: false
                is_free: false
                items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    order: 0
                    quantity: 1
                    sku: health_potion
                    type: virtual_good
                step_number: 1
                step_price:
                  amount: 99.99
                  currency: USD
                step_vp_rewards:
                  - amount: 15
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/female/accessory/female_crossnecklace_2_silver-01.png
                    is_clan: true
                    item_id: 6039
                    name: store_item_0_test_value_point_name
                    sku: test_value_point_39
              - is_claimed: false
                is_free: false
                items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    order: 0
                    quantity: 2
                    sku: health_potion
                    type: virtual_good
                step_number: 2
                step_price:
                  amount: 199.98
                  currency: USD
                step_vp_rewards:
                  - amount: 30
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/female/accessory/female_crossnecklace_2_silver-01.png
                    is_clan: true
                    item_id: 6039
                    name: store_item_0_test_value_point_name
                    sku: test_value_point_39
              - is_claimed: false
                is_free: true
                items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    order: 0
                    quantity: 1
                    sku: free_item
                    type: virtual_good
                step_number: 3
                step_price: null
                step_vp_rewards: null
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2018-04-15T18:16:00+05:00'
            description: null
            id: 102
            name: Active offer chain 2
            next_step_number: 1
            order: 1
            recurrent_schedule: null
            steps:
              - is_claimed: false
                is_free: true
                items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    order: 0
                    quantity: 3
                    sku: free_item
                    type: virtual_good
                step_number: 1
                step_price: null
                step_vp_rewards: null
              - is_claimed: false
                is_free: true
                items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    order: 0
                    quantity: 3
                    sku: health_potion
                    type: virtual_good
                step_number: 2
                step_price: null
                step_vp_rewards:
                  - amount: 45
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/female/accessory/female_crossnecklace_2_silver-01.png
                    is_clan: true
                    item_id: 6039
                    name: store_item_0_test_value_point_name
                    sku: test_value_point_39
              - is_claimed: false
                is_free: true
                items: []
                step_number: 3
                step_price: null
                step_vp_rewards: null
          - date_end: '2025-04-25T18:16:00+05:00'
            date_start: '2018-04-15T18:16:00+05:00'
            description: null
            id: 103
            name: Active offer chain 3
            next_step_number: 1
            order: 1
            recurrent_schedule: null
            steps:
              - is_claimed: false
                is_free: true
                items:
                  - description: store_item_0_lost_telescope_2_short_description
                    image_url: https://picture.bundle-picture.png
                    is_free: true
                    item_id: 9011
                    name: Free item
                    order: 0
                    quantity: 3
                    sku: free_item
                    type: virtual_good
                step_number: 1
                step_price: null
                step_vp_rewards: null
              - is_claimed: false
                is_free: false
                items:
                  - description: Heal 10% of your health
                    image_url: https://picture.bundle-picture.png
                    is_free: false
                    item_id: 9012
                    name: Healing potion
                    order: 0
                    quantity: 3
                    sku: health_potion
                    type: virtual_good
                step_number: 2
                step_price:
                  amount: 299.97
                  currency: USD
                step_vp_rewards:
                  - amount: 45
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/female/accessory/female_crossnecklace_2_silver-01.png
                    is_clan: true
                    item_id: 6039
                    name: store_item_0_test_value_point_name
                    sku: test_value_point_39
              - is_claimed: false
                is_free: true
                items: []
                step_number: 3
                step_price: null
                step_vp_rewards: null
        total_items_count: 3
    200-client-update-user-clan:
      value:
        reward:
          - bundle_type: standard
            description: Super box with items
            image_url: >-
              https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
            name: Super box
            quantity: 1
            sku: com.xsolla.box_1
            type: bundle
          - description: Mega potion
            image_url: >-
              https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
            name: Mega potion
            quantity: 1
            sku: com.xsolla.potion_1
            type: virtual_good
    200-reward-chain:
      summary: Belohnungskette (Beispiel)
      value:
        attribute_conditions:
          - attribute: race
            can_be_missing: false
            operator: eq
            type: string
            value: ork
        description:
          en: Reward chain description
        image_url: >-
          https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
        is_always_visible: true
        is_enabled: true
        is_reset_after_end: true
        long_description:
          en: Reward chain long description
        name:
          en: Reward chain
        order: 1
        periods:
          - date_from: '2026-01-01T01:00:00+05:00'
            date_until: '2026-01-31T23:59:59+05:00'
          - date_from: '2026-02-01T01:00:00+05:00'
            date_until: '2026-02-28T23:59:59+05:00'
        recurrent_schedule:
          day_of_week: 2
          displayable_reset_next_date: '2026-01-06T01:00:00+05:00'
          displayable_reset_start_date: '2026-01-01T01:00:00+05:00'
          interval_type: weekly
          reset_next_date: 1767643200
          time: 01:00:00+05:00
        reward_chain_id: 1
        steps:
          - image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            name:
              en: First step of the reward chain
            price:
              amount: 10
            reward:
              - quantity: 5
                sku: com.xsolla.item_1
              - quantity: 1
                sku: com.xsolla.item_2
            step_id: 1
          - image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            name:
              en: Second step of the reward chain
            price:
              amount: 15
            reward:
              - quantity: 5
                sku: com.xsolla.item_3
              - quantity: 1
                sku: com.xsolla.item_4
            step_id: 2
        value_point:
          description:
            en: Value points for reward system.
          image_url: >-
            https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
          is_clan: false
          is_enabled: true
          long_description:
            en: Value points given to users to get new rewards in a reward chain.
          media_list: []
          name:
            en: Reward VP 1
          order: 1
          sku: com.xsolla.reward_vp_1
          type: value_point
    200-reward-chain-list:
      value:
        has_more: true
        items:
          - attribute_conditions:
              - attribute: race
                can_be_missing: false
                operator: eq
                type: string
                value: ork
            description:
              en: Reward chain description
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            is_always_visible: true
            is_enabled: true
            is_reset_after_end: true
            long_description:
              en: Reward chain long description
            name:
              en: Reward chain
            order: 1
            periods:
              - date_from: '2026-01-01T01:00:00+05:00'
                date_until: '2026-01-31T23:59:59+05:00'
              - date_from: '2026-02-01T01:00:00+05:00'
                date_until: '2026-02-28T23:59:59+05:00'
            recurrent_schedule: null
            reward_chain_id: 1
            value_point:
              description: Value points for standard reward system.
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
              is_clan: false
              is_enabled: true
              long_description: >-
                Value points given to users to get new rewards in a reward
                chain.
              media_list: []
              name:
                en: Reward VP 1
              order: 1
              sku: com.xsolla.reward_vp_1
              type: value_point
          - clan_type: guild
            description:
              en: Clan reward chain description.
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            is_enabled: true
            long_description:
              en: Clan reward chain long description.
            name:
              en: Clan reward chain
            order: 1
            periods:
              - date_from: '2026-01-01T01:00:00+05:00'
                date_until: '2026-01-31T23:59:59+05:00'
              - date_from: '2026-02-01T01:00:00+05:00'
                date_until: '2026-02-28T23:59:59+05:00'
            popup_header:
              en: How to unlock rewards
            popup_image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            popup_instruction:
              en: >-
                You must be a clan member in order to get clan rewards. You join
                a clan when a clan member invites you to the clan, and you
                accept the invite. You can also create your own clan.
            recurrent_schedule:
              day_of_month: null
              day_of_week: 2
              displayable_reset_next_date: '2026-01-06T01:00:00+05:00'
              displayable_reset_start_date: '2026-01-01T01:00:00+05:00'
              interval_type: weekly
              reset_next_date: 1767643200
              time: 01:00:00+05:00
            reward_chain_id: 2
            value_point:
              description: Value points for clan reward system.
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
              is_clan: true
              is_enabled: true
              long_description: >-
                Value points given to clans to get new rewards in a reward
                chain.
              media_list: []
              name:
                en: Clan Reward VP 1
              order: 1
              sku: com.xsolla.clan_value_point_1
    200-value-points-reward-chain_admin_get-value-point:
      value:
        can_delete: false
        description:
          en: Points for reward system
        image_url: >-
          https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
        is_clan: false
        is_enabled: true
        long_description:
          en: Points given to users to get new rewards in a reward chain.
        media_list: []
        name:
          en: Reward VP 1
        order: 1
        sku: com.xsolla.reward_vp_1
        type: value_point
    200-value-points-reward-chain_admin_get-value-point-list:
      value:
        items:
          - description:
              en: Points for reward system
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            is_clan: false
            is_enabled: true
            long_description:
              en: Points given to users to get new rewards in a reward chain.
            media_list: []
            name:
              en: Reward VP 1
            order: 1
            sku: com.xsolla.reward_vp_1
            type: value_point
          - description:
              en: Value points for reward system.
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            is_clan: false
            is_enabled: false
            long_description:
              en: >-
                Value points given to users to get new rewards in a reward
                chain.
            media_list: []
            name:
              en: Reward VP 2
            order: 2
            sku: com.xsolla.reward_vp_2
            type: value_point
          - description:
              en: Value points for clan reward system.
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            is_clan: true
            is_enabled: true
            long_description:
              en: >-
                Value points given to clans to get new rewards in a reward
                chain.
            media_list: []
            name:
              en: Clan Reward VP 1
            order: 3
            sku: com.xsolla.clan_value_point_1
    200-value-points-rewards-list:
      value:
        items:
          - amount: 100
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            item_id: 14232
            name:
              en: Booster
            sku: com.xsolla.booster_1
          - amount: 200
            image_url: >-
              https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
            item_id: 14232
            name:
              en: Mega Booster
            sku: com.xsolla.booster_mega
    401-complex-auth-header-not-found:
      value:
        errorCode: 1501
        errorMessage: '[0401-1501]: Authorization failed: Authorization header not sent'
        statusCode: 401
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    401-complex-auth-incorrect-credentials:
      value:
        errorCode: 1013
        errorMessage: '[0401-1013]: Token not found.'
        statusCode: 401
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-coupon-not-found:
      value:
        errorCode: 9802
        errorMessage: '[0401-9802]: Coupon not found'
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-daily-chain-not-found:
      description: Daily reward was not found.
      summary: Tägliche Belohnung nicht gefunden
      value:
        errorCode: 6201
        errorMessage: '[0401-6201]: Chain not found'
        errorMessageExtended:
          chain_id: 4
          project_id: 0
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-daily-chain-step-not-found:
      description: Daily reward step was not found.
      summary: Täglicher Belohnungsschritt nicht gefunden
      value:
        errorCode: 6304
        errorMessage: '[0401-6304]: Daily Chain Step not found'
        errorMessageExtended:
          chain_id: 100
          step_number: 1
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-offer-chain-not-found:
      description: Offer chain step was not found.
      summary: Kette nicht gefunden
      value:
        errorCode: 6201
        errorMessage: '[0401-6201]: Chain not found'
        errorMessageExtended:
          chain_id: 4
          project_id: 0
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-offer-chain-step-not-found:
      description: Offer chain step was not found.
      summary: Kettenschritt nicht gefunden
      value:
        errorCode: 6304
        errorMessage: '[0401-6304]: Offer Chain Step not found'
        errorMessageExtended:
          chain_id: 100
          step_number: 1
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    404-promotion-by-id-not-found:
      value:
        errorCode: 1101
        errorMessage: '[0401-1101]: Promotion not found'
        statusCode: 404
        transactionId: transaction id
    404-user-not-found:
      value:
        errorCode: 5008
        errorMessage: '[0401-5008]: Could not find User'
        statusCode: 404
        transactionId: transaction id
    422-activate-deactivate-promotion:
      value:
        errorCode: 9505
        errorMessage: '[0401-9505]: Error was occurred while promotion was being updated'
        statusCode: 422
        transactionId: da145238620011eb8e24fe6913ff226a
    422-admin-daily-chain-error-activated:
      description: Active daily reward have to be deactivated before being updated.
      summary: Aktive tägliche Belohnung kann nicht aktualisiert werden
      value:
        errorCode: 6209
        errorMessage: >-
          [0401-6209]: Active chain cannot be updated. Please deactivate it
          first
        errorMessageExtended:
          chain_id: 2
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-chain-id-mismatch:
      description: Daily reward ID specified in the body does not match the URL.
      summary: ID der täglichen Belohnung stimmt nicht überein
      value:
        errorCode: 6205
        errorMessage: >-
          [0401-6205]: Chain ID mismatch. Please, check the chain ID in your
          request body and URL
        errorMessageExtended:
          body_chain_id: 2
          project_id: 0
          url_chain_id: 1
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-duplicate-step-ids:
      description: >-
        Please, ensure that daily reward step IDs are unique in the request
        body.
      summary: ID der täglichen Belohnung doppelt vorhanden
      value:
        errorCode: 6207
        errorMessage: '[0401-6207]: Duplicate chain step IDs detected in the request body'
        errorMessageExtended:
          chain_id: 3
          chain_step_id_list:
            - 8
            - 9
            - 10
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-incorrect-items:
      description: >-
        Specified items are not allowed, disabled or not found. Only enabled
        items of following types are allowed: virtual item, bundle, virtual
        currency package.
      summary: Falsche Schrittartikel
      value:
        errorCode: 6211
        errorMessage: '[0401-6211]: Chain steps items are not allowed or not found'
        errorMessageExtended:
          invalid_items:
            disabled:
              - vg_disabled_item_1
              - vg_disabled_item_2
              - vc_disabled_1
            invalid_item_type:
              allowed_item_type_list:
                - virtual_good
                - bundle
              sku_map:
                gk_steam_enabled_shown_in_store_1: game_key
                unit_enabled_shown_in_store_1: unit
                vc_disabled_1: virtual_currency
                vc_enabled_shown_in_store_1: virtual_currency
            not_found:
              - vg_deleted_item_1
              - vg_deleted_item_2
              - not_existing_sku_404_1
              - not_existing_sku_404_2
          project_id: 0
        statusCode: 422
        transactionId: x-x-xX-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-incorrect-period:
      description: Please ensure start date is earlier than end date.
      summary: Falscher Zeitraum einer täglichen Belohnung
      value:
        errorCode: 6204
        errorMessage: >-
          [0401-6204]: Period of a chain is invalid. Please, check the dates in
          your request
        errorMessageExtended:
          chain_id: 1
          invalid_periods:
            - end: '2023-04-15T18:16:00+05:00'
              start: '2025-04-25T18:16:00+05:00'
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-incorrect-steps-order:
      description: >-
        Daily reward steps numbers sequence is incorrect. Correct step numbers
        should be sequential without any gaps or duplicates.
      summary: Falsche Schrittreihenfolge
      value:
        errorCode: 6210
        errorMessage: '[0401-6210]: Chain step numbers are invalid'
        errorMessageExtended:
          incorrect_step_numbers:
            duplicates:
              - 2
              - 7
            missing:
              - 3
              - 4
              - 5
              - 6
            out_of_range:
              - 7
              - 8
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-invalid-chain-step-ids:
      description: >-
        Some of step IDs was not found. Please, double check if specified daily
        reward step IDs actually exist.
      summary: ID der täglichen Belohnung nicht gefunden
      value:
        errorCode: 6206
        errorMessage: '[0401-6206]: Chain step IDs not found'
        errorMessageExtended:
          chain_id: 1
          chain_step_id_list:
            - 404000
          project_id: 0
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-invalid-dates:
      description: Please, ensure dates format is valid.
      summary: Ungültiges Datumsformat
      value:
        errorCode: 6204
        errorMessage: >-
          [0401-6204]: Period of a chain is invalid. Please, check the dates in
          your request
        errorMessageExtended:
          chain_id: 1
          invalid_format_dates:
            date_end: '2025-04-25 19:16:00Z'
            date_start: '2023-04-15 17:16:00Z'
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-item-limit-exceeded:
      description: >-
        Daily reward step item count exceeds the allowed limit for some steps.
        Currently only 1 item per step is allowed.
      summary: Artikellimit überschritten
      value:
        errorCode: 6208
        errorMessage: >-
          [0401-6208]: Chain step item count exceeds the allowed limit for some
          steps
        errorMessageExtended:
          max_items: 1
          project_id: 0
          steps_exceeded_limits:
            - items_count: 2
              step_number: 1
            - items_count: 3
              step_number: 4
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-daily-chain-error-too-many-steps:
      description: >-
        Daily reward steps max amount limit of 30 items is exceeded. Try
        specifying less steps.
      summary: Zu viele Schritte
      value:
        errorCode: 6203
        errorMessage: '[0401-6203]: Chain step count exceeds the allowed limit'
        errorMessageExtended:
          max_steps: 30
          project_id: 0
          step_count: 31
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-activated:
      description: >-
        Active offer chain has to be deactivated before being updated. To do
        this, use the <a
        href="/de/api/shop-builder/operation/admin-toggle-offer-chain">Toggle
        offer chain</a> call.
      summary: Aktive Angebotskette kann nicht aktualisiert werden
      value:
        errorCode: 6209
        errorMessage: >-
          [0401-6209]: Active chain cannot be updated. Please deactivate it
          first
        errorMessageExtended:
          chain_id: 2
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-chain-id-mismatch:
      description: Offer chain ID in the request body does not match the ID in the URL.
      summary: Ketten-ID stimmt nicht überein
      value:
        errorCode: 6205
        errorMessage: >-
          [0401-6205]: Chain ID mismatch. Please, check the chain ID in your
          request body and URL
        errorMessageExtended:
          body_chain_id: 2
          project_id: 0
          url_chain_id: 1
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-duplicate-step-ids:
      description: Chain step IDs must be unique in the request body.
      summary: Kettenschritt-IDs doppelt vorhanden
      value:
        errorCode: 6207
        errorMessage: '[0401-6207]: Duplicate chain step IDs detected in the request body'
        errorMessageExtended:
          chain_id: 3
          chain_step_id_list:
            - 8
            - 9
            - 10
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-incorrect-items:
      description: >-
        Specified items are either unavailable, or not found. Only enabled items
        of the following types are supported: virtual items, bundles, and
        virtual currency packages.
      summary: Ungültige Schrittartikel
      value:
        errorCode: 6211
        errorMessage: '[0401-6211]: Chain steps items are not allowed or not found'
        errorMessageExtended:
          invalid_items:
            disabled:
              - vg_disabled_item_1
              - vg_disabled_item_2
              - vc_disabled_1
            invalid_item_type:
              allowed_item_type_list:
                - virtual_good
                - bundle
              sku_map:
                gk_steam_enabled_shown_in_store_1: game_key
                unit_enabled_shown_in_store_1: unit
                vc_disabled_1: virtual_currency
                vc_enabled_shown_in_store_1: virtual_currency
            not_found:
              - vg_deleted_item_1
              - vg_deleted_item_2
              - not_existing_sku_404_1
              - not_existing_sku_404_2
          project_id: 0
        statusCode: 422
        transactionId: x-x-xX-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-incorrect-period:
      description: The start date must be earlier than the end date.
      summary: Ungülitger Kettenzeitraum
      value:
        errorCode: 6204
        errorMessage: >-
          [0401-6204]: Period of a chain is invalid. Please, check the dates in
          your request
        errorMessageExtended:
          chain_id: 1
          invalid_periods:
            - end: '2023-04-15T18:16:00+05:00'
              start: '2025-04-25T18:16:00+05:00'
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-incorrect-steps-order:
      description: >-
        The sequence of offer chain step numbers is incorrect. Step numbers must
        be sequential, without gaps or duplicates.
      summary: Ungültige Schrittreihenfolge
      value:
        errorCode: 6210
        errorMessage: '[0401-6210]: Chain step numbers are invalid'
        errorMessageExtended:
          incorrect_step_numbers:
            duplicates:
              - 2
              - 7
            missing:
              - 3
              - 4
              - 5
              - 6
            out_of_range:
              - 7
              - 8
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-invalid-chain-step-ids:
      description: >-
        Some of the step IDs were not found. Double-check that the specified
        chain step IDs exist. To do this, use the <a
        href="/api/shop-builder/operation/order-user-offer-chain-step-reward#tag/offer-chain-admin/operation/admin-get-offer-chain">Get
        offer chain</a> call.
      summary: Kettenschritt-IDs nicht gefunden
      value:
        errorCode: 6206
        errorMessage: '[0401-6206]: Chain step IDs not found'
        errorMessageExtended:
          chain_id: 1
          chain_step_id_list:
            - 404000
          project_id: 0
        statusCode: 404
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-invalid-dates:
      description: >-
        The date format must be valid. Use <a
        href="https://en.wikipedia.org/wiki/ISO_8601" target="_blank">ISO
        8601</a> format.
      summary: Ungültiges Datumsformat
      value:
        errorCode: 6204
        errorMessage: >-
          [0401-6204]: Period of a chain is invalid. Please, check the dates in
          your request
        errorMessageExtended:
          chain_id: 1
          invalid_format_dates:
            date_end: '2025-04-25 19:16:00Z'
            date_start: '2023-04-15 17:16:00Z'
          project_id: 0
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-item-limit-exceeded:
      description: >-
        The number of items in one or more offer chain steps exceeds the allowed
        limit. Currently, only one item per step is allowed.
      summary: Artikellimit überschritten
      value:
        errorCode: 6208
        errorMessage: >-
          [0401-6208]: Chain step item count exceeds the allowed limit for some
          steps
        errorMessageExtended:
          max_items: 1
          project_id: 0
          steps_exceeded_limits:
            - items_count: 2
              step_number: 1
            - items_count: 3
              step_number: 4
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-admin-offer-chain-error-too-many-steps:
      description: >-
        The number of offer chain steps exceeds the allowed limit of 30. Try
        specifying fewer steps.
      summary: Zu viele Schritte
      value:
        errorCode: 6203
        errorMessage: '[0401-6203]: Chain step count exceeds the allowed limit'
        errorMessageExtended:
          max_steps: 30
          project_id: 0
          step_count: 31
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-daily-chain-claim-error-invalid-step:
      description: >-
        Ensure the user has not previously claimed the reward and that the
        correct step in the daily reward is selected for claiming.
      summary: Schrittbelohnung kann nicht in Anspruch genommen werden
      value:
        errorCode: 6405
        errorMessage: '[0401-6405]: This step is not available to be claimed by the user.'
        errorMessageExtended:
          chain_id: 1
          step_number: 1
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-offer-chain-claim-error-invalid-step:
      description: >-
        The user must claim all previous steps, and the request must use a valid
        call – <a
        href="/api/shop-builder/operation/order-user-offer-chain-step-reward">Create
        order for paid offer chain step</a>, <a
        href="/api/shop-builder/operation/claim-user-offer-chain-step-reward">Claim
        free offer chain step</a> for free ones.


        This error is returned if one or more of the following conditions are
        not met:<ul><li>The offer chain exists, is enabled, and not
        deleted.</li><li>The target step exists, is enabled, and marked as
        free.</li><li>The step has not already been claimed by the user. In case
        of a recurring chain, this check is based on the user progress of the
        current iteration.</li><li>All previous steps in the chain (by step
        number) have been claimed or purchased. In case of a recurring chain,
        this check also considers the user progress of the current
        iteration.</li></ul>
      summary: Schrittbelohnung kann nicht beansprucht werden
      value:
        errorCode: 6306
        errorMessage: '[0401-6306]: This step is not valid to claim by user.'
        errorMessageExtended:
          chain_id: 1
          step_number: 1
        statusCode: 422
        transactionId: x-x-x-x-transactionId-mock-x-x-x
    422-promotion-out-of-range-available-user-limit:
      value:
        errorCode: 4511
        errorMessage: '[0401-4511]: Available promotion limit is out of range.'
        statusCode: 422
        transactionId: transaction id
    422-promotion-without-user-limit:
      value:
        errorCode: 4509
        errorMessage: '[0401-4509]: Promotion does not have configured user limits.'
        statusCode: 422
        transactionId: transaction id
    422-property-sku-is-required:
      value:
        errorCode: 1102
        errorMessage: '[0401-1102]: Unprocessable Entity. The property `sku` is required'
        statusCode: 422
        transactionId: da145238620011eb8e24fe6913ff226a
    422-user_external_id_invalid:
      value:
        errorCode: 1102
        errorMessage: '[0401-1102]: Unprocessable Entity'
        errorMessageExtended:
          - message: Must be at least 1 characters long
            property: user_external_id
          - message: Does not match the regex pattern ^\S+$
            property: user_external_id
        statusCode: 404
        transactionId: transaction id
    Promotions_200-admin-coupons:
      value:
        active_promotions_count: 2
        inactive_promotions_count: 0
        items:
          - bonus:
              - quantity: 1
                sku: com.xsolla.elven_sword_1
              - quantity: 2
                sku: com.xsolla.elven_shield_1
              - quantity: 2
                sku: com.xsolla.elven_gloves_1
            external_id: coupon_44056_1
            is_enabled: true
            name:
              de-DE: Neujahrsbonus
              en-US: New Year Bonus
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: '2020-04-25T18:16:00+05:00'
              - date_from: '2020-05-15T18:16:00+05:00'
                date_until: '2020-05-25T18:16:00+05:00'
            redeem_code_limit: 1
            redeem_total_limit: null
            redeem_user_limit: null
            total_limit_state: null
          - bonus:
              - quantity: 100
                sku: com.xsolla.diamonds_1
            external_id: summer2021
            is_enabled: true
            name:
              de-DE: Gutscheintitel
              en-US: Coupon name
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: '2020-04-25T18:16:00+05:00'
            redeem_code_limit: 1
            redeem_total_limit: 100
            redeem_user_limit: null
            total_limit_state:
              available: 50
              reserved: 10
              used: 40
        total_promotions_count: 2
    Promotions_200-admin-promocodes:
      value:
        active_promotions_count: 2
        inactive_promotions_count: 0
        items:
          - bonus:
              - quantity: 1
                sku: com.xsolla.elven_sword_1
              - quantity: 2
                sku: com.xsolla.elven_shield_1
              - quantity: 2
                sku: com.xsolla.elven_gloves_1
            discount: null
            discounted_items: null
            external_id: promocode_100_crystals
            is_enabled: true
            name:
              de-DE: Neujahrsbonus
              en-US: New Year Bonus
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: '2020-04-25T18:16:00+05:00'
            redeem_code_limit: 1
            redeem_total_limit: null
            redeem_user_limit: null
            total_limit_state: null
          - bonus:
              - quantity: 100
                sku: com.xsolla.diamonds_1
            discount:
              percent: '10.99'
            discounted_items:
              - discount:
                  percent: '10.00'
                sku: com.xsolla.elven_sword_1
            excluded_promotions:
              - 23
              - 45
            external_id: summer2021
            is_enabled: true
            name:
              de-DE: Gutscheintitel
              en-US: Coupon name
            price_conditions:
              - operator: ge
                value: '10.0000'
              - operator: le
                value: '50.0000'
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: '2020-04-25T18:16:00+05:00'
            redeem_code_limit: null
            redeem_total_limit: 100
            redeem_user_limit: null
            total_limit_state:
              available: 50
              reserved: 10
              used: 40
        total_promotions_count: 2
    Promotions_200-admin-promotions:
      value:
        active_promotions_count: 3
        inactive_promotions_count: 2
        promotions:
          - bonus:
              - item:
                  bundle_type: virtual_currency_package
                  content: []
                  description: null
                  image_url: null
                  name:
                    en: Diamonds pack
                    ru: Пак кристаллов
                  sku: com.xsolla.diamonds_pack_1
                  type: bundle
                quantity: 1
            condition:
              - item:
                  description: null
                  image_url: null
                  name:
                    en: VG name
                    ru: Название VG
                  sku: com.xsolla.virtual_good_bonus_2
                  type: virtual_good
            discount: null
            id: 1
            is_enabled: true
            name:
              en: promotion_1
            promotion_periods:
              - date_from: '2020-01-01T00:00:00+03:00'
                date_until: null
            type: item_bonus
          - bonus: []
            condition:
              - item:
                  description: null
                  image_url: null
                  name:
                    en: VG name
                    ru: Название VG
                  sku: com.xsolla.virtual_good_bonus_2
                  type: virtual_good
            discount:
              percent: '10.99'
            id: 2
            is_enabled: false
            name:
              en: promotion_2
            promotion_periods:
              - date_from: '2020-01-01T00:00:00+03:00'
                date_until: '2030-01-01T00:00:00+03:00'
            type: item_discount
          - bonus:
              - item:
                  description: null
                  image_url: null
                  name:
                    en: VG name
                    ru: Название VG
                  sku: com.xsolla.virtual_good_bonus_2
                  type: virtual_good
                quantity: 2
            condition:
              - item:
                  external_id: coupon_2
                  is_enabled: true
                  name:
                    en: Coupon name
                    ru: Название купона
                  redeem_code_limit: 1
                  redeem_total_limit: null
                  redeem_user_limit: null
            discount: null
            id: 3
            is_enabled: true
            name:
              en: promotion_3
            promotion_periods:
              - date_from: '2020-01-01T00:00:00+03:00'
                date_until: '2030-01-01T00:00:00+03:00'
            type: coupon_bonus
          - bonus:
              - item:
                  description: null
                  image_url: null
                  name:
                    en: VG name
                    ru: Название VG
                  sku: com.xsolla.virtual_good_bonus_2
                  type: virtual_good
                quantity: 2
            condition:
              - item:
                  external_id: coupon_3
                  is_enabled: true
                  name:
                    en: Coupon name
                    ru: Название купона
                  redeem_code_limit: 1
                  redeem_total_limit: null
                  redeem_user_limit: null
            discount:
              percent: '12.99'
            id: 4
            is_enabled: false
            name:
              en: promotion_4
            promotion_periods:
              - date_from: '2018-01-01T00:00:00+03:00'
                date_until: '2031-01-01T00:00:00+03:00'
            type: promocode_bonus_discount
          - bonus:
              - item:
                  description: null
                  image_url: null
                  name:
                    en: VG name
                    ru: Название VG
                  sku: com.xsolla.virtual_good_bonus_4
                  type: virtual_good
                quantity: 1
            condition: null
            discount: null
            id: 5
            is_enabled: true
            name:
              en: promotion_5
            promotion_periods:
              - date_from: '2020-01-01T00:00:00+03:00'
                date_until: null
            type: cart_bonus
        total_promotions_count: 5
    Promotions_200-admin-unique-catalog-offers:
      value:
        active_promotions_count: 2
        inactive_promotions_count: 0
        items:
          - external_id: new_year_bonus
            is_enabled: true
            items:
              - booster
              - booster_mega
            name:
              de-DE: Neujahrsbonus
              en-US: New Year Bonus
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: '2020-04-25T18:16:00+05:00'
              - date_from: '2020-05-15T18:16:00+05:00'
                date_until: '2020-05-25T18:16:00+05:00'
            redeem_code_limit: 1
            redeem_total_limit: null
            redeem_user_limit: 1
            total_limit_state: null
          - external_id: secret_store
            is_enabled: true
            items:
              - helmet
              - armor
              - sword
            name:
              en-US: Secret store
              ru-RU: Тайный магазин
            promotion_periods:
              - date_from: '2020-04-15T18:16:00+05:00'
                date_until: null
            redeem_code_limit: 1
            redeem_total_limit: 100
            redeem_user_limit: 1
            total_limit_state:
              available: 50
              reserved: 10
              used: 40
        total_promotions_count: 2
    Promotions_200-coupon-code-list:
      value:
        codes:
          - code: CODE001
          - code: CODE002
          - code: CODE003
          - code: CODE004
          - code: CODE005
        total_count: 5
    Promotions_200-get-coupon-rewards:
      value:
        bonus:
          - item:
              description: Game description
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              name:
                en: Game name
              sku: com.xsolla.game_1
              type: unit
              unit_items:
                - drm_name: Steam
                  drm_sku: steam_key_01
                  is_free: false
                  name: Game name
                  sku: com.xsolla.game_key_01
                  type: game_key
                - drm_name: Origin
                  drm_sku: origin_key_02
                  name: Game name
                  sku: game_key_02
                  type: game_key
            quantity: 1
          - item:
              description: Game description
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              name:
                en: Game name
              sku: com.xsolla.game_2
              type: unit
              unit_items:
                - drm_name: Steam
                  drm_sku: steam_key_01
                  name: Game name
                  sku: com.xsolla.game_key_01
                  type: game_key
            quantity: 2
        discount:
          percent: '10.00'
        is_selectable: true
    Promotions_200-get-promocode-rewards:
      value:
        bonus:
          - item:
              description: Game description
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              name: Game name
              sku: com.xsolla.game_1
              type: unit
              unit_items:
                - drm_name: Steam
                  drm_sku: steam_key_01
                  is_free: false
                  name: Game name
                  sku: com.xsolla.game_key_01
                  type: game_key
                - drm_name: Origin
                  drm_sku: origin_key_02
                  name: Game name
                  sku: com.xsolla.game_key_02
                  type: game_key
            quantity: 1
          - item:
              description: Game description
              image_url: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              name: Game name
              sku: com.xsolla.game_2
              type: unit
              unit_items:
                - drm_name: Steam
                  drm_sku: steam_key_01
                  name: Game name
                  sku: com.xsolla.game_key_01
                  type: game_key
            quantity: 2
        discount:
          percent: '10.00'
        discounted_items:
          - discount:
              percent: '10.00'
            sku: com.xsolla.elven_sword_1
        is_selectable: true
    Promotions_422-invalid-coupon:
      value:
        errorCode: 1102
        errorMessage: >-
          [0401-1102]: Unprocessable Entity. The property `external_id` is
          required
        statusCode: 422
    code-limit:
      value:
        has_more: false
        items:
          - code: WINTER2023
            per_code:
              available: 7
              reserved: 1
              total: 10
              used: 2
          - code: SUMMER2023
            per_code:
              available: 0
              reserved: 2
              total: 5
              used: 3
        promotion_id: 1
        total_items_count: 2
  parameters:
    code-path-param:
      description: >-
        Eindeutiger Code, bei dem die Groß-/Kleinschreibung beachtet wird.
        Enthält Buchstaben und Zahlen.
      in: path
      name: code
      required: true
      schema:
        example: WINTER2021
        maxLength: 128
        minLength: 1
        type: string
    codes-query-param:
      description: >-
        Eindeutige Codes, bei denen zwischen Groß-/Kleinschreibung unterschieden
        wird. Enthält nur Buchstaben und Ziffern.
      in: query
      name: codes[]
      schema:
        items:
          maxLength: 128
          minLength: 1
          type: string
        type: array
    coupon_code-path-param:
      description: >-
        Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung
        unterschieden. Enthält Buchstaben und Ziffern.
      in: path
      name: coupon_code
      required: true
      schema:
        example: WINTER2021
        maxLength: 128
        minLength: 1
        type: string
    daily_chain_id-path-param:
      description: ID der täglichen Belohnung.
      in: path
      name: daily_chain_id
      required: true
      schema:
        example: 101
        type: integer
    daily_chain_step_number-path-param:
      description: Belohnungsschrittzahl.
      in: path
      name: step_number
      required: true
      schema:
        example: 1
        type: integer
    enabled-query-param:
      description: Elemente nach `is_enabled`-Flag filtern.
      in: query
      name: enabled
      required: false
      schema:
        type: integer
    external_id-promotion-path-param:
      description: >-
        Externe ID der Werbeaktion. Eindeutige Werbeaktionskennung innerhalb des
        Projekts.
      in: path
      name: external_id
      required: true
      schema:
        example: coupon_44056_1
        type: integer
    is_enabled-query-param:
      description: Elemente nach `is_enabled`-Flag filtern.
      in: query
      name: is_enabled
      required: false
      schema:
        type: integer
    is_expired-daily-chain-query-param:
      description: Nur nach abgelaufenen täglichen Belohnungen filtern.
      in: query
      name: is_expired
      required: false
      schema:
        type: integer
    item_sku-path-param:
      description: Artikel-SKU.
      in: path
      name: item_sku
      required: true
      schema:
        example: booster_mega_1
        type: string
    limit-query-param:
      description: Begrenzung der Elementanzahl auf der Seite.
      example: 50
      in: query
      name: limit
      required: false
      schema:
        example: 50
        minimum: 1
        type: integer
    offer_chain_id-path-param:
      description: Angebotsketten-ID.
      in: path
      name: offer_chain_id
      required: true
      schema:
        example: 101
        type: integer
    offer_chain_step_number-path-param:
      description: Nummer des Angebotskettenschritts.
      in: path
      name: step_number
      required: true
      schema:
        example: 1
        type: integer
    offset-query-param:
      description: >-
        Elementnummer, aus der die Liste generiert wird (die Zählung beginnt bei
        0).
      example: 0
      in: query
      name: offset
      required: false
      schema:
        example: 0
        minimum: 0
        type: integer
    personalized-catalog-rule_id-path-param:
      description: Regel-ID.
      in: path
      name: rule_id
      required: true
      schema:
        example: 1
        type: number
    project_id-path-param:
      description: >-
        Projekt-ID. Dieser Parameter wird im
        [Kundenportal](https://publisher.xsolla.com/) neben dem Projektnamen
        angezeigt.
      in: path
      name: project_id
      required: true
      schema:
        example: 44056
        type: integer
    promocode_code-path-param:
      description: >-
        Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung
        unterschieden. Enthält Buchstaben und Ziffern.
      in: path
      name: promocode_code
      required: true
      schema:
        example: SO6rew99j9
        maxLength: 128
        minLength: 1
        type: string
    promotion_id-path-param:
      description: Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des Projekts.
      in: path
      name: promotion_id
      required: true
      schema:
        example: 111425
        type: integer
    reward_chain_id-path-param:
      description: Belohnungsketten-ID.
      in: path
      name: reward_chain_id
      required: true
      schema:
        example: 101
        type: integer
    reward_chain_step_id-path-param:
      description: ID des Belohnungskettenschritts.
      in: path
      name: step_id
      required: true
      schema:
        example: 120
        type: integer
    type-daily-chain-query-param:
      description: >-
        Filtert nach täglichen Belohnungen, sodass nur der angegebene Typ
        zurückgegeben wird.
      in: query
      name: type
      required: false
      schema:
        enum:
          - calendar_hard
          - rolling_skippable
          - rolling_unskippable
        type: string
    user_external_id-query-param:
      description: Externe Benutzer-ID
      in: query
      name: user_external_id
      required: true
      schema:
        example: d342dad2-9d59-11e9-a384-42010aa8003f
        type: string
    value_point_sku-path-param:
      description: Wertepunkt-SKU.
      in: path
      name: value_point_sku
      required: true
      schema:
        example: value_point_3
        type: string
  requestBodies:
    Promotions_cancel-promo-code-model:
      content:
        application/json:
          schema:
            properties:
              cart:
                nullable: true
                properties:
                  id:
                    default: current
                    description: Warenkorb-ID.
                    type: string
                required:
                  - id
                type: object
            type: object
    Promotions_coupon-create:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: account_status
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: golden
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_2
                external_id: coupon_external_id
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                external_id: coupon_external_id
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              bonus:
                $ref: '#/components/schemas/Promotions_coupon_bonus'
              external_id:
                $ref: '#/components/schemas/Promotions_coupon-external_id'
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - external_id
              - name
            type: object
    Promotions_coupon-update:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: account_status
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: golden
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_2
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              bonus:
                $ref: '#/components/schemas/Promotions_coupon_bonus'
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - name
            type: object
    Promotions_create-coupon-promocode-code:
      content:
        application/json:
          schema:
            properties:
              coupon_code:
                $ref: '#/components/schemas/Promotions_coupon_code'
            type: object
    Promotions_create-update-bonus-promotion:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: account_status
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: golden
                bonus:
                  - quantity: 50000
                    sku: com.xsolla.mp_credits
                condition:
                  - sku: com.xsolla.year_1_season_pass
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
            simple:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                  - quantity: 2
                    sku: com.xsolla.elven_shield_1
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_1
                condition:
                  - sku: com.xsolla.elven_boots_1
                  - sku: com.xsolla.elven_knife_1
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
            with excluded promotions:
              value:
                bonus:
                  - quantity: 50000
                    sku: com.xsolla.mp_credits
                condition:
                  - sku: com.xsolla.year_1_season_pass
                excluded_promotions:
                  - 12
                  - 789
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
            with price conditions:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_2
                  - quantity: 2
                    sku: com.xsolla.elven_shield_2
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_2
                condition:
                  - sku: com.xsolla.elven_boots_2
                  - sku: com.xsolla.elven_knife_2
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                price_conditions:
                  - operator: gt
                    value: '10.0000'
                  - operator: lt
                    value: '20.0000'
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              bonus:
                items:
                  description: >-
                    Die Liste der Artikel, die einem Nutzer beim Kauf als Bonus
                    gewährt werden.
                  properties:
                    quantity:
                      default: 1
                      description: Artikelmenge.
                      type: number
                    sku:
                      default: elven_shield
                      description: Artikel-SKU.
                      type: string
                  type: object
                nullable: true
                type: array
              condition:
                description: >-
                  Die zu kaufenden Artikel, damit eine Werbeaktion greifen kann.
                  Ist dieser Parameter auf `null` gestellt, greift die
                  Werbeaktion bei allen Käufen innerhalb eines Projekts.
                items:
                  properties:
                    sku:
                      default: elven_sword
                      description: Artikel-SKU.
                      type: string
                  type: object
                nullable: true
                type: array
              excluded_promotions:
                $ref: '#/components/schemas/excluded_promotions'
              id:
                description: >-
                  Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des
                  Projekts.
                type: integer
              is_enabled:
                $ref: '#/components/schemas/Promotions_is_enabled'
              limits:
                $ref: '#/components/schemas/Promotions_promotion_limits'
              name:
                additionalProperties:
                  type: string
                description: >-
                  Name der Werbeaktion. Sollte Schlüssel-Wert-Paare enthalten,
                  wobei der Schlüssel ein Gebietsschema im Format
                  "^[a–z]{2}-[A–Z]{2}$" und der Wert ein String ist.
                example:
                  de-DE: Sommersaison Bonus
                  en-US: Summer season bonus
                type: object
              price_conditions:
                $ref: '#/components/schemas/price_conditions_bonus'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
            required:
              - condition
              - bonus
              - name
            type: object
    Promotions_create-update-item-promotion:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: race
                    operator: eq
                    type: string
                    value: ork
                  - attribute: level
                    can_be_missing: true
                    operator: eq
                    type: number
                    value: '10'
                discount:
                  percent: '24.00'
                is_enabled: true
                items: []
                name:
                  en-US: Ork set discount
                  ru-RU: Скидка на набор для орка
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
            simple:
              value:
                discount:
                  percent: '10.00'
                is_enabled: true
                items:
                  - sku: com.xsolla.elven_sword_1
                  - sku: com.xsolla.elven_helmet_1
                  - sku: com.xsolla.elven_armor_1
                name:
                  en-US: Promotion
                  ru-RU: Акция
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-16T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
            with excluded promotions:
              value:
                discount:
                  percent: '24.00'
                excluded_promotions:
                  - 12
                  - 789
                is_enabled: true
                items: []
                name:
                  en-US: Ork set discount
                  ru-RU: Скидка на набор для орка
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
            with price condition:
              value:
                discount:
                  percent: '24.00'
                items: []
                name:
                  en-US: Ork set discount
                  ru-RU: Скидка на набор для орка
                price_conditions:
                  - operator: ge
                    value: '10.5000'
                  - operator: lt
                    value: '20.5000'
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              discount:
                properties:
                  percent:
                    description: >-
                      Prozentualer Rabatt.

                      Der Preis des Artikels wird um einen Wert verringert, der
                      anhand dieses Prozentsatzes berechnet und dann auf zwei
                      Dezimalstellen gerundet wird.
                    example: 10
                    type: string
                required:
                  - percent
                type: object
              excluded_promotions:
                $ref: '#/components/schemas/excluded_promotions'
              is_enabled:
                $ref: '#/components/schemas/Promotions_is_enabled'
              items:
                items:
                  description: Die Liste der Artikel, bei denen der Rabatt greift.
                  properties:
                    sku:
                      default: elven_sword
                      description: Artikel-SKU.
                      type: string
                  required:
                    - sku
                  type: object
                type: array
              limits:
                $ref: '#/components/schemas/Promotions_promotion_limits'
              name:
                additionalProperties:
                  type: string
                description: >-
                  Name der Werbeaktion. Sollte Schlüssel-Wert-Paare enthalten,

                  wobei der Schlüssel ein Gebietsschema im Format
                  "^[a–z]{2}-[A–Z]{2}$" und der Wert ein String ist.
                example:
                  en-US: Promotion
                  ru-RU: Акция
                type: object
              price_conditions:
                $ref: '#/components/schemas/price_conditions_discount'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
            required:
              - items
              - discount
              - name
            type: object
      description: Objekt mit Werbeaktionsdaten.
      required: true
    Promotions_promocode-create:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: account_status
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: golden
                discount:
                  percent: '10.10'
                external_id: coupon_external_id
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple bonus:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                  - quantity: 2
                    sku: com.xsolla.elven_shield_1
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_1
                external_id: promo_code_external_id
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple discount:
              value:
                discount:
                  percent: '10.10'
                external_id: promo_code_external_id
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with excluded promotions:
              value:
                discount:
                  percent: '10.10'
                excluded_promotions:
                  - 12
                  - 789
                external_id: coupon_external_id
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with item price conditions:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_3
                  - quantity: 2
                    sku: com.xsolla.elven_shield_3
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_3
                discount:
                  percent: '10.10'
                external_id: promo_code_external_id
                item_price_conditions:
                  - operator: ge
                    value: '10.5000'
                  - operator: lt
                    value: '50.0000'
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with price conditions:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_2
                  - quantity: 2
                    sku: com.xsolla.elven_shield_2
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_2
                external_id: promo_code_external_id
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                price_conditions:
                  - operator: ge
                    value: '10.5000'
                  - operator: lt
                    value: '50.0000'
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              bonus:
                $ref: '#/components/schemas/Promotions_coupon_bonus'
              discount:
                example:
                  percent: '10.10'
                nullable: true
                properties:
                  percent:
                    $ref: '#/components/schemas/Promotions_promotion_discount_percent'
                type: object
              discounted_items:
                $ref: '#/components/schemas/Promotions_discounted_items'
              excluded_promotions:
                $ref: '#/components/schemas/excluded_promotions'
              external_id:
                $ref: '#/components/schemas/Promotions_coupon-external_id'
              item_price_conditions:
                $ref: '#/components/schemas/item_price_conditions_promocode'
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              price_conditions:
                $ref: '#/components/schemas/price_conditions_promocode'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - external_id
              - name
            type: object
    Promotions_promocode-update:
      content:
        application/json:
          examples:
            personalized:
              value:
                attribute_conditions:
                  - attribute: account_status
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: golden
                discount:
                  percent: '10.10'
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple bonus:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                  - quantity: 2
                    sku: com.xsolla.elven_shield_1
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_1
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple discount:
              value:
                discount:
                  percent: '10.10'
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with excluded promotions:
              value:
                discount:
                  percent: '10.10'
                excluded_promotions:
                  - 12
                  - 789
                name:
                  de-DE: Neujahrsrabatt
                  en-US: New Year Discount
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with item price conditions:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_3
                  - quantity: 2
                    sku: com.xsolla.elven_shield_3
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_3
                discount:
                  percent: '10.10'
                item_price_conditions:
                  - operator: gt
                    value: '10.5000'
                  - operator: lt
                    value: '50.0000'
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            with price conditions:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_2
                  - quantity: 2
                    sku: com.xsolla.elven_shield_2
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_2
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                price_conditions:
                  - operator: gt
                    value: '10.5000'
                  - operator: lt
                    value: '50.0000'
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
          schema:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/promotion_user-attribute_conditions_model-post
              bonus:
                $ref: '#/components/schemas/Promotions_coupon_bonus'
              discount:
                example:
                  percent: '10.10'
                nullable: true
                properties:
                  percent:
                    $ref: '#/components/schemas/Promotions_promotion_discount_percent'
                type: object
              discounted_items:
                $ref: '#/components/schemas/Promotions_discounted_items'
              excluded_promotions:
                $ref: '#/components/schemas/excluded_promotions'
              item_price_conditions:
                $ref: '#/components/schemas/item_price_conditions_promocode'
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              price_conditions:
                $ref: '#/components/schemas/price_conditions_promocode'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - name
            type: object
    Promotions_redeem-coupon-model:
      content:
        application/json:
          schema:
            properties:
              coupon_code:
                default: WINTER2021
                description: Eindeutiger Gutscheincode. Enthält Buchstaben und Ziffern.
                example: WINTER2021
                maxLength: 128
                minLength: 1
                type: string
              selected_unit_items:
                $ref: '#/components/schemas/Promotions_selected_unit_items'
            type: object
    Promotions_redeem-promo-code-model:
      content:
        application/json:
          schema:
            properties:
              cart:
                nullable: true
                properties:
                  id:
                    default: current
                    description: Warenkorb-ID.
                    type: string
                required:
                  - id
                type: object
              coupon_code:
                default: SUMMER2021
                description: >-
                  Eindeutiger Code des Promocodes. Enthält Buchstaben und
                  Ziffern.
                example: SUMMER2021
                maxLength: 128
                minLength: 1
                type: string
              selected_unit_items:
                $ref: '#/components/schemas/Promotions_selected_unit_items'
            type: object
    Promotions_unique_catalog_offer-create:
      content:
        application/json:
          examples:
            limited:
              value:
                date_end: '2020-04-25T18:16:00+05:00'
                date_start: '2020-04-15T18:16:00+05:00'
                external_id: offer_external_id
                items:
                  - elven_sword
                  - elven_boots
                name:
                  de-DE: Neujahrsangebot
                  en-US: New Year Offer
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple:
              value:
                date_end: '2020-04-25T18:16:00+05:00'
                date_start: '2020-04-15T18:16:00+05:00'
                external_id: offer_external_id
                items:
                  - elven_sword
                  - elven_boots
                name:
                  de-DE: Neujahrsangebot
                  en-US: New Year Offer
          schema:
            properties:
              date_end:
                $ref: '#/components/schemas/Promotions_coupon_date_end'
              date_start:
                $ref: '#/components/schemas/Promotions_coupon_date_start'
              external_id:
                $ref: '#/components/schemas/Promotions_coupon-external_id'
              items:
                $ref: '#/components/schemas/Promotions_unique_catalog_offer_items'
                type: array
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - external_id
              - name
            type: object
    Promotions_unique_catalog_offer-update:
      content:
        application/json:
          examples:
            limited:
              value:
                items:
                  - elven_sword
                  - elven_boots
                name:
                  de-DE: Neujahrsangebot
                  en-US: New Year Offer
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                redeem_code_limit: 1
                redeem_total_limit: 100
                redeem_user_limit: 1
            simple:
              value:
                items:
                  - elven_sword
                  - elven_boots
                name:
                  de-DE: Neujahrsangebot
                  en-US: New Year Offer
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
                  - date_from: '2020-05-15T18:16:00+05:00'
                    date_until: '2020-05-25T18:16:00+05:00'
          schema:
            properties:
              items:
                $ref: '#/components/schemas/Promotions_unique_catalog_offer_items'
              name:
                $ref: '#/components/schemas/Promotions_coupon_name'
              promotion_periods:
                $ref: '#/components/schemas/promotion_periods'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
              redeem_user_limit:
                $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
            required:
              - name
            type: object
    create-daily-chain:
      content:
        application/json:
          examples:
            calendar_hard:
              summary: Tägliche Belohnung vom Typ `calendar_hard`
              value:
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  en: New daily reward short description
                is_enabled: true
                name:
                  en: New daily reward
                  ru: Новая ежедневная награда
                order: 4
                steps:
                  - items:
                      - quantity: 2
                        sku: vg_enabled_shown_in_store_1
                    step_number: 1
                  - items:
                      - quantity: 2
                        sku: >-
                          bundle_enabled_shown_in_store_with_2_enabled_shown_in_store_vg
                    step_number: 2
                  - items:
                      - quantity: 2
                        sku: >-
                          vcp_enabled_shown_in_store_1_of_10_vc_enabled_shown_in_store_1
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: vg_enabled_shown_in_store_1
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: >-
                          bundle_enabled_shown_in_store_with_2_enabled_shown_in_store_vg
                    step_number: 5
                  - items:
                      - quantity: 1
                        sku: >-
                          vcp_enabled_shown_in_store_1_of_10_vc_enabled_shown_in_store_1
                    step_number: 6
                type: calendar_hard
            rolling_skippable:
              summary: Tägliche Belohnung vom Typ `rolling_skippable`
              value:
                date_end: '2023-05-31T10:00:00+05:00'
                date_start: '2023-05-01T10:00:00+05:00'
                description:
                  en: New skippable login reward short description
                is_enabled: true
                is_recurrent: true
                name:
                  en: New skippable login reward
                order: 1
                steps:
                  - items:
                      - quantity: 1
                        sku: monday_reward_item_one
                    step_number: 1
                  - items:
                      - quantity: 1
                        sku: tuesday_reward_item_two
                    step_number: 2
                  - items:
                      - quantity: 1
                        sku: wednesday_reward_item_three
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: thursday_reward_item_four
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: friday_reward_item_five
                    step_number: 5
                  - items:
                      - quantity: 1
                        sku: saturday_reward_item_six
                    step_number: 6
                  - items:
                      - quantity: 1
                        sku: sunday_reward_item_seven
                    step_number: 7
                type: rolling_skippable
            rolling_unskippable:
              summary: Tägliche Belohnung vom Typ `rolling_unskippable`
              value:
                date_end: '2023-06-30T10:00:00+05:00'
                date_start: '2023-06-01T10:00:00+05:00'
                description:
                  en: New unskippable login reward short description
                is_enabled: true
                is_recurrent: false
                name:
                  en: New unskippable login reward
                order: 2
                steps:
                  - items:
                      - quantity: 1
                        sku: monday_reward_item_one
                    step_number: 1
                  - items:
                      - quantity: 1
                        sku: tuesday_reward_item_two
                    step_number: 2
                  - items:
                      - quantity: 1
                        sku: wednesday_reward_item_three
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: thursday_reward_item_four
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: friday_reward_item_five
                    step_number: 5
                type: rolling_unskippable
          schema:
            oneOf:
              - $ref: '#/components/schemas/create-calendar-hard-daily-chain-model'
              - $ref: >-
                  #/components/schemas/create-rolling-skippable-daily-chain-model
              - $ref: >-
                  #/components/schemas/create-rolling-unskippable-daily-chain-model
    create-offer-chain:
      content:
        application/json:
          examples:
            default:
              summary: Reguläre Angebotskette (Beispiel)
              value:
                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
            personalized-default:
              summary: Personalisierte Standardangebotskette (Beispiel)
              value:
                date_end: null
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  de: >-
                    Standard-personalisierte Angebotskette für Benutzer, die die
                    Bedingungen anderer personalisierter Ketten nicht erfüllen
                  en: >-
                    Default personalized offer chain for users that do not meet
                    the conditions of other personalized chains
                  fr: >-
                    Chaîne d'offres personnalisée par défaut pour les
                    utilisateurs qui ne répondent pas aux conditions des autres
                    chaînes personnalisées
                  it: >-
                    Catena di offerte personalizzata predefinita per gli utenti
                    che non soddisfano le condizioni di altre catene
                    personalizzate
                  ru: >-
                    Персонализированная цепочка по умолчанию для пользователей,
                    не подходящих под условия других персонализированных цепочек
                is_always_visible: false
                is_enabled: true
                name:
                  de: Neue personalisierte Standard-Angebotskette
                  en: New personalized default offer chain
                  fr: Nouvelle chaîne d'offres personnalisée par défaut
                  it: Nuova catena di offerte personalizzata predefinita
                  ru: Новая персонализированная цепочка предложений по умолчанию
                order: 4
                recurrent_schedule: null
                steps:
                  - is_free: false
                    items:
                      - quantity: 1
                        sku: chain_x_step_1_item_default
                    step_number: 1
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_x_step_2_item_default
                    step_number: 2
                  - is_free: true
                    items:
                      - quantity: 1
                        sku: chain_x_step_3_free_item_default
                    step_number: 3
            personalized-with-conditions:
              summary: >-
                Personalisierte Angebotskette mit Bedingungen für
                Nutzerattribute (Beispiel)
              value:
                attribute_conditions:
                  - attribute: race
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: elf
                  - attribute: level
                    can_be_missing: false
                    operator: ge
                    type: number
                    value: '10'
                  - attribute: 10_level_up_date
                    can_be_missing: false
                    operator: le
                    type: date
                    value: '2026-01-01T00:00:00'
                date_end: null
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  de: >-
                    Personalisierte Angebotskette mit
                    Benutzerattributbedingungen - für Elfen der Stufe 10 und
                    höher, die Stufe 10 spätestens am 2026-01-01 00:00:00
                    erreicht haben, einschließlich
                  en: >-
                    Personalized offer chain with user attribute conditions -
                    for level 10 and above elves who reached level 10 no later
                    than 2026-01-01 00:00:00, inclusive
                  fr: >-
                    Chaîne d'offres personnalisée avec des conditions d'attribut
                    utilisateur - pour les elfes de niveau 10 et plus qui ont
                    atteint le niveau 10 au plus tard le 2026-01-01 00:00:00,
                    inclus
                  it: >-
                    Catena di offerte personalizzata con condizioni di attributo
                    utente - per elfi di livello 10 e superiore che hanno
                    raggiunto il livello 10 non più tardi del 2026-01-01
                    00:00:00, inclusi
                  ru: >-
                    Персонализированная цепочка предложений с условиями по
                    атрибутам пользователя - для эльфов уровня 10 и выше,
                    достигших 10 уровня не позднее 2026-01-01 00:00:00
                    включительно
                is_always_visible: false
                is_enabled: true
                name:
                  de: Neue personalisierte Angebotskette
                  en: New personalized offer chain
                  fr: Nouvelle chaîne d'offres personnalisée
                  it: Nuova catena di offerte personalizzata
                  ru: Новая персонализированная цепочка предложений
                order: 4
                recurrent_schedule: null
                steps:
                  - is_free: false
                    items:
                      - quantity: 1
                        sku: chain_x_step_1_item_for_elves_level_10_and_above
                    step_number: 1
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_x_step_2_item_for_elves_level_10_and_above
                    step_number: 2
                  - is_free: true
                    items:
                      - quantity: 1
                        sku: chain_x_step_3_free_item_for_elves_level_10_and_above
                    step_number: 3
            recurrent:
              summary: Wiederkehrende Angebotskette (Beispiel)
              value:
                date_end: '2025-04-25T18:16:00+05:00'
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  de: >-
                    Eine wiederkehrende Angebotskette, die wöchentlich mittwochs
                    um 07:00 Uhr GMT+3 zurückgesetzt wird
                  en: >-
                    A recurring offer chain that resets weekly on Wednesdays at
                    07:00 AM GMT+3
                  fr: >-
                    Une chaîne d'offres récurrente qui se réinitialise chaque
                    semaine le mercredi à 07h00 GMT+3
                  it: >-
                    Una catena di offerte ricorrente che si resetta
                    settimanalmente il mercoledì alle 07:00 GMT+3
                  ru: >-
                    Рекуррентная цепочка предложений, которая сбрасывается
                    еженедельно по средам в 07:00 по GMT+3
                is_always_visible: true
                is_enabled: false
                name:
                  de: Neue wiederkehrende Angebotskette
                  en: New recurrent offer chain
                  fr: Nouvelle chaîne d'offres récurrente
                  it: Nuova catena di offerte ricorrente
                  ru: Новая рекуррентная цепочка предложений
                order: 1
                recurrent_schedule:
                  day_of_week: 3
                  interval_type: weekly
                  time: 07:00:00+03:00
                steps:
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_step_1_paid_bundle_sku
                    step_number: 1
                  - is_free: true
                    items:
                      - quantity: 3
                        sku: chain_step_2_free_virtual_good_sku
                    step_number: 2
          schema:
            $ref: '#/components/schemas/create-offer-chain-model'
    create-reward-chain:
      content:
        application/json:
          examples:
            clan:
              summary: Clan-Belohnungskette (Beispiel)
              value:
                clan_type: guild
                description:
                  en: Clan reward chain description.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_enabled: true
                long_description:
                  en: Clan reward chain long description.
                name:
                  en: Clan reward chain
                order: 1
                periods:
                  - date_from: '2026-01-01T01:00:00+05:00'
                    date_until: '2026-01-31T23:59:59+05:00'
                  - date_from: '2026-02-01T01:00:00+05:00'
                    date_until: '2026-02-28T23:59:59+05:00'
                popup_header:
                  en: How to unlock rewards
                popup_image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                popup_instruction:
                  en: >-
                    You must be a clan member to get clan rewards. You join a
                    clan when a clan member invites you to the clan, and you
                    accept the invite. You can also create your own clan.
                recurrent_schedule:
                  day_of_week: 1
                  interval_type: weekly
                  time: 01:00:00+08:00
                steps:
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: First step of the reward chain
                    price:
                      amount: 10
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_1
                      - quantity: 1
                        sku: com.xsolla.item_2
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: Second step of the reward chain
                    price:
                      amount: 15
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_3
                      - quantity: 1
                        sku: com.xsolla.item_4
                value_point:
                  sku: com.xsolla.clan_value_point_1
            default:
              summary: Belohnungskette (Beispiel)
              value:
                attribute_conditions:
                  - attribute: race
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: ork
                description:
                  en: Reward chain description.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_always_visible: true
                is_enabled: true
                is_reset_after_end: true
                long_description:
                  en: Reward chain long description.
                name:
                  en: Reward chain
                order: 1
                periods:
                  - date_from: '2026-01-01T01:00:00+05:00'
                    date_until: '2026-01-31T23:59:59+05:00'
                  - date_from: '2026-02-01T01:00:00+05:00'
                    date_until: '2026-02-28T23:59:59+05:00'
                recurrent_schedule:
                  day_of_week: 1
                  interval_type: weekly
                  time: 01:00:00+08:00
                steps:
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: First step of the reward chain
                    price:
                      amount: 10
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_1
                      - quantity: 1
                        sku: com.xsolla.item_2
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: Second step of the reward chain
                    price:
                      amount: 15
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_3
                      - quantity: 1
                        sku: com.xsolla.item_4
                value_point:
                  sku: com.xsolla.value_point_1
          schema:
            oneOf:
              - $ref: '#/components/schemas/create-reward-chain-model'
              - $ref: '#/components/schemas/create-clan-reward-chain-model'
    create-upsell:
      content:
        application/json:
          examples:
            fixed_list:
              summary: Beispiel für Upselling mit fester Artikelliste
              value:
                is_enabled: true
                items:
                  - game_sku_1
                  - game_sku_2
                  - game_sku_3
                type: fixed_list
            special_type_most_sellable:
              summary: >-
                Beispiel für Upselling mit den meistverkauften Artikeln der
                letzten 30 Tage
              value:
                is_enabled: true
                items: []
                type: most_sellable
            special_type_promotions:
              summary: Beispiel für Upselling nur mit Aktionsartikeln
              value:
                is_enabled: true
                items: []
                type: only_promotions
          schema:
            oneOf:
              - $ref: '#/components/schemas/Upsell-model'
              - $ref: '#/components/schemas/Upsell-model-not-fixed-list'
    create-value-point:
      content:
        application/json:
          examples:
            clan:
              summary: Wertpunkte für die Clan-Belohnungskette
              value:
                description:
                  en: Value points for clan reward system.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_clan: true
                is_enabled: true
                long_description:
                  en: >-
                    Value points given to clans to get new rewards in a reward
                    chain.
                media_list: []
                name:
                  en: Clan Reward VP 1
                order: 3
                sku: com.xsolla.clan_value_point_1
            default:
              summary: Wertpunkt für die Belohnungskette
              value:
                description:
                  en: Value points for reward system.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_enabled: true
                long_description:
                  en: >-
                    Value points given to users to get new rewards in a reward
                    chain.
                media_list: []
                name:
                  en: Reward VP 1
                order: 1
                sku: com.xsolla.reward_vp_1
          schema:
            $ref: '#/components/schemas/admin_value_points-create'
    personalized-catalog_create-update-body:
      content:
        application/json:
          example:
            attribute_conditions:
              - attribute: race
                can_be_missing: false
                operator: eq
                type: string
                value: ork
            is_enabled: true
            is_satisfied_for_unauth: false
            items:
              - item_id: 1
            name: Ork race armor rule
          schema:
            $ref: >-
              #/components/schemas/user-attribute_personalized-catalog-body-required
    reset-user-limits:
      content:
        application/json:
          example:
            user:
              user_external_id: d342dad2-9d59-11e9-a384-42010aa8003f
          schema:
            properties:
              user:
                $ref: '#/components/schemas/User-limit_user'
            required:
              - user
            type: object
    reset-user-limits-flexible:
      content:
        application/json:
          example:
            user:
              user_external_id: d342dad2-9d59-11e9-a384-42010aa8003f
          schema:
            properties:
              user:
                $ref: '#/components/schemas/User-limit_user_flexible'
            required:
              - user
            type: object
    set-item-value-point-reward:
      content:
        application/json:
          example:
            - amount: 100
              sku: com.xsolla.booster_1
            - amount: 200
              sku: com.xsolla.booster_mega
          schema:
            $ref: '#/components/schemas/item-value-point-reward-set'
    set-item-value-point-reward-for-patch:
      content:
        application/json:
          example:
            - amount: 100
              sku: booster_1
            - amount: 0
              sku: booster_mega
          schema:
            $ref: '#/components/schemas/item-value-point-reward-set-for-patch'
    update-daily-chain:
      content:
        application/json:
          examples:
            calendar_hard:
              summary: Tägliche Belohnung vom Typ `calendar_hard`
              value:
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  en: Updated daily reward description
                is_enabled: true
                name:
                  en: Updated daily reward
                  ru: Обновленная ежедневная награда
                order: 4
                steps:
                  - items:
                      - quantity: 1
                        sku: vg_enabled_shown_in_store_1
                    step_number: 1
                  - items:
                      - quantity: 1
                        sku: vg_enabled_shown_in_store_2
                    step_number: 2
                  - items:
                      - quantity: 1
                        sku: vg_not_shown_in_store
                    step_id: 10
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: >-
                          bundle_enabled_shown_in_store_with_2_enabled_shown_in_store_vg
                    step_id: 8
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: >-
                          vcp_enabled_shown_in_store_1_of_10_vc_enabled_shown_in_store_1
                    step_number: 5
                type: calendar_hard
            rolling_skippable:
              summary: Tägliche Belohnung vom Typ `rolling_skippable`
              value:
                date_end: '2023-08-31T10:00:00+05:00'
                date_start: '2023-08-01T10:00:00+05:00'
                description:
                  en: Updated login reward description
                is_enabled: true
                name:
                  en: Updated login reward
                order: 4
                steps:
                  - items:
                      - quantity: 1
                        sku: monday_reward_item_one
                    step_number: 1
                  - items:
                      - quantity: 1
                        sku: tuesday_reward_item_two
                    step_number: 2
                  - items:
                      - quantity: 1
                        sku: wednesday_reward_item_three
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: thursday_reward_item_four
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: friday_reward_item_five
                    step_number: 5
                  - items:
                      - quantity: 1
                        sku: saturday_reward_item_six
                    step_number: 6
                  - items:
                      - quantity: 1
                        sku: sunday_reward_item_seven
                    step_number: 7
                type: rolling_skippable
            rolling_unskippable:
              summary: Tägliche Belohnung vom Typ `rolling_unskippable`
              value:
                date_end: '2023-09-30T10:00:00+05:00'
                date_start: '2023-09-01T10:00:00+05:00'
                description:
                  en: Updated unskippable login reward description
                is_enabled: true
                name:
                  en: Updated unskippable login reward
                order: 2
                steps:
                  - items:
                      - quantity: 1
                        sku: monday_reward_item_one
                    step_number: 1
                  - items:
                      - quantity: 1
                        sku: tuesday_reward_item_two
                    step_number: 2
                  - items:
                      - quantity: 1
                        sku: wednesday_reward_item_three
                    step_number: 3
                  - items:
                      - quantity: 1
                        sku: thursday_reward_item_four
                    step_number: 4
                  - items:
                      - quantity: 1
                        sku: friday_reward_item_five
                    step_number: 5
                type: rolling_unskippable
          schema:
            oneOf:
              - $ref: '#/components/schemas/update-calendar-hard-daily-chain-model'
              - $ref: >-
                  #/components/schemas/update-rolling-skippable-daily-chain-model
              - $ref: >-
                  #/components/schemas/update-rolling-unskippable-daily-chain-model
    update-offer-chain:
      content:
        application/json:
          examples:
            default:
              summary: Standardbeispiel
              value:
                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: Aktualisierte Angebotskette
                  en: Updated offer chain
                  fr: Chaîne d'offres mise à jour
                  it: Catena di offerte aggiornata
                  ru: Обновляемая цепочка предложений
                order: 4
                recurrent_schedule: null
                steps:
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_step_1_paid_bundle_sku
                    step_id: 10
                    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_id: 9
                    step_number: 4
            personalized-default:
              summary: Personalisierte Standardangebotskette (Beispiel)
              value:
                date_end: null
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  de: >-
                    Standard-personalisierte Angebotskette für Benutzer, die die
                    Bedingungen anderer personalisierter Ketten nicht erfüllen
                  en: >-
                    Default personalized offer chain for users that do not meet
                    the conditions of other personalized chains
                  fr: >-
                    Chaîne d'offres personnalisée par défaut pour les
                    utilisateurs qui ne répondent pas aux conditions des autres
                    chaînes personnalisées
                  it: >-
                    Catena di offerte personalizzata predefinita per gli utenti
                    che non soddisfano le condizioni di altre catene
                    personalizzate
                  ru: >-
                    Персонализированная цепочка по умолчанию для пользователей,
                    не подходящих под условия других персонализированных цепочек
                is_always_visible: false
                is_enabled: true
                name:
                  de: Neue personalisierte Standard-Angebotskette
                  en: New personalized default offer chain
                  fr: Nouvelle chaîne d'offres personnalisée par défaut
                  it: Nuova catena di offerte personalizzata predefinita
                  ru: Новая персонализированная цепочка предложений по умолчанию
                order: 4
                recurrent_schedule: null
                steps:
                  - is_free: false
                    items:
                      - quantity: 1
                        sku: chain_x_step_1_item_default
                    step_id: 10
                    step_number: 1
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_x_step_2_item_default
                    step_number: 2
                  - is_free: true
                    items:
                      - quantity: 1
                        sku: chain_x_step_3_free_item_default
                    step_id: 9
                    step_number: 3
            personalized-with-conditions:
              summary: >-
                Personalisierte Angebotskette mit Bedingungen für
                Nutzerattribute (Beispiel)
              value:
                attribute_conditions:
                  - attribute: race
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: elf
                  - attribute: level
                    can_be_missing: false
                    operator: ge
                    type: number
                    value: '10'
                  - attribute: 10_level_up_date
                    can_be_missing: false
                    operator: le
                    type: date
                    value: '2026-01-01T00:00:00'
                date_end: null
                date_start: '2023-04-15T18:16:00+05:00'
                description:
                  de: >-
                    Personalisierte Angebotskette mit
                    Benutzerattributbedingungen - für Elfen der Stufe 10 und
                    höher, die Stufe 10 spätestens am 2026-01-01 00:00:00
                    erreicht haben, einschließlich
                  en: >-
                    Personalized offer chain with user attribute conditions -
                    for level 10 and above elves who reached level 10 no later
                    than 2026-01-01 00:00:00, inclusive
                  fr: >-
                    Chaîne d'offres personnalisée avec des conditions d'attribut
                    utilisateur - pour les elfes de niveau 10 et plus qui ont
                    atteint le niveau 10 au plus tard le 2026-01-01 00:00:00,
                    inclus
                  it: >-
                    Catena di offerte personalizzata con condizioni di attributo
                    utente - per elfi di livello 10 e superiore che hanno
                    raggiunto il livello 10 non più tardi del 2026-01-01
                    00:00:00, inclusi
                  ru: >-
                    Персонализированная цепочка предложений с условиями по
                    атрибутам пользователя - для эльфов уровня 10 и выше,
                    достигших 10 уровня не позднее 2026-01-01 00:00:00
                    включительно
                is_always_visible: false
                is_enabled: true
                name:
                  de: Neue personalisierte Angebotskette
                  en: New personalized offer chain
                  fr: Nouvelle chaîne d'offres personnalisée
                  it: Nuova catena di offerte personalizzata
                  ru: Новая персонализированная цепочка предложений
                order: 4
                recurrent_schedule: null
                steps:
                  - is_free: false
                    items:
                      - quantity: 1
                        sku: chain_x_step_1_item_for_elves_level_10_and_above
                    step_id: 10
                    step_number: 1
                  - is_free: false
                    items:
                      - quantity: 2
                        sku: chain_x_step_2_item_for_elves_level_10_and_above
                    step_id: 8
                    step_number: 2
                  - is_free: true
                    items:
                      - quantity: 1
                        sku: chain_x_step_3_free_item_for_elves_level_10_and_above
                    step_number: 3
            recurrent:
              summary: Wiederkehrende Angebotskette (Beispiel)
              value:
                date_end: '2025-04-25T19:16:00+05:00'
                date_start: '2023-04-15T17:16:00+05:00'
                description:
                  de: >-
                    Aktualisierte Angebotskette, die wiederkehrend wird und
                    monatlich am 2. Tag um 03:00 Uhr GMT+8 zurückgesetzt wird
                  en: >-
                    Updated offer chain that becomes recurrent and resets
                    monthly on the 2nd day at 03:00 AM GMT+8
                  fr: >-
                    Chaîne d'offres mise à jour qui devient récurrente et se
                    réinitialise mensuellement le 2e jour à 03h00 GMT+8
                  it: >-
                    Catena di offerte aggiornata che diventa ricorrente e si
                    resetta mensilmente il 2° giorno alle 03:00 GMT+8
                  ru: >-
                    Обновляемая цепочка предложений, которая становится
                    рекуррентной и сбрасывается ежемесячно во 2-й день в 03:00
                    по GMT+8
                id: 1
                is_enabled: true
                name:
                  de: Aktualisierte wiederkehrende Angebotskette
                  en: Updated recurrent offer chain
                  fr: Chaîne d'offres récurrente mise à jour
                  it: Catena di offerte ricorrente aggiornata
                  ru: Обновляемая рекуррентная цепочка предложений
                order: 4
                recurrent_schedule:
                  day_of_month: 2
                  interval_type: monthly
                  time: 03:00:00+08:00
                steps:
                  - is_free: false
                    items:
                      - quantity: 6
                        sku: chain_bundle_sku
                    step_number: 1
                  - is_free: true
                    items:
                      - quantity: 2
                        sku: chain_bundle_sku
                    step_number: 1
          schema:
            $ref: '#/components/schemas/modify-offer-chain-model'
    update-reward-chain:
      content:
        application/json:
          examples:
            clan:
              summary: Clan-Belohnungskette (Beispiel)
              value:
                clan_type: guild
                description:
                  en: Clan reward chain description.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_enabled: true
                long_description:
                  en: Clan reward chain long description.
                name:
                  en: Clan reward chain
                order: 1
                periods:
                  - date_from: '2026-01-01T01:00:00+05:00'
                    date_until: '2026-01-31T23:59:59+05:00'
                  - date_from: '2026-02-01T01:00:00+05:00'
                    date_until: '2026-02-28T23:59:59+05:00'
                popup_header:
                  en: How to unlock rewards
                popup_image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                popup_instruction:
                  en: >-
                    You should be a clan member to get clan rewards. You join a
                    clan when a clan member invited you to the clan, and you
                    accepted the invite. You can create your own clan.
                recurrent_schedule:
                  day_of_week: 1
                  interval_type: weekly
                  time: 01:00:00+08:00
                steps:
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: First step of the reward chain
                    price:
                      amount: 10
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_1
                      - quantity: 1
                        sku: com.xsolla.item_2
                    step_id: 1
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: Second step of the reward chain
                    price:
                      amount: 15
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_3
                      - quantity: 1
                        sku: com.xsolla.item_4
                    step_id: 2
            default:
              summary: Belohnungskette (Beispiel)
              value:
                attribute_conditions:
                  - attribute: race
                    can_be_missing: false
                    operator: eq
                    type: string
                    value: ork
                description:
                  en: Reward chain description.
                image_url: >-
                  https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                is_always_visible: true
                is_enabled: true
                is_reset_after_end: true
                long_description:
                  en: Reward chain long description.
                name:
                  en: Reward chain
                order: 1
                periods:
                  - date_from: '2026-01-01T01:00:00+05:00'
                    date_until: '2026-01-31T23:59:59+05:00'
                  - date_from: '2026-02-01T01:00:00+05:00'
                    date_until: '2026-02-28T23:59:59+05:00'
                recurrent_schedule:
                  day_of_week: 1
                  interval_type: weekly
                  time: 01:00:00+08:00
                steps:
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: First step of the reward chain
                    price:
                      amount: 10
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_1
                      - quantity: 1
                        sku: com.xsolla.item_2
                    step_id: 1
                  - image_url: >-
                      https://cdn.xsolla.net/img/misc/images/5c3b8b45c5be5fe7803e59fbc8041be4.png
                    name:
                      en: Second step of the reward chain
                    price:
                      amount: 15
                    reward:
                      - quantity: 5
                        sku: com.xsolla.item_3
                      - quantity: 1
                        sku: com.xsolla.item_4
                    step_id: 2
          schema:
            oneOf:
              - $ref: '#/components/schemas/update-reward-chain-model'
              - $ref: '#/components/schemas/update-clan-reward-chain-model'
    update-upsell:
      content:
        application/json:
          examples:
            fixed_list:
              summary: Beispiel für Upselling mit fester Artikelliste
              value:
                is_enabled: true
                items:
                  - game_sku_1
                  - game_sku_2
                  - game_sku_3
                type: fixed_list
            special_type_most_sellable:
              summary: >-
                Beispiel für Upselling mit den meistverkauften Artikeln der
                letzten 30 Tage
              value:
                is_enabled: true
                items: []
                type: most_sellable
            special_type_promotions:
              summary: Beispiel für Upselling nur mit Aktionsartikeln
              value:
                is_enabled: true
                items: []
                type: only_promotions
          schema:
            oneOf:
              - $ref: '#/components/schemas/Upsell-model'
              - $ref: '#/components/schemas/Upsell-model-not-fixed-list'
    update-user-limits-flexible:
      content:
        application/json:
          example:
            available: 0
            user:
              user_external_id: d342dad2-9d59-11e9-a384-42010aa8003f
          schema:
            properties:
              available:
                $ref: '#/components/schemas/User-limit_available_flexible'
              user:
                $ref: '#/components/schemas/User-limit_user'
            required:
              - user
              - available
            type: object
    update-user-limits-strict:
      content:
        application/json:
          example:
            available: 1
            user:
              user_external_id: d342dad2-9d59-11e9-a384-42010aa8003f
          schema:
            properties:
              available:
                $ref: '#/components/schemas/User-limit_available'
              user:
                $ref: '#/components/schemas/User-limit_user'
            required:
              - user
              - available
            type: object
  responses:
    200-admin-get-code-coupon-limits:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/code-limit'
          schema:
            properties:
              has_more:
                description: Wenn eine andere Seite mit Codes existiert.
                type: boolean
              items:
                items:
                  $ref: '#/components/schemas/Code-limit-promo-code'
                type: array
              promotion_id:
                description: >-
                  Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des
                  Projekts.
                type: integer
              total_items_count:
                description: Gesamtzahl der Codes.
                type: number
            type: object
      description: Gutscheinlimits für einen Code erfolgreich erhalten.
    200-admin-get-code-promo-code-limits:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/code-limit'
          schema:
            properties:
              has_more:
                description: Wenn eine andere Seite mit Codes existiert.
                type: boolean
              items:
                items:
                  $ref: '#/components/schemas/Code-limit-promo-code'
                type: array
              promotion_id:
                description: >-
                  Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des
                  Projekts.
                type: integer
              total_items_count:
                description: Gesamtzahl der Codes.
                type: number
            type: object
      description: Promocode-Limits für einen Code erfolgreich erhalten.
    200-admin-get-daily-chain:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-admin-daily-chain'
          schema:
            $ref: '#/components/schemas/admin-daily-chain-long-model'
      description: Belohnungsdaten wurden erfolgreich abgerufen.
    200-admin-get-list-daily-chains:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-admin-daily-chain-list'
          schema:
            properties:
              has_more:
                $ref: '#/components/schemas/Pagination_has-more'
              items:
                items:
                  $ref: '#/components/schemas/admin-daily-chain-short-model'
                type: array
              total_items_count:
                description: Gesamtzahl der täglichen Belohnungen.
                example: 3
                type: integer
            type: object
      description: Die Liste der täglichen Belohnungen wurde erfolgreich abgerufen.
    200-admin-get-list-offer-chains:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-admin-offer-chain-list'
          schema:
            properties:
              has_more:
                $ref: '#/components/schemas/Pagination_has-more'
              items:
                items:
                  $ref: '#/components/schemas/admin-offer-chain-short-model'
                type: array
            type: object
      description: Die Liste der Angebotsketten wurde erfolgreich abgerufen.
    200-admin-get-list-reward-chains:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-reward-chain-list'
          schema:
            properties:
              has_more:
                $ref: '#/components/schemas/Pagination_has-more'
              items:
                items:
                  oneOf:
                    - $ref: >-
                        #/components/schemas/admin-get-reward-chain-item-basic-model
                    - $ref: >-
                        #/components/schemas/admin-get-reward-chain-item-clan-basic-model
                type: array
            type: object
      description: Die Liste der Belohnungsketten wurde erfolgreich empfangen.
    200-admin-get-list-value-point-rewards:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-value-points-rewards-list'
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/admin-item-value-point-reward'
                type: array
            type: object
      description: >-
        Die Liste der Artikel mit Wertpunktbelohnungen wurde erfolgreich
        empfangen.
    200-admin-get-offer-chain:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-admin-offer-chain'
          schema:
            $ref: '#/components/schemas/admin-offer-chain-long-model'
      description: Die Angebotskettendaten wurden erfolgreich abgerufen.
    200-admin-get-redeemable-by-code:
      content:
        application/json:
          examples:
            Coupon Response:
              value:
                bonus:
                  - quantity: 3
                    sku: epic_fall_hammer_1
                external_id: coupon_fall_hammer_2
                is_enabled: true
                name:
                  en: This is a Coupon code for Epic Fall Hammer
                  ru: Eto kod kupona на Epic Fall Hammer
                promotion_periods:
                  - date_from: '2023-04-15T01:00:00+05:00'
                    date_until: '2023-04-30T23:59:59+05:00'
                  - date_from: '2023-05-15T01:00:00+05:00'
                    date_until: '2023-05-30T23:59:59+05:00'
                redeem_code_limit: null
                redeem_total_limit: 99
                redeem_user_limit: 1
            Promo Code Response:
              value:
                bonus: []
                discount:
                  percent: null
                discounted_items:
                  - discount:
                      percent: '20.00'
                    sku: epic_fall_hammer_1
                external_id: falls2023
                is_enabled: true
                name:
                  en: Promo Code discount for Epic Fall Hammer
                  ru: Скидка по промокоду на Epic Fall Hammer
                promotion_periods:
                  - date_from: '2023-05-01T01:00:00+05:00'
                    date_until: '2023-05-31T23:59:59+05:00'
                  - date_from: '2023-06-01T01:00:00+05:00'
                    date_until: '2023-06-30T23:59:59+05:00'
                redeem_code_limit: null
                redeem_total_limit: 2
                redeem_user_limit: 3
                total_limit_state:
                  available: 1
                  reserved: 1
                  used: 0
          schema:
            $ref: >-
              #/components/schemas/admin-promotions_200-get-redeemable-coupon-promotion-model
      description: Die Werbeaktion wurde erfolgreich angenommen.
    200-admin-get-reward-chain:
      content:
        application/json:
          examples:
            clan:
              $ref: '#/components/examples/200-clan-reward-chain'
            common:
              $ref: '#/components/examples/200-reward-chain'
          schema:
            oneOf:
              - $ref: '#/components/schemas/admin-get-reward-chain-item-full-model'
              - $ref: >-
                  #/components/schemas/admin-get-reward-chain-item-clan-full-model
      description: Die angegebene Belohnungskette wurde erfolgreich empfangen.
    200-admin-get-user-coupon-limits:
      content:
        application/json:
          examples:
            response:
              value:
                per_user:
                  available: 9
                  total: 10
          schema:
            $ref: '#/components/schemas/User-limit-coupon'
      description: Gutschein-Limits für einen Nutzer erfolgreich erhalten.
    200-admin-get-user-promo-code-limits:
      content:
        application/json:
          examples:
            response:
              value:
                per_user:
                  available: 9
                  total: 10
          schema:
            $ref: '#/components/schemas/User-limit-promo-code'
      description: Promocode-Limits für einen Nutzer erfolgreich erhalten.
    200-admin-get-user-promotion-limits:
      content:
        application/json:
          examples:
            response:
              value:
                per_user:
                  available: 9
                  total: 10
          schema:
            $ref: '#/components/schemas/User-limit-promotion'
      description: Werbeaktionslimits für einen Nutzer wurden erfolgreich abgerufen.
    200-admin-get-value-point:
      content:
        application/json:
          examples:
            response:
              $ref: >-
                #/components/examples/200-value-points-reward-chain_admin_get-value-point
          schema:
            $ref: '#/components/schemas/Value-point-item-model'
      description: Der angegebene Wertpunkt wurde erfolgreich empfangen.
    200-admin-get-value-points:
      content:
        application/json:
          examples:
            response:
              $ref: >-
                #/components/examples/200-value-points-reward-chain_admin_get-value-point-list
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/Value-points-item-model'
                type: array
            type: object
      description: Die Liste der Wertpunkte wurde erfolgreich abgerufen.
    200-client-get-daily-chains-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-client-daily-chain-list'
          schema:
            properties:
              has_more:
                description: Dient als Indikator dafür, dass weitere Seiten vorhanden sind.
                example: true
                type: boolean
              items:
                items:
                  $ref: '#/components/schemas/client-daily-chain-model'
                type: array
              total_items_count:
                description: Gesamtzahl der täglichen Belohnungen.
                example: 3
                type: integer
            type: object
      description: Die täglichen Belohnungen des Nutzers wurden erfolgreich abgerufen.
    200-client-get-offer-chains-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-client-offer-chain-list'
          schema:
            properties:
              has_more:
                description: Gibt an, ob weitere Seiten verfügbar sind.
                example: true
                type: boolean
              items:
                items:
                  $ref: '#/components/schemas/client-offer-chain-model'
                type: array
              total_items_count:
                description: Gesamtzahl der verfügbaren Angebotsketten.
                example: 10
                type: integer
            type: object
      description: Die Liste der Angebotsketten wurde erfolgreich empfangen.
    200-client-get-reward-chains-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-client-get-reward-chains-list'
          schema:
            properties:
              has_more:
                description: Dient als Indikator dafür, dass weitere Seiten vorhanden sind.
                example: true
                type: boolean
              items:
                items:
                  $ref: '#/components/schemas/client-reward-chain-item-model'
                type: array
              total_items_count:
                description: Gesamtzahl der Belohnungsketten im System.
                example: 10
                type: integer
            type: object
      description: Die Belohnungskette des Nutzers wurde erfolgreich abgerufen.
    200-client-get-user-reward-chain-balance:
      content:
        application/json:
          examples:
            clan:
              $ref: >-
                #/components/examples/200-client-get-user-clan-reward-chain-balance
            common:
              $ref: '#/components/examples/200-client-get-user-reward-chain-balance'
          schema:
            properties:
              amount:
                description: Wertpunktmenge.
                type: integer
              description:
                $ref: '#/components/schemas/value-point-description'
              image_url:
                $ref: '#/components/schemas/Common_admin-image_url'
              is_clan:
                $ref: '#/components/schemas/is_clan'
              long_description:
                $ref: '#/components/schemas/value-point-long-description'
              name:
                $ref: '#/components/schemas/value-point-name'
              sku:
                $ref: '#/components/schemas/value-point-sku'
            type: object
      description: Der Wertpunktestand des Nutzers wurde erfolgreich abgerufen.
    200-client-update-user-clan:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/200-client-update-user-clan'
          schema:
            properties:
              reward:
                items:
                  properties:
                    bundle_type:
                      description: >-
                        Bundle-Typ. Wird zurückgegeben, wenn der Artikeltyp ein
                        Bundle ist.
                      enum:
                        - standard
                        - virtual_currency_package
                      type: string
                    description:
                      description: Artikelbeschreibung.
                      example: Super box with items
                      type: string
                    image_url:
                      $ref: '#/components/schemas/Common_admin-image_url'
                    name:
                      description: Artikelname.
                      example: Super box
                      type: string
                    quantity:
                      description: Artikelmenge.
                      example: 2
                      type: integer
                    sku:
                      $ref: '#/components/schemas/sku'
                    type:
                      description: Artikeltyp.
                      example: bundle
                      type: string
                  type: object
                type: array
            type: object
      description: Der Clan des Nutzers wurde erfolgreich aktualisiert.
    201-admin-create-daily-chain:
      content:
        application/json:
          examples:
            response:
              value:
                daily_chain_id: 10
          schema:
            properties:
              daily_chain_id:
                example: 10
                type: integer
            type: object
      description: Tägliche Belohnung wurde erfolgreich erstellt.
    201-admin-create-offer-chain:
      content:
        application/json:
          examples:
            response:
              value:
                offer_chain_id: 10
          schema:
            properties:
              offer_chain_id:
                example: 10
                type: integer
            type: object
      description: Die Angebotskette wurde erfolgreich erstellt.
    201-admin-create-reward-chain:
      content:
        application/json:
          examples:
            response:
              value:
                reward_chain_id: 10
          schema:
            properties:
              reward_chain_id:
                example: 10
                type: integer
            type: object
      description: Die Belohnungskette wurde erfolgreich erstellt.
    201-admin-create-value-point:
      content:
        application/json:
          examples:
            response:
              value:
                item_id: 10
                sku: com.xsolla.item_new
          schema:
            properties:
              item_id:
                example: 10
                type: integer
              sku:
                example: new-sku
                type: string
            type: object
      description: Der Wertpunkt wurde erfolgreich erstellt.
    204-admin-delete-reward-chain:
      content: {}
      description: Die Belohnungskette wurde erfolgreich gelöscht.
    204-admin-reset-reward-chain:
      content: {}
      description: Die Belohnungskette wurde zurückgesetzt.
    204-admin-toggle-reward-chain:
      content: {}
      description: Die Belohnungskette wurde deaktiviert/aktiviert.
    204-admin-update-reward-chain:
      content: {}
      description: Die Belohnungskette wurde erfolgreich aktualisiert.
    401-client-auth-error:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1501
                errorMessage: '[0401-1501]: Authorization failed: Provide authorization'
                statusCode: 401
          schema:
            properties:
              errorCode:
                example: 1501
                type: integer
              errorMessage:
                example: '[0401-1501]: Authorization failed: Provide authorization'
                type: string
              statusCode:
                example: 401
                type: integer
            type: object
      description: Authentifizierung nicht bestanden oder falsch.
    401-invalid-basic-auth:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1020
                errorMessage: '[0401-1020]: Error in Authentication method occurred'
                statusCode: 401
          schema:
            properties:
              errorCode:
                example: 1020
                type: integer
              errorMessage:
                example: '[0401-1020]: Error in Authentication method occurred'
                type: string
              statusCode:
                example: 401
                type: integer
            type: object
      description: >-
        Basisauthentifizierung nicht bestanden oder falsch. Prüfen Sie die
        Anmeldedaten und vergewissern Sie sich, dass Sie die
        Basisauthentifizierung verwenden.
    403-auth-header-not-sent:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 0
                errorMessage: Authorization header not sent
                statusCode: 403
          schema:
            properties:
              errorCode:
                example: 0
                type: integer
              errorMessage:
                example: Authorization header not sent.
                type: string
              statusCode:
                example: 403
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Autorisierungs-Header nicht gesendet.
    404-admin-reward-chain-not-found:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9901
                errorMessage: '[0401-4001]: Reward chain not found'
                statusCode: 404
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-4001]: Reward chain not found'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: Belohnungskette nicht gefunden.
    404-code-not-found:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9811
                errorMessage: '[0401-9811]: Code not found.'
                statusCode: 404
          schema:
            properties:
              errorCode:
                example: 9811
                type: integer
              errorMessage:
                example: '[0401-9811]: Code not found.'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: >-
        Einlösbarer Code nicht gefunden. Stellen Sie sicher, dass der angegebene
        Codewert korrekt ist.
    404-daily-chain-not-found:
      content:
        application/json:
          examples:
            not-found:
              $ref: '#/components/examples/404-daily-chain-not-found'
          schema:
            $ref: '#/components/schemas/daily-chain-error-model'
      description: Tägliche Belohnung wurde nicht gefunden.
    404-daily-chain-step-not-found:
      content:
        application/json:
          examples:
            not-found:
              $ref: '#/components/examples/404-daily-chain-step-not-found'
          schema:
            $ref: '#/components/schemas/daily-chain-error-model'
      description: Tägliche Belohnung oder Belohnungsschritt wurde nicht gefunden.
    404-offer-chain-not-found:
      content:
        application/json:
          examples:
            not-found:
              $ref: '#/components/examples/404-offer-chain-not-found'
          schema:
            $ref: '#/components/schemas/offer-chain-error-model'
      description: Die Angebotskette wurde nicht gefunden.
    404-offer-chain-step-not-found:
      content:
        application/json:
          examples:
            not-found:
              $ref: '#/components/examples/404-offer-chain-step-not-found'
          schema:
            $ref: '#/components/schemas/offer-chain-error-model'
      description: Die Angebotskette oder der Schritt wurde nicht gefunden.
    404-reward-chain-step-not-found:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9911
                errorMessage: '[0401-9911]: Reward chain step not found.'
                statusCode: 404
          schema:
            properties:
              errorCode:
                example: 9911
                type: integer
              errorMessage:
                example: '[0401-9911]: Reward chain step not found.'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: Belohnungskettenschritt nicht gefunden.
    405-method-not-found:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 0
                errorMessage: 'Method is not allowed. Method must be one of: OPTIONS'
                statusCode: 405
          schema:
            properties:
              errorCode:
                example: 0
                type: integer
              errorMessage:
                example: 'Method is not allowed. Method must be one of: OPTIONS'
                type: string
              statusCode:
                example: 405
                type: integer
            type: object
      description: >-
        Falsches Format des einlösbaren Codes. Der Code darf nur Buchstaben und
        Ziffern enthalten.
    422-admin-create-error-list:
      content:
        application/json:
          examples:
            incorrect-items:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-items
            incorrect-period:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-period
            incorrect-steps-order-error:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-steps-order
            invalid-dates:
              $ref: '#/components/examples/422-admin-daily-chain-error-invalid-dates'
            item-limit-exceeded:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-item-limit-exceeded
            too-many-steps-error:
              $ref: '#/components/examples/422-admin-daily-chain-error-too-many-steps'
          schema:
            $ref: '#/components/schemas/daily-chain-error-model'
      description: Fehler bei der Konfiguration der täglichen Belohnung.
    422-admin-create-update-rc-vp-invalid-request:
      content:
        application/json:
          examples:
            The property `sku` is required:
              $ref: '#/components/examples/422-property-sku-is-required'
          schema:
            $ref: '#/components/schemas/422-rc-vp-invalid-request'
      description: Ungültige Anfrage.
    422-admin-update-error-list:
      content:
        application/json:
          examples:
            active-daily-chain:
              $ref: '#/components/examples/422-admin-daily-chain-error-activated'
            chain-id-mismatch:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-chain-id-mismatch
            chain-step-ids-duplication:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-duplicate-step-ids
            incorrect-items:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-items
            incorrect-period:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-period
            incorrect-steps-order-error:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-incorrect-steps-order
            invalid-chain-step-ids:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-invalid-chain-step-ids
            invalid-dates:
              $ref: '#/components/examples/422-admin-daily-chain-error-invalid-dates'
            item-limit-exceeded:
              $ref: >-
                #/components/examples/422-admin-daily-chain-error-item-limit-exceeded
            too-many-steps-error:
              $ref: '#/components/examples/422-admin-daily-chain-error-too-many-steps'
          schema:
            $ref: '#/components/schemas/daily-chain-error-model'
      description: Fehler bei der Konfiguration der täglichen Belohnung.
    422-create-error-list:
      content:
        application/json:
          examples:
            incorrect-items:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-items
            incorrect-period:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-period
            incorrect-steps-order-error:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-steps-order
            invalid-dates:
              $ref: '#/components/examples/422-admin-offer-chain-error-invalid-dates'
            item-limit-exceeded:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-item-limit-exceeded
            too-many-steps-error:
              $ref: '#/components/examples/422-admin-offer-chain-error-too-many-steps'
          schema:
            $ref: '#/components/schemas/offer-chain-error-model'
      description: Ungültige Angebotskettenkonfiguration.
    422-reward-chain-step-reward-can-not-claimed:
      content:
        application/json:
          examples:
            Not enough VP to claim reward chain step reward:
              value:
                errorCode: 9913
                errorMessage: '[0401-9913]: Not enough value points to claim step reward.'
                statusCode: 422
            Reward chain step reward already claimed:
              value:
                errorCode: 9912
                errorMessage: '[0401-9912]: Reward already claimed.'
                statusCode: 422
          schema:
            properties:
              errorCode:
                example: 9912
                type: integer
              errorMessage:
                example: '[0401-9912]: Can''t claim the step reward.'
                type: string
              statusCode:
                example: 422
                type: integer
            type: object
      description: Die Stufenbelohnung kann nicht in Anspruch genommen werden.
    422-update-error-list:
      content:
        application/json:
          examples:
            active-offer-chain:
              $ref: '#/components/examples/422-admin-offer-chain-error-activated'
            chain-id-mismatch:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-chain-id-mismatch
            chain-step-ids-duplication:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-duplicate-step-ids
            incorrect-items:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-items
            incorrect-period:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-period
            incorrect-steps-order-error:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-incorrect-steps-order
            invalid-chain-step-ids:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-invalid-chain-step-ids
            invalid-dates:
              $ref: '#/components/examples/422-admin-offer-chain-error-invalid-dates'
            item-limit-exceeded:
              $ref: >-
                #/components/examples/422-admin-offer-chain-error-item-limit-exceeded
            too-many-steps-error:
              $ref: '#/components/examples/422-admin-offer-chain-error-too-many-steps'
          schema:
            $ref: '#/components/schemas/offer-chain-error-model'
      description: Ungültige Angebotskettenkonfiguration.
    Cart-Payment_200-order-created:
      content:
        application/json:
          examples:
            response:
              value:
                order_id: 641
                token: f4puMEFFDZcx9nv5HoNHIkPe9qghvBQo
          schema:
            properties:
              order_id:
                description: Bestell-ID.
                type: integer
              token:
                description: Zahlungstoken.
                type: string
            type: object
      description: Bestellung wurde erfolgreich erstellt.
    Common_401-complex:
      content:
        application/json:
          examples:
            Authorization header not sent:
              $ref: '#/components/examples/401-complex-auth-header-not-found'
            Incorrect credentials:
              $ref: '#/components/examples/401-complex-auth-incorrect-credentials'
          schema:
            properties:
              errorCode:
                example: 1501
                type: integer
              errorMessage:
                example: >-
                  [0401-1501]: Authorization failed: Authorization header not
                  sent
                type: string
              statusCode:
                example: 401
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: >-
        Authentifizierung nicht bestanden oder falsch. Prüfen Sie die
        Anmeldedaten und vergewissern Sie sich, dass Sie die Authentifizierung
        verwenden.
    Common_401-invalid-basic-auth:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1020
                errorMessage: '[0401-1020]: Error in Authentication method occurred'
                statusCode: 401
          schema:
            properties:
              errorCode:
                example: 1020
                type: integer
              errorMessage:
                example: '[0401-1020]: Error in Authentication method occurred'
                type: string
              statusCode:
                example: 401
                type: integer
            type: object
      description: >-
        Basisauthentifizierung nicht bestanden oder falsch. Prüfen Sie die
        Anmeldedaten und vergewissern Sie sich, dass Sie die
        Basisauthentifizierung verwenden.
    Common_422-body-validation:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `name` is
                  required
                statusCode: 422
                transactionId: da145238620011eb8e24fe6913ff226a
          schema:
            $ref: '#/components/schemas/422-invalid-request'
      description: Fehler bei der Anfragevalidierung.
    Promotions_200-admin-get-bonus-promotion:
      content:
        application/json:
          examples:
            response:
              value:
                bonus:
                  - quantity: 1
                    sku: com.xsolla.elven_sword_1
                  - quantity: 2
                    sku: com.xsolla.elven_shield_1
                  - quantity: 2
                    sku: com.xsolla.elven_gloves_1
                condition:
                  - sku: com.xsolla.elven_boots_1
                  - sku: com.xsolla.elven_knife_1
                excluded_promotions:
                  - 23
                  - 45
                id: 1
                is_enabled: true
                limits:
                  per_item: null
                  per_user:
                    total: 10
                  recurrent_schedule:
                    per_user:
                      displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                      displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                      interval_type: daily
                      reset_next_date: 1677553200
                      time: 11:00:00+08:00
                name:
                  de-DE: Neujahrsbonus
                  en-US: New Year Bonus
                price_conditions:
                  - operator: gt
                    value: '10.0000'
                  - operator: lt
                    value: '50.0000'
                promotion_periods:
                  - date_from: '2020-04-15T18:16:00+05:00'
                    date_until: '2020-04-25T18:16:00+05:00'
          schema:
            $ref: '#/components/schemas/Promotions_200-get-bonus-promotion-model'
      description: Bonusaktion wurde erfolgreich empfangen.
    Promotions_200-coupon-code-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-coupon-code-list'
          schema:
            properties:
              codes:
                items:
                  properties:
                    code:
                      $ref: '#/components/schemas/Promotions_coupon_code'
                  type: object
                type: array
              total_count:
                description: Gesamtzahl der Gutscheincodes.
                type: number
            type: object
      description: Die Liste der Codes für einen Gutschein wurde erfolgreich empfangen.
    Promotions_200-coupon-redeemed:
      content:
        application/json:
          examples:
            response:
              value:
                items:
                  - attributes: []
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: true
                    name: Xsolla Booster Mega
                    price: null
                    quantity: 1
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
          schema:
            properties:
              items:
                example:
                  - attributes: []
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: false
                    name: Xsolla Booster Mega
                    price:
                      amount: '50.0000000000000000'
                      amount_without_discount: '100.0000000000000000'
                      currency: USD
                    quantity: 1
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
                items:
                  properties:
                    attributes:
                      type: array
                    description:
                      type: string
                    groups:
                      items:
                        properties:
                          external_id:
                            type: string
                          name:
                            type: string
                        type: object
                      type: array
                    image_url:
                      type: string
                    is_free:
                      type: boolean
                    name:
                      nullable: true
                      type: string
                    price:
                      description: Artikelpreise.
                      nullable: true
                      properties:
                        amount:
                          description: Reduzierter Artikelpreis.
                          example: '2.9900'
                          type: string
                        amount_without_discount:
                          description: Artikelpreis.
                          example: '2.9900'
                          type: string
                        currency:
                          description: >-
                            Währung des Artikelpreises. Dreistelliger Code pro
                            [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
                          example: USD
                          type: string
                      type: object
                    quantity:
                      type: integer
                    sku:
                      type: string
                    type:
                      type: string
                    virtual_item_type:
                      description: Art des virtuellen Gegenstands.
                      enum:
                        - consumable
                        - non_consumable
                        - non_renewing_subscription
                      example: non-consumable
                      type: string
                      x-enumDescriptions:
                        consumable: "Ein Artikel, der nach Gebrauch aus dem Inventar verschwindet (z.\_B. Munition)."
                        non_consumable: >-
                          Ein Artikel, der für unbegrenzte Zeit im Inventar
                          verbleibt.
                        non_renewing_subscription: >-
                          Zeitlich begrenzter Artikel, der den Zugang zu
                          Diensten oder Inhalten für einen begrenzten Zeitraum
                          ermöglicht.
                    virtual_prices:
                      type: array
                  type: object
                type: array
            type: object
      description: Gutschein wurde erfolgreich eingelöst.
    Promotions_200-coupon-rewards:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-get-coupon-rewards'
          schema:
            properties:
              bonus:
                items:
                  $ref: '#/components/schemas/Promotions_200-coupon-bonus-reward'
                type: array
              discount:
                $ref: '#/components/schemas/Promotions_200-coupon-discount-reward'
              is_selectable:
                description: >-
                  Ist `true` eingestellt, sollte der Nutzer vor dem Einlösen
                  eines Gutscheins den Bonus auswählen.
                type: boolean
            type: object
      description: Die Liste der Gutscheinprämien wurde erfolgreich empfangen.
    Promotions_200-get-bonus-promotions:
      content:
        application/json:
          examples:
            response:
              value:
                active_promotions_count: 2
                inactive_promotions_count: 0
                promotions:
                  - bonus:
                      - quantity: 1
                        sku: com.xsolla.elven_sword_1
                      - quantity: 2
                        sku: com.xsolla.elven_shield_1
                      - quantity: 2
                        sku: com.xsolla.elven_gloves_1
                    condition:
                      - sku: com.xsolla.elven_boots_1
                      - sku: com.xsolla.elven_knife_1
                    id: 1
                    is_enabled: true
                    limits:
                      per_item: null
                      per_user: null
                      recurrent_schedule: null
                    name:
                      de-DE: Neujahrsbonus
                      en-US: New Year Bonus
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                      - date_from: '2020-05-15T18:16:00+05:00'
                        date_until: '2020-05-25T18:16:00+05:00'
                  - bonus:
                      - quantity: 100
                        sku: com.xsolla.diamonds_1
                    condition: null
                    excluded_promotions:
                      - 1
                    id: 2
                    is_enabled: true
                    limits:
                      per_item: null
                      per_user:
                        total: 10
                      recurrent_schedule:
                        per_user:
                          displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                          interval_type: daily
                          reset_next_date: 1677553200
                          time: 11:00:00+08:00
                    name:
                      de-DE: Sommersaison Bonus
                      en-US: Summer season bonus
                    price_conditions:
                      - operator: gt
                        value: '10.0000'
                      - operator: lt
                        value: '50.0000'
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                total_promotions_count: 2
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              promotions:
                items:
                  $ref: >-
                    #/components/schemas/Promotions_200-get-bonus-promotion-model
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Die Liste der Bonusaktionen wurde erfolgreich empfangen.
    Promotions_200-get-coupons:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-admin-coupons'
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              items:
                items:
                  $ref: >-
                    #/components/schemas/admin-promotions_200-get-coupon-promotion-model
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Gutscheinliste wurde erfolgreich empfangen.
    Promotions_200-get-item-promotions:
      content:
        application/json:
          examples:
            response:
              value:
                active_promotions_count: 4
                inactive_promotions_count: 0
                promotions:
                  - discount:
                      percent: '20.00'
                    id: 1
                    is_enabled: true
                    items:
                      - sku: com.xsolla.elven_sword_1
                    limits:
                      per_item: null
                      per_user: null
                      recurrent_schedule: null
                    name:
                      en-US: Promotion
                      ru-RU: Акция
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                      - date_from: '2020-05-15T18:16:00+05:00'
                        date_until: '2020-05-25T18:16:00+05:00'
                  - discount:
                      percent: '10.00'
                    excluded_promotions:
                      - 1
                      - 3
                    id: 2
                    is_enabled: true
                    items:
                      - sku: com.xsolla.elven_helmet_1
                      - sku: com.xsolla.elven_armor_1
                    limits:
                      per_item: null
                      per_user:
                        total: 10
                      recurrent_schedule:
                        per_user:
                          displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                          interval_type: daily
                          reset_next_date: 1677553200
                          time: 11:00:00+08:00
                    name:
                      en-US: Promotion
                      ru-RU: Акция
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                  - discount:
                      percent: '10.00'
                    id: 3
                    is_enabled: true
                    items:
                      - sku: com.xsolla.elven_helmet_2
                      - sku: com.xsolla.elven_armor_2
                    limits:
                      per_item: null
                      per_user:
                        total: 10
                      recurrent_schedule:
                        per_user:
                          displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                          interval_type: daily
                          reset_next_date: 1677553200
                          time: 11:00:00+08:00
                    name:
                      en-US: Promotion
                      ru-RU: Акция
                    price_conditions:
                      - operator: gt
                        value: '10.0000'
                      - operator: lt
                        value: '20.0000'
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                  - discount:
                      percent: '10.00'
                    id: 4
                    is_enabled: true
                    items: null
                    limits:
                      per_item: null
                      per_user:
                        total: 10
                      recurrent_schedule:
                        per_user:
                          displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                          interval_type: daily
                          reset_next_date: 1677553200
                          time: 11:00:00+08:00
                    name:
                      en-US: Promotion
                      ru-RU: Акция
                    price_conditions:
                      - operator: lt
                        value: '20.0000'
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                total_promotions_count: 4
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              promotions:
                items:
                  properties:
                    attribute_conditions:
                      $ref: >-
                        #/components/schemas/promotion_user-attribute_conditions_model-get
                    discount:
                      properties:
                        percent:
                          default: '10.00'
                          description: >-
                            Prozentualer Rabatt.

                            Der Preis des Artikels wird um einen Wert
                            verringert, der anhand dieses Prozentsatzes
                            berechnet wird.
                          nullable: true
                          type: string
                      type: object
                    excluded_promotions:
                      $ref: '#/components/schemas/excluded_promotions'
                    id:
                      description: >-
                        Werbeaktions-ID. Eindeutige Werbeaktionskennung
                        innerhalb des Projekts.
                      type: integer
                    is_enabled:
                      $ref: '#/components/schemas/Promotions_is_enabled'
                    items:
                      items:
                        description: Die Liste der Artikel, bei denen der Rabatt greift.
                        properties:
                          sku:
                            default: elven_sword
                            description: Artikel-SKU.
                            nullable: true
                            type: string
                        type: object
                      nullable: true
                      type: array
                    limits:
                      $ref: >-
                        #/components/schemas/Promotions_promotion_limits_response
                    name:
                      additionalProperties:
                        type: string
                      description: >-
                        Name der Werbeaktion. Sollte Schlüssel-Wert-Paare
                        enthalten, wobei der Schlüssel ein Gebietsschema im
                        Format "^[a–z]{2}-[A–Z]{2}$" und der Wert ein String
                        ist.
                      example:
                        en-US: Promotion
                        ru-RU: Акция
                      type: object
                    price_conditions:
                      $ref: '#/components/schemas/price_conditions_discount'
                    promotion_periods:
                      $ref: '#/components/schemas/promotion_periods'
                  type: object
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Die Liste der Artikelaktionen wurde erfolgreich empfangen.
    Promotions_200-get-promocodes:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-admin-promocodes'
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              items:
                items:
                  $ref: >-
                    #/components/schemas/Promotions_200-get-promocode-promotion-model
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Die Liste der Promocodes wurde erfolgreich empfangen.
    Promotions_200-get-promotions:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-admin-promotions'
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              promotions:
                items:
                  $ref: '#/components/schemas/Promotions_200-get-promotion-model'
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Die Liste der Werbeaktionen wurde erfolgreich empfangen.
    Promotions_200-get-unique-catalog-offers:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-admin-unique-catalog-offers'
          schema:
            properties:
              active_promotions_count:
                $ref: '#/components/schemas/active_promotions_count'
              inactive_promotions_count:
                $ref: '#/components/schemas/inactive_promotions_count'
              items:
                items:
                  $ref: >-
                    #/components/schemas/Promotions_200-get-unique-catalog-offer-promotion-model
                type: array
              total_promotions_count:
                $ref: '#/components/schemas/total_promotions_count'
            type: object
      description: Die Liste der Gutscheine wurde erfolgreich abgerufen.
    Promotions_200-promo-code-canceled:
      content:
        application/json:
          examples:
            response:
              value:
                cart_id: cart_id
                is_free: false
                items:
                  - attributes: []
                    can_be_bought: true
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: false
                    limits:
                      per_user:
                        available: 3
                        recurrent_schedule:
                          interval_type: weekly
                          reset_next_date: 1746057600
                        total: 5
                    name: Xsolla Booster Mega
                    periods:
                      - date_from: '2020-08-11T10:00:00+03:00'
                        date_until: '2020-08-11T20:00:00+03:00'
                    price:
                      amount: '50.0000000000000000'
                      amount_without_discount: '100.0000000000000000'
                      currency: USD
                    promotions:
                      - bonus:
                          - image_url: >-
                              https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png
                            name: Xsolla Minigun
                            quantity: 1
                            sku: com.xsolla.minigun_1
                            type: virtual_good
                        date_end: '2026-04-15T16:16:00+03:00'
                        date_start: '2020-04-15T16:16:00+03:00'
                        discount:
                          percent: '50.00'
                        name: Bonus promotion
                    quantity: 123
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
                    vp_rewards:
                      - amount: 130
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        item_id: 175232
                        name: Value point
                        sku: com.xsolla.value_point_1
                      - amount: 50
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        is_clan: true
                        item_id: 186321
                        name: Clan Reward VP 1
                        sku: com.xsolla.clan_value_point_1
                price:
                  amount: '6150.0000000000000000'
                  amount_without_discount: '6150.0000000000000000'
                  currency: USD
          schema:
            properties:
              cart_id:
                description: Warenkorb-ID.
                example: cart_id
                type: string
              is_free:
                $ref: '#/components/schemas/value-is_free'
              items:
                example:
                  - attributes: []
                    can_be_bought: true
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: false
                    limits:
                      per_user:
                        available: 3
                        recurrent_schedule:
                          interval_type: weekly
                          reset_next_date: 1746057600
                        total: 5
                    name: Xsolla Booster Mega
                    periods:
                      - date_from: '2020-08-11T10:00:00+03:00'
                        date_until: '2020-08-11T20:00:00+03:00'
                    price:
                      amount: '50.0000000000000000'
                      amount_without_discount: '100.0000000000000000'
                      currency: USD
                    promotions:
                      - bonus:
                          - image_url: >-
                              https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png
                            name: Xsolla Minigun
                            quantity: 1
                            sku: com.xsolla.minigun_1
                            type: virtual_good
                        date_end: '2026-04-15T16:16:00+03:00'
                        date_start: '2020-04-15T16:16:00+03:00'
                        discount:
                          percent: '50.00'
                        name: Bonus promotion
                    quantity: 123
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
                    vp_rewards:
                      - amount: 130
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        item_id: 175232
                        name: Value point
                        sku: com.xsolla.value_point_1
                      - amount: 50
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        is_clan: true
                        item_id: 186321
                        name: Clan Reward VP 1
                        sku: com.xsolla.clan_value_point_1
                items:
                  properties:
                    attributes:
                      $ref: '#/components/schemas/client-attributes'
                    can_be_bought:
                      $ref: '#/components/schemas/Can_be_bought'
                    description:
                      type: string
                    groups:
                      items:
                        properties:
                          external_id:
                            type: string
                          name:
                            type: string
                        type: object
                      type: array
                    image_url:
                      type: string
                    is_free:
                      $ref: '#/components/schemas/value-is_free'
                    limits:
                      $ref: '#/components/schemas/Catalog_item_limits'
                    name:
                      nullable: true
                      type: string
                    periods:
                      $ref: '#/components/schemas/item-periods'
                    price:
                      description: Artikelpreise.
                      nullable: true
                      properties:
                        amount:
                          description: Reduzierter Artikelpreis.
                          example: '2.9900'
                          type: string
                        amount_without_discount:
                          description: Artikelpreis.
                          example: '2.9900'
                          type: string
                        currency:
                          description: >-
                            Währung des Artikelpreises. Dreistelliger Code pro
                            [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
                          example: USD
                          type: string
                      type: object
                    promotions:
                      $ref: '#/components/schemas/Catalog_item_promotions'
                    quantity:
                      type: integer
                    sku:
                      type: string
                    type:
                      type: string
                    virtual_item_type:
                      description: Art des virtuellen Gegenstands.
                      enum:
                        - consumable
                        - non_consumable
                        - non_renewing_subscription
                      example: non-consumable
                      type: string
                      x-enumDescriptions:
                        consumable: "Ein Artikel, der nach Gebrauch aus dem Inventar verschwindet (z.\_B. Munition)."
                        non_consumable: >-
                          Ein Artikel, der für unbegrenzte Zeit im Inventar
                          verbleibt.
                        non_renewing_subscription: >-
                          Zeitlich begrenzter Artikel, der den Zugang zu
                          Diensten oder Inhalten für einen begrenzten Zeitraum
                          ermöglicht.
                    virtual_prices:
                      type: array
                    vp_rewards:
                      $ref: '#/components/schemas/client-item-value-point-reward'
                  type: object
                type: array
              price:
                description: Warenkorbpreis.
                example:
                  amount: '6150.0000000000000000'
                  amount_without_discount: '6150.0000000000000000'
                  currency: USD
                nullable: true
                properties:
                  amount:
                    default: '50.0000000000000000'
                    type: string
                  amount_without_discount:
                    default: '100.0000000000000000'
                    type: string
                  currency:
                    default: USD
                    type: string
                type: object
            type: object
      description: Promocode wurde erfolgreich storniert.
    Promotions_200-promo-code-redeemed:
      content:
        application/json:
          examples:
            response:
              value:
                cart_id: cart_id
                is_free: false
                items:
                  - attributes: []
                    can_be_bought: true
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: false
                    limits:
                      per_user:
                        available: 3
                        recurrent_schedule:
                          interval_type: weekly
                          reset_next_date: 1746057600
                        total: 5
                    name: Xsolla Booster Mega
                    periods:
                      - date_from: '2020-08-11T10:00:00+03:00'
                        date_until: '2020-08-11T20:00:00+03:00'
                    price:
                      amount: '50.0000000000000000'
                      amount_without_discount: '100.0000000000000000'
                      currency: USD
                    promotions:
                      - bonus:
                          - image_url: >-
                              https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png
                            name: Xsolla Minigun
                            quantity: 1
                            sku: com.xsolla.minigun_1
                            type: virtual_good
                        date_end: '2026-04-15T16:16:00+03:00'
                        date_start: '2020-04-15T16:16:00+03:00'
                        discount:
                          percent: '50.00'
                        name: Bonus promotion
                    quantity: 123
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
                    vp_rewards:
                      - amount: 130
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        is_clan: false
                        item_id: 175232
                        name: Value point
                        sku: com.xsolla.value_point_1
                      - amount: 50
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        is_clan: true
                        item_id: 186321
                        name: Clan Reward VP 1
                        sku: com.xsolla.clan_value_point_1
                  - attributes: []
                    can_be_bought: true
                    description: >-
                      Honshu Boshin Wakizashi - Modern Tactical Samurai / Ninja
                      Sword - Hand Forged 1060 Carbon Steel - Full Tang, Fully
                      Functional, Battle Ready - Black TPR, Steel Guard and
                      Pommel.
                    groups: []
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: true
                    limits:
                      per_user:
                        available: 3
                        recurrent_schedule:
                          interval_type: weekly
                          reset_next_date: 1746057600
                        total: 5
                    name: Sword Xsolla Skin
                    periods:
                      - date_from: '2020-08-11T10:00:00+03:00'
                        date_until: '2020-08-11T20:00:00+03:00'
                    price: []
                    promotions:
                      - bonus:
                          - image_url: >-
                              https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png
                            name: Xsolla Minigun
                            quantity: 1
                            sku: com.xsolla.minigun_1
                            type: virtual_good
                        date_end: '2026-04-15T16:16:00+03:00'
                        date_start: '2020-04-15T16:16:00+03:00'
                        discount:
                          percent: '50.00'
                        name: Bonus promotion
                    quantity: 1
                    sku: com.xsolla.swords_1
                    type: virtual_good
                    virtual_item_type: non_consumable
                    virtual_prices: []
                    vp_rewards:
                      - amount: 130
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        item_id: 175232
                        name: Value point
                        sku: com.xsolla.value_point_1
                      - amount: 50
                        image_url: >-
                          https://cdn3.xsolla.com/img/misc/images/54c0cf9d345817cdacfdde198db178e0.jpg
                        is_clan: true
                        item_id: 186321
                        name: Clan Reward VP 1
                        sku: com.xsolla.clan_value_point_1
                price:
                  amount: '6150.0000000000000000'
                  amount_without_discount: '12300.0000000000000000'
                  currency: USD
                rewards:
                  bonus:
                    - item:
                        description: >-
                          Honshu Boshin Wakizashi - Modern Tactical Samurai /
                          Ninja Sword - Hand Forged 1060 Carbon Steel - Full
                          Tang, Fully Functional, Battle Ready - Black TPR,
                          Steel Guard and Pommel.
                        image_url: >-
                          https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                        name: Sword Xsolla Skin
                        sku: com.xsolla.swords_1
                        type: virtual_good
                        virtual_item_type: non_consumable
                      quantity: 1
                  discount:
                    percent: null
                  discounted_items:
                    - discount:
                        percent: '50.00'
                      sku: com.xsolla.booster_mega_1
                  is_selectable: false
          schema:
            properties:
              cart_id:
                description: Warenkorb-ID.
                example: cart_id
                type: string
              is_free:
                $ref: '#/components/schemas/value-is_free'
              items:
                example:
                  - attributes: []
                    can_be_bought:
                      $ref: ../schemas/Can_be_bought.yaml
                    description: >-
                      Take it, take it all! All of Xsolla's riches in one Mega
                      Booster.
                    groups:
                      - external_id: powerups
                        name: Power Ups
                    image_url: >-
                      https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png
                    is_free: false
                    limits:
                      $ref: ../schemas/Catalog_item_limits.yaml
                    name: Xsolla Booster Mega
                    periods:
                      $ref: ../schemas/item-periods.yaml
                    price:
                      amount: '50.0000000000000000'
                      amount_without_discount: '100.0000000000000000'
                      currency: USD
                    promotions:
                      $ref: ../schemas/Catalog_item_promotions.yaml
                    quantity: 123
                    sku: com.xsolla.booster_mega_1
                    type: virtual_good
                    virtual_item_type: consumable
                    virtual_prices: []
                    vp_rewards:
                      $ref: >-
                        ../schemas/reward-chain-client/client-item-value-point-reward.yaml
                items:
                  properties:
                    can_be_bought:
                      $ref: '#/components/schemas/Can_be_bought'
                    description:
                      type: string
                    groups:
                      items:
                        properties:
                          external_id:
                            type: string
                          name:
                            type: string
                        type: object
                      type: array
                    image_url:
                      type: string
                    is_free:
                      $ref: '#/components/schemas/value-is_free'
                    limits:
                      $ref: '#/components/schemas/Catalog_item_limits'
                    name:
                      nullable: true
                      type: string
                    periods:
                      $ref: '#/components/schemas/item-periods'
                    promotions:
                      $ref: '#/components/schemas/Catalog_item_promotions'
                    quantity:
                      type: integer
                    sku:
                      type: string
                    type:
                      type: string
                    vp_rewards:
                      $ref: '#/components/schemas/client-item-value-point-reward'
                  type: object
                type: array
              price:
                description: Warenkorbpreis.
                example:
                  amount: '6150.0000000000000000'
                  amount_without_discount: '6150.0000000000000000'
                  currency: USD
                nullable: true
                properties:
                  amount:
                    example: '50.0000000000000000'
                    type: string
                  amount_without_discount:
                    example: '100.0000000000000000'
                    type: string
                  currency:
                    example: USD
                    type: string
                type: object
              rewards:
                $ref: '#/components/schemas/Promo_code_rewards'
            type: object
      description: Promocode wurde erfolgreich eingelöst.
    Promotions_200-promocode-code-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-coupon-code-list'
          schema:
            properties:
              codes:
                items:
                  properties:
                    code:
                      $ref: '#/components/schemas/Promotions_coupon_code'
                  type: object
                type: array
              total_count:
                description: Gesamtzahl der Codes für einen Promocode.
                type: number
            type: object
      description: Die Liste der Codes für einen Promocode wurde erfolgreich empfangen.
    Promotions_200-promocode-rewards:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-get-promocode-rewards'
          schema:
            $ref: '#/components/schemas/Promo_code_rewards'
      description: Die Liste der Promocode-Prämien wurde erfolgreich empfangen.
    Promotions_200-unique-catalog-offer-code-list:
      content:
        application/json:
          examples:
            response:
              $ref: '#/components/examples/Promotions_200-coupon-code-list'
          schema:
            properties:
              codes:
                items:
                  properties:
                    code:
                      $ref: '#/components/schemas/Promotions_coupon_code'
                  type: object
                type: array
              total_count:
                description: Gesamtzahl der Codes für Katalogsonderangebote.
                type: number
            type: object
      description: >-
        Die Liste der Codes für ein Katalogsonderangebot wurde erfolgreich
        abgerufen.
    Promotions_200-verify-promo-code:
      content:
        application/json:
          examples:
            coupon info:
              value:
                code: WINTER2023
                rewards:
                  bonus:
                    - item:
                        description: Game description
                        image_url: >-
                          https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
                        name: Game name
                        sku: com.xsolla.game_1
                        type: unit
                        unit_items:
                          - drm_name: Steam
                            drm_sku: steam_key_1
                            is_free: false
                            name: Game name
                            sku: com.xsolla.game_key_01
                            type: game_key
                          - drm_name: Origin
                            drm_sku: origin_key_1
                            name: Game name
                            sku: com.xsolla.game_key_02
                            type: game_key
                      quantity: 1
                    - item:
                        description: Game description
                        image_url: >-
                          https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
                        name: Game name
                        sku: com.xsolla.game_2
                        type: unit
                        unit_items:
                          - drm_name: Steam
                            drm_sku: steam_key_1
                            name: Game name
                            sku: com.xsolla.game_key_01
                            type: game_key
                      quantity: 2
                  is_selectable: true
                type: coupon
            promocode info:
              value:
                code: SUMMER2023
                rewards:
                  bonus:
                    - item:
                        description: Game description
                        image_url: >-
                          https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
                        name: Game name
                        sku: com.xsolla.game_2
                        type: unit
                        unit_items:
                          - drm_name: Steam
                            drm_sku: steam_key_1
                            name: Game name
                            sku: com.xsolla.game_key_01
                            type: game_key
                      quantity: 2
                  discount:
                    percent: '10.00'
                  discounted_items:
                    - description: sword
                      discount:
                        percent: '10.00'
                      image_url: null
                      name: Elven sword
                      sku: com.xsolla.elven_sword_1
                      type: virtual_good
                  is_selectable: true
                type: promocode
          schema:
            properties:
              code:
                $ref: '#/components/schemas/Promotions_coupon_code'
              rewards:
                oneOf:
                  - $ref: '#/components/schemas/Coupon_rewards'
                  - $ref: '#/components/schemas/Promo_code_rewards_verify'
              type:
                description: 'Art des Codes: `promocode`/`coupon`.'
                type: string
            type: object
      description: Informationen zum Code.
    Promotions_201-coupon-promocode-code-created:
      content:
        application/json:
          examples:
            response:
              value:
                code: WINTER2021
          schema:
            properties:
              code:
                $ref: '#/components/schemas/Promotions_coupon_code'
            type: object
      description: Code wurde erfolgreich erstellt.
    Promotions_201-create-promotion:
      content:
        application/json:
          examples:
            response:
              value:
                promotion_id: 2384756
          schema:
            properties:
              promotion_id:
                description: >-
                  Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des
                  Projekts.
                type: integer
            type: object
      description: Werbeaktion wurde erfolgreich erstellt.
    Promotions_401-invalid-basic-auth:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1020
                errorMessage: '[0401-1020]: Error in Authentication method occurred'
                statusCode: 401
          schema:
            properties:
              errorCode:
                example: 1020
                type: integer
              errorMessage:
                example: '[0401-1020]: Error in Authentication method occurred'
                type: string
              statusCode:
                example: 401
                type: integer
            type: object
      description: >-
        Basisauthentifizierung nicht bestanden oder falsch. Prüfen Sie die
        Anmeldedaten und vergewissern Sie sich, dass Sie die
        Basisauthentifizierung verwenden.
    Promotions_401-invalid-client-auth:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1501
                errorMessage: '[0401-1501]: Authorization failed: Provide authorization'
                statusCode: 401
          schema:
            properties:
              errorCode:
                example: 1501
                type: integer
              errorMessage:
                example: '[0401-1501]: Authorization failed: Provide authorization'
                type: string
              statusCode:
                example: 401
                type: integer
            type: object
      description: Authentifizierung nicht bestanden oder falsch.
    Promotions_403-auth-header:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 0
                errorMessage: Authorization header not sent
                statusCode: 403
          schema:
            properties:
              errorCode:
                example: 0
                type: integer
              errorMessage:
                example: Authorization header not sent.
                type: string
              statusCode:
                example: 403
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Autorisierungs-Header nicht gesendet.
    Promotions_404-admin-coupon:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-9802]: Coupon not found'
                type: string
              statusCode:
                example: 404
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Gutschein nicht gefunden. Prüfen Sie, ob die `external_id` korrekt ist.
    Promotions_404-admin-promocode:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-9802]: Promocode not found'
                type: string
              statusCode:
                example: 404
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: >-
        Promocode nicht gefunden. Stellen Sie sicher, dass die `external_id`
        korrekt ist.
    Promotions_404-admin-promotion:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9502
                errorMessage: >-
                  [0401-9502]: Can not find promotion with ID = 111425 in
                  project 59080
                statusCode: 404
          schema:
            properties:
              errorCode:
                example: 9502
                type: integer
              errorMessage:
                example: >-
                  [0401-9502]: Can not find promotion with ID = 111425 in
                  project 59080
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: >-
        Werbeaktion nicht gefunden. Prüfen Sie, ob die `promotion_id` korrekt
        ist.
    Promotions_404-coupon:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-9807]: Enter valid coupon code.'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: Geben Sie einen gültigen Gutscheincode ein.
    Promotions_404-promo-code:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-9807]: Enter valid promo code.'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: Geben Sie einen gültigen Promocode ein.
    Promotions_404-verify-promo-code:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 9811
                type: integer
              errorMessage:
                example: '[0401-9811]: Code not found.'
                type: string
              statusCode:
                example: 404
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Code nicht gefunden. Prüfen Sie, ob der `code`-Wert korrekt ist.
    Promotions_422-activate-deactivate-promotion:
      content:
        application/json:
          examples:
            Error was occurred:
              $ref: '#/components/examples/422-activate-deactivate-promotion'
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-9505]: Error was occurred while promotion was being
                  updated
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: da145238620011eb8e24fe6913ff226a
                type: string
            type: object
      description: Ungültige Anfrage.
    Promotions_422-admin-promotion-error:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 9502
                type: integer
              errorMessage:
                example: >-
                  [0401-9502]: Error occurred while receiving the promotion from
                  the promotion service
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Fehler beim Empfangen der Werbeaktion vom Werbeaktionsdienst.
    Promotions_422-admin-promotion-missed-bonus-property:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `bonus` is
                  required
                statusCode: 422
                transactionId: x-x-x-x-transactionId-mock-x-x-x
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-1102]:  Unprocessable Entity. The property `bonus` is
                  required
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Ungültige Anfrage.
    Promotions_422-admin-promotion-missed-items-property:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `items` is
                  required
                statusCode: 422
                transactionId: x-x-x-x-transactionId-mock-x-x-x
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-1102]:  Unprocessable Entity. The property `items` is
                  required
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Ungültige Anfrage.
    Promotions_422-cancel-promo-code:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `id` is
                  required
                statusCode: 422
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-1102]: Unprocessable Entity. The property `id` is
                  required
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Ungültige Anfrage.
    Promotions_422-coupon-promocode-same-code-exists:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9803
                errorMessage: '[0401-9803]: The code already exists.'
                statusCode: 422
                transactionId: x-x-x-x-transactionId-mock-x-x-x
          schema:
            properties:
              errorCode:
                example: 9803
                type: integer
              errorMessage:
                example: '[0401-9803]: The code already exists.'
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Ungültige Anfrage. Der Code existiert bereits.
    Promotions_422-invalid-coupon:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `external_id`
                  is required
                statusCode: 422
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-1102]: Unprocessable Entity. The property `external_id`
                  is required
                type: string
              statusCode:
                example: 422
                type: integer
            type: object
      description: Ungültige Anfrage.
    Promotions_422-redeem-coupon:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 1102
                errorMessage: >-
                  [0401-1102]: Unprocessable Entity. The property `coupon_code`
                  is required
                statusCode: 422
          schema:
            properties:
              errorCode:
                example: 1102
                type: integer
              errorMessage:
                example: >-
                  [0401-1102]: Unprocessable Entity. The property `coupon_code`
                  is required
                type: string
              statusCode:
                example: 422
                type: integer
              transactionId:
                example: x-x-x-x-transactionId-mock-x-x-x
                type: string
            type: object
      description: Ungültige Anfrage.
    Promotions_422-rewards:
      content:
        application/json:
          schema:
            oneOf:
              - $ref: '#/components/schemas/Promotions_422_limit_error'
              - $ref: '#/components/schemas/Promotions_422_reglock_error'
      description: Ungültige Anfrage.
    Promotions_422-verify-promo-code:
      content:
        application/json:
          examples:
            code redemption limit:
              value:
                errorCode: 9804
                errorMessage: '[0401-9804]: You have reached the coupon redemption limit.'
                statusCode: 422
            regionally restricted:
              value:
                errorCode: 9808
                errorMessage: '[0401-9808]: Coupon is not available in your region.'
                statusCode: 422
          schema:
            properties:
              errorCode:
                type: integer
              errorMessage:
                type: string
              statusCode:
                type: integer
            type: object
      description: Ungültige Code-Aktion.
    Upsell-200-get-client-list:
      content:
        application/json:
          examples:
            response:
              value:
                has_more: true
                items:
                  - attributes:
                      - external_id: stack_size
                        name:
                          en: Quantity of items in the upsell set
                        values:
                          - external_id: size_e3364991f92e751689a68b96598a5a5a84010b85
                            value: '5'
                    can_be_bought: true
                    custom_attributes:
                      attr: value
                      purchased: 0
                    description: Big Rocket - description
                    groups:
                      - external_id: accessory
                        name:
                          en: accessory
                    image_url: >-
                      https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png
                    is_free: false
                    limits:
                      per_user:
                        available: 3
                        limit_exceeded_visibility: show
                        recurrent_schedule:
                          interval_type: weekly
                          reset_next_date: 1746057600
                        total: 5
                    name: Big Rocket
                    periods:
                      - date_from: '2020-08-11T10:00:00+03:00'
                        date_until: '2020-08-11T20:00:00+03:00'
                    price:
                      amount: '100.99'
                      amount_without_discount: '100.99'
                      currency: USD
                    promotions:
                      - bonus:
                          - image_url: >-
                              https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png
                            name: Xsolla Minigun
                            quantity: 1
                            sku: com.xsolla.minigun_1
                            type: virtual_good
                          - quantity: 1
                            sku: com.xsolla.phys_good_1
                            type: physical_good
                          - bundle_type: standard
                            image_url: >-
                              https://cdn.xsolla.net/img/misc/images/9676f06265375087e607cb79c5283688.png
                            name: Super Lootbox with items
                            quantity: 1
                            sku: com.xsolla.SuperLootboxBundle_1
                            type: bundle
                        date_end: '2026-04-15T16:16:00+03:00'
                        date_start: '2020-04-15T16:16:00+03:00'
                        discount: null
                        name: Bonus promotion
                    sku: com.xsolla.big_rocket_1
                    type: virtual_good
                    virtual_item_type: non_renewing_subscription
                    virtual_prices:
                      - amount: 100
                        amount_without_discount: 100
                        description: description
                        image_url: http://image.png
                        is_default: true
                        name: SHOTGUN FOR TRUE RAIDERS
                        sku: com.xsolla.vc_1
                        type: virtual_currency
                    vp_rewards: []
                  - attributes:
                      - external_id: stack_size
                        name:
                          en: Quantity of items in the upsell set
                        values:
                          - external_id: size_e3364991f92e751689a68b96598a5a5a84010b85
                            value: '5'
                      - external_id: rating
                        name:
                          en: Items rating
                        values:
                          - external_id: rating_e3364991f92e751689a68b96598a5a5a84010b85
                            value: '3.9'
                    can_be_bought: true
                    description: description
                    groups:
                      - external_id: hair
                        name:
                          en: hair
                    image_url: http://image.png
                    is_free: false
                    limits: null
                    name: SHOTGUN FOR TRUE RAIDERS
                    periods:
                      - date_from: '2020-08-11T20:00:00+03:00'
                        date_until: null
                    price:
                      amount: '101.0'
                      amount_without_discount: '101.0'
                      currency: USD
                    promotions: []
                    sku: com.xsolla.shotgun_raider_1
                    type: virtual_good
                    virtual_item_type: non_renewing_subscription
                    virtual_prices:
                      - amount: 100
                        amount_without_discount: 100
                        description: description
                        image_url: http://image.png
                        is_default: true
                        name: SHOTGUN FOR TRUE RAIDERS
                        sku: com.xsolla.vc_2
                        type: virtual_currency
                      - amount: 200
                        amount_without_discount: 200
                        description: description
                        image_url: http://image.png
                        is_default: false
                        name: SHOTGUN FOR TRUE RAIDERS
                        sku: com.xsolla.vc_3
                        type: virtual_currency
                    vp_rewards: []
                  - attributes: []
                    can_be_bought: true
                    description: description
                    groups: []
                    image_url: http://image.png
                    is_free: true
                    limits: null
                    name: SHOTGUN FOR TRUE RAIDERS
                    periods: []
                    price: null
                    promotions: []
                    sku: com.xsolla.shotgun_raider_2
                    type: virtual_good
                    virtual_item_type: non_renewing_subscription
                    virtual_prices: []
                    vp_rewards: []
          schema:
            $ref: '#/components/schemas/Upsell_item-list'
      description: Die Liste mit den Upselling-Artikeln wurde erfolgreich empfangen.
    Upsell-404-item-not-found:
      content:
        application/json:
          examples:
            response:
              value:
                errorCode: 9901
                errorMessage: '[0401-4001]: Items weren''t found: sku1, sku2'
                statusCode: 404
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-4001]: Items weren''t found: sku1, sku2'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: Artikel nicht gefunden.
    Upsell-422-invalid-request:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Upsell-422-invalid-request'
      description: Ungültige Anfrage.
    sellable-item-by-sku_404:
      content:
        application/json:
          schema:
            properties:
              errorCode:
                example: 4001
                type: integer
              errorMessage:
                example: '[0401-4001]: Item with sku = ''electric_shiel'' not found'
                type: string
              statusCode:
                example: 404
                type: integer
            type: object
      description: >-
        Artikel nicht gefunden. Stellen Sie sicher, dass die `project_id` und
        die `sku` korrekt sind.
  schemas:
    422-invalid-request:
      properties:
        errorCode:
          description: Fehlercode.
          example: 1102
          type: number
        errorMessage:
          description: Verständlich Fehlermeldung.
          example: >-
            [0401-1102]: Unprocessable Entity. The property `external_id` is
            required
          type: string
        statusCode:
          description: Antwortstatuscode.
          example: 422
          type: number
        transactionId:
          description: Eindeutige ID der Anfrage.
          example: da145238620011eb8e24fe6913ff226a
          type: string
      type: object
    422-rc-vp-invalid-request:
      properties:
        errorCode:
          example: 1102
          type: integer
        errorMessage:
          example: >-
            [0401-1102]: Unprocessable Entity. The property `property_name` is
            required
          type: string
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    Can_be_bought:
      description: Sofern `true`, kann der Nutzer einen Artikel kaufen.
      example: true
      type: boolean
    Catalog_item_limits:
      description: Artikelbeschränkungen.
      nullable: true
      properties:
        per_item:
          description: Artikelbeschränkungen für einen Artikel.
          nullable: true
          properties:
            available:
              description: Verbleibende Anzahl von Artikeln, die alle Nutzer kaufen können.
              example: 3
              type: integer
            total:
              description: Höchstzahl von Artikeln, die alle Nutzer kaufen können.
              example: 5
              type: integer
          type: object
        per_user:
          description: Artikelbeschränkungen für einen Nutzer.
          nullable: true
          properties:
            available:
              description: >-
                Verbleibende Anzahl von Artikeln, die der aktuelle Nutzer kaufen
                kann.
              example: 3
              type: integer
            limit_exceeded_visibility:
              $ref: '#/components/schemas/limit_exceeded_visibility'
            recurrent_schedule:
              description: >-
                Wiederkehrender Artikellimit-Aktualisierungszeitraums für einen
                Nutzer.
              properties:
                interval_type:
                  description: Typ des wiederkehrenden Aktualisierungszeitraums.
                  enum:
                    - daily
                    - weekly
                    - monthly
                    - hourly
                  type: string
                reset_next_date:
                  description: >-
                    Datum und Uhrzeit, zu dem die Limits zurückgesetzt werden
                    (Unix-Zeitstempel).
                  example: 1677553200
                  type: integer
              type: object
            total:
              description: Höchstzahl von Artikeln, die ein einzelner Nutzer kaufen kann.
              example: 5
              type: integer
          type: object
      type: object
    Catalog_item_promotions:
      description: >-
        Auf bestimmte Artikel im Warenkorb angewandte Werbeaktionen. Das array
        wird in den folgenden Fällen zurückgegeben:


        * Für einen bestimmten Artikel ist eine Rabattaktion konfiguriert.


        * Ein Promocode mit der Einstellung **Rabatt auf ausgewählte Artikel**
        ist angewandt.


        Werden keine Werbeaktionen auf Artikelebene angewandt, wird ein leeres
        Array zurückgegeben.
      items:
        properties:
          bonus:
            items:
              properties:
                bundle_type:
                  description: >-
                    Typ des im Bundle enthaltenen Bonusartikels. Nur verfügbar
                    für Bonusartikel vom Typ `bundle`.
                  enum:
                    - standard
                    - virtual_currency_package
                  type: string
                image_url:
                  description: >-
                    Bild-URL des Bonusartikels. Nicht verfügbar für Bonusartikel
                    vom Typ `physical_good`.
                  type: string
                name:
                  description: >-
                    Name des Bonusartikels. Nicht verfügbar für Bonusartikel vom
                    Typ `physical_good`.
                  type: string
                quantity:
                  type: integer
                sku:
                  type: string
                type:
                  description: Typ des Bonusartikels.
                  enum:
                    - virtual_good
                    - virtual_currency
                    - bundle
                    - physical_good
                    - game_key
                    - nft
                  type: string
              type: object
            type: array
          date_end:
            format: date-time
            nullable: true
            type: string
          date_start:
            format: date-time
            nullable: true
            type: string
          discount:
            nullable: true
            properties:
              percent:
                nullable: true
                type: string
              value:
                nullable: true
                type: string
            type: object
          limits:
            properties:
              per_user:
                properties:
                  available:
                    type: integer
                  total:
                    type: integer
                type: object
            type: object
          name:
            type: string
        type: object
      type: array
    Code-limit-promo-code:
      properties:
        code:
          $ref: '#/components/schemas/Promotions_coupon_code'
        per_code:
          properties:
            available:
              description: Wie oft ein Promocode noch eingelöst werden kann.
              type: integer
            reserved:
              description: Wie oft ein Promocode reserviert ist.
              type: integer
            total:
              description: Wie oft ein Promocode maximal eingelöst werden darf.
              type: integer
            used:
              description: Wie oft ein Promocode eingelöst wurde.
              type: integer
          type: object
      type: object
    Common_admin-image_url:
      description: Bild-URL.
      example: https://image.example.com
      type: string
    Coupon_rewards:
      properties:
        bonus:
          items:
            $ref: '#/components/schemas/Promotions_200-coupon-bonus-reward'
          type: array
        is_selectable:
          description: >-
            Ist `true` eingestellt, sollte der Nutzer vor dem Einlösen eines
            Gutscheins einen Bonus auswählen.
          type: boolean
      type: object
    Pagination_has-more:
      description: Dient als Indikator dafür, dass weitere Seiten vorhanden sind.
      example: true
      type: boolean
    Promo_code_rewards:
      properties:
        bonus:
          items:
            $ref: '#/components/schemas/Promotions_200-promo-code-bonus-reward'
          type: array
        discount:
          $ref: '#/components/schemas/Promotions_200-coupon-discount-reward'
        discounted_items:
          $ref: '#/components/schemas/Promotions_discounted_items'
        is_selectable:
          description: >-
            Ist `true` eingestellt, sollte der Nutzer vor dem Einlösen eines
            Promocodes den Bonus auswählen.
          type: boolean
      type: object
    Promo_code_rewards_verify:
      properties:
        bonus:
          items:
            $ref: '#/components/schemas/Promotions_200-promo-code-bonus-reward'
          type: array
        discount:
          $ref: '#/components/schemas/Promotions_200-coupon-discount-reward'
        discounted_items:
          $ref: '#/components/schemas/Promotions_discounted_items_verify'
        is_selectable:
          description: >-
            Ist `true` eingestellt, sollte der Nutzer vor dem Einlösen eines
            Promocodes den Bonus auswählen.
          type: boolean
      type: object
    Promotions_200-coupon-bonus-reward:
      properties:
        item:
          properties:
            bundle_type:
              description: >-
                Bündeltyp. Wird zurückgegeben, wenn der Artikeltyp ein Bündel
                ist.
              enum:
                - standard
                - virtual_currency_package
              type: string
            content:
              type: array
            description:
              description: Artikelbeschreibung.
              example: Game description
              nullable: true
              type: string
            image_url:
              description: Bild-URL.
              example: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              nullable: true
              type: string
            name:
              description: Artikelname.
              example:
                en: Game name
              type: object
            sku:
              description: >-
                Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
                Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
                enthalten.
              example: game_01
              type: string
            type:
              description: >-
                Artikeltyp:
                `virtual_good`/`virtual_currency`/`bundle`/`physical_good`/`unit`.
              example: unit
              type: string
            unit_items:
              description: >-
                Artikel vom Typ "Unit" enthalten alle Artikel in der Einheit. In
                den meisten Fällen sollte der Nutzer einen davon als
                Gutscheinbonus auswählen.
              items:
                properties:
                  drm_name:
                    description: DRM-Name.
                    example: Steam
                    type: string
                  drm_sku:
                    description: >-
                      Eindeutige DRM-ID. Die SKU darf nur lateinische Klein- und
                      Großbuchstaben, Ziffern, Punkte, Bindestriche und
                      Unterstriche enthalten.
                    example: steam
                    type: string
                  is_free:
                    type: boolean
                  name:
                    description: Artikelname.
                    example: Game name
                    type: string
                  sku:
                    description: >-
                      Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein-
                      und Großbuchstaben, Ziffern, Punkte, Bindestriche und
                      Unterstriche enthalten.
                    example: game_01
                    type: string
                  type:
                    description: 'Artikeltyp: `game_key`.'
                    example: game_key
                    type: string
                type: object
              type: array
          type: object
        quantity:
          default: 1
          description: Artikelmenge.
          type: number
      type: object
    Promotions_200-coupon-discount-reward:
      description: >-
        Prozentualer Rabatt.

        Der Preis des Warenkorbs wird um einen Wert verringert, der anhand
        dieses Prozentsatzes berechnet und dann auf zwei Dezimalstellen gerundet
        wird.
      nullable: true
      properties:
        percent:
          example: '10.00'
          type: string
      type: object
    Promotions_200-get-bonus-promotion-model:
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/promotion_user-attribute_conditions_model-get'
        bonus:
          items:
            description: >-
              Die Liste der Artikel, die einem Nutzer beim Kauf als Bonus
              gewährt werden.
            properties:
              quantity:
                default: 1
                description: Artikelmenge.
                type: number
              sku:
                default: elven_shield
                description: Artikel-SKU.
                type: string
            type: object
          nullable: true
          type: array
        condition:
          description: >-
            Die zu kaufenden Artikel, damit eine Werbeaktion greifen kann. Ist
            dieser Parameter auf `null` gestellt, greift die Werbeaktion bei
            allen Käufen innerhalb eines Projekts.
          items:
            properties:
              sku:
                default: elven_sword
                description: Artikel-SKU.
                type: string
            type: object
          nullable: true
          type: array
        excluded_promotions:
          $ref: '#/components/schemas/excluded_promotions'
        id:
          description: >-
            Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des
            Projekts.
          type: integer
        is_enabled:
          default: true
          type: boolean
        limits:
          $ref: '#/components/schemas/Promotions_promotion_limits_response'
        name:
          additionalProperties:
            type: string
          description: >-
            Name der Werbeaktion. Sollte Schlüssel-Wert-Paare enthalten,

            wobei der Schlüssel ein Gebietsschema im Format
            "^[a–z]{2}-[A–Z]{2}$" und der Wert ein String ist.
          example:
            de-DE: Sommersaison Bonus
            en-US: Summer season bonus
          type: object
        price_conditions:
          $ref: '#/components/schemas/price_conditions_bonus'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
      type: object
    Promotions_200-get-promocode-promotion-model:
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/promotion_user-attribute_conditions_model-get'
        bonus:
          $ref: '#/components/schemas/Promotions_coupon_bonus'
        discount:
          example:
            discount:
              percent: '10.99'
          nullable: true
          properties:
            percent:
              $ref: '#/components/schemas/Promotions_promotion_discount_percent'
          type: object
        discounted_items:
          $ref: '#/components/schemas/Promotions_discounted_items'
        excluded_promotions:
          $ref: '#/components/schemas/excluded_promotions'
        external_id:
          $ref: '#/components/schemas/Promotions_coupon-external_id'
        is_enabled:
          $ref: '#/components/schemas/Promotions_coupon-is_enabled'
        item_price_conditions:
          $ref: '#/components/schemas/item_price_conditions_promocode'
        name:
          $ref: '#/components/schemas/Promotions_coupon_name'
        price_conditions:
          $ref: '#/components/schemas/price_conditions_promocode'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
        redeem_code_limit:
          $ref: '#/components/schemas/Promotions_redeem_code_limit'
        redeem_total_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
        redeem_user_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
        total_limit_state:
          $ref: '#/components/schemas/Promotions_promocode_total_limit_state'
      type: object
    Promotions_200-get-promotion-model:
      properties:
        bonus:
          items:
            $ref: '#/components/schemas/Promotions_200-coupon-bonus-reward'
          type: array
        condition:
          $ref: '#/components/schemas/Promotions_promotion_condition'
        discount:
          example:
            discount:
              percent: '10.99'
          nullable: true
          properties:
            percent:
              $ref: '#/components/schemas/Promotions_promotion_discount_percent'
          type: object
        id:
          $ref: '#/components/schemas/Promotions_promotion_id'
        is_enabled:
          $ref: '#/components/schemas/Promotions_coupon-is_enabled'
        limits:
          $ref: '#/components/schemas/Promotions_promotion_limits_response'
        name:
          $ref: '#/components/schemas/Promotions_coupon_name'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
        type:
          $ref: '#/components/schemas/Promotions_promotion_type'
      type: object
    Promotions_200-get-unique-catalog-offer-promotion-model:
      properties:
        external_id:
          $ref: '#/components/schemas/Promotions_coupon-external_id'
        is_enabled:
          $ref: '#/components/schemas/Promotions_coupon-is_enabled'
        items:
          $ref: '#/components/schemas/Promotions_unique_catalog_offer_items'
        name:
          $ref: '#/components/schemas/Promotions_coupon_name'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
        redeem_code_limit:
          $ref: '#/components/schemas/Promotions_redeem_code_limit'
        redeem_total_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
        redeem_user_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
        total_limit_state:
          $ref: '#/components/schemas/Promotions_coupon_total_limit_state'
      type: object
    Promotions_200-promo-code-bonus-reward:
      properties:
        item:
          properties:
            description:
              description: Artikelbeschreibung.
              example: Game description
              type: string
            image_url:
              description: Bild-URL.
              example: >-
                https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
              type: string
            name:
              description: Artikelname.
              example: Game name
              type: string
            sku:
              description: >-
                Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
                Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
                enthalten.
              example: game_01
              type: string
            type:
              description: >-
                Artikeltyp:
                `virtual_good`/`virtual_currency`/`bundle`/`physical_good`/`unit`.
              example: unit
              type: string
            unit_items:
              description: >-
                Artikel vom Typ "Unit" enthalten alle Artikel in der Einheit. In
                den meisten Fällen sollte der Nutzer einen davon als
                Promocodebonus auswählen.
              items:
                properties:
                  drm_name:
                    description: DRM-Name.
                    example: Steam
                    type: string
                  drm_sku:
                    description: >-
                      Eindeutige DRM-ID. Die SKU darf nur lateinische Klein- und
                      Großbuchstaben, Ziffern, Punkte, Bindestriche und
                      Unterstriche enthalten.
                    example: steam
                    type: string
                  is_free:
                    $ref: '#/components/schemas/value-is_free'
                  name:
                    description: Artikelname.
                    example: Game name
                    type: string
                  sku:
                    description: >-
                      Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein-
                      und Großbuchstaben, Ziffern, Punkte, Bindestriche und
                      Unterstriche enthalten.
                    example: game_01
                    type: string
                  type:
                    description: 'Artikeltyp: `game_key`.'
                    example: game_key
                    type: string
                type: object
              type: array
          type: object
        quantity:
          default: 1
          description: Artikelmenge.
          type: number
      type: object
    Promotions_422_limit_error:
      description: Das Einlöselimit ist erreicht.
      example:
        errorCode: 9804
        errorMessage: '[0401-9804]: You have reached the coupon redemption limit.'
        statusCode: 422
      properties:
        errorCode:
          example: 9804
          type: integer
        errorMessage:
          example: '[0401-9804]: You have reached the coupon redemption limit.'
          type: string
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    Promotions_422_reglock_error:
      description: Gutschein ist in der Region des Nutzers nicht verfügbar.
      example:
        errorCode: 9804
        errorMessage: '[0401-9804]: You have reached the coupon redemption limit.'
        statusCode: 422
      properties:
        errorCode:
          example: 9808
          type: integer
        errorMessage:
          example: '[0401-9808]: Coupon is not available in your region.'
          type: string
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    Promotions_cart_item_discount:
      default: '10.00'
      description: |-
        Prozentualer Rabatt.

        Der Preis des Artikels im Warenkorb wird um einen Wert verringert,
        der anhand dieses Prozentsatzes berechnet und dann
        auf zwei Dezimalstellen gerundet wird.
      example: '10.00'
      nullable: false
      type: string
    Promotions_coupon-external_id:
      default: coupon_external_id
      description: >-
        Eindeutige Werbeaktions-ID. Die `external_id` darf nur lateinische
        Klein- und Großbuchstaben, Ziffern, Punkte, Bindestriche und
        Unterstriche enthalten.
      example: coupon_external_id
      type: string
    Promotions_coupon-generate-count:
      example: 10
      maximum: 100000
      minimum: 1
      type: integer
    Promotions_coupon-is_enabled:
      default: true
      type: boolean
    Promotions_coupon-redeem_total_limit:
      default: 10
      description: Begrenzt die Gesamtzahl der Gutscheine.
      example: 10
      nullable: true
      type: integer
    Promotions_coupon-redeem_user_limit:
      default: 10
      description: Begrenzt, wie oft ein einzelner Nutzer Gutscheine einlösen darf.
      example: 10
      nullable: true
      type: integer
    Promotions_coupon_bonus:
      items:
        description: >-
          Die Liste der Artikel, die einem Nutzer beim Kauf als Bonus gewährt
          werden.
        properties:
          quantity:
            default: 1
            description: Artikelmenge.
            type: number
          sku:
            default: elven_shield
            description: Artikel-SKU.
            type: string
        type: object
      nullable: true
      type: array
    Promotions_coupon_code:
      default: WINTER2021
      description: >-
        Eindeutiger Code, es wird zwischen Groß- und Kleinschreibung
        unterschieden. Enthält Buchstaben und Ziffern.
      example: WINTER2021
      maxLength: 128
      minLength: 1
      pattern: ^[a-zA-Z0-9]+$
      type: string
    Promotions_coupon_date_end:
      default: '2020-04-15T18:16:00+05:00'
      description: >-
        Datum, an dem Ihre Werbeaktion endet. Möglich ist `null`. Wenn für
        `date_end` der Wert `null` festgelegt ist, läuft die Werbeaktion
        zeitlich unbegrenzt.
      format: date-time
      nullable: true
      type: string
    Promotions_coupon_date_start:
      default: '2020-04-15T18:16:00+05:00'
      description: Datum, an dem Ihre Werbeaktion beginnt.
      format: date-time
      nullable: true
      type: string
    Promotions_coupon_name:
      additionalProperties:
        type: string
      default:
        de-DE: Gutscheintitel
        en-US: Coupon title
      description: >-
        Name der Werbeaktion. Sollte Schlüssel-Wert-Paare enthalten,

        wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}-[A–Z]{2}$"
        und der Wert ein String ist.
      example:
        de-DE: Gutscheintitel
        en-US: Coupon title
      type: object
    Promotions_coupon_total_limit_state:
      description: Limits für jeden eindeutigen Gutscheincode.
      nullable: true
      properties:
        available:
          description: Wie oft ein Gutschein noch eingelöst werden kann.
          example: 3
          type: integer
        reserved:
          description: Wie oft ein Gutschein reserviert wurde.
          example: 3
          type: integer
        used:
          description: Wie oft ein Gutschein eingelöst wurde.
          example: 5
          type: integer
      type: object
    Promotions_discounted_items:
      description: Liste der Artikel, die durch einen Promocode rabattiert werden.
      items:
        description: Rabatt für bestimmte Artikel im Warenkorb.
        minItems: 1
        properties:
          discount:
            nullable: false
            properties:
              percent:
                $ref: '#/components/schemas/Promotions_cart_item_discount'
            required:
              - percent
            type: object
          sku:
            default: elven_shield
            description: Artikel-SKU.
            type: string
        required:
          - sku
          - discount
        type: object
      nullable: true
      type: array
    Promotions_discounted_items_verify:
      description: Liste der Artikel, die durch einen Promocode rabattiert werden.
      items:
        description: Rabatt für bestimmte Artikel.
        properties:
          description:
            description: Artikelbeschreibung.
            example: Game description
            type: string
          discount:
            nullable: false
            properties:
              percent:
                $ref: '#/components/schemas/Promotions_cart_item_discount'
            type: object
          image_url:
            description: Bild-URL.
            example: >-
              https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
            type: string
          name:
            description: Artikelname.
            example: Game name
            type: string
          sku:
            description: >-
              Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
              Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
              enthalten.
            example: game_01
            type: string
          type:
            description: >-
              Artikeltyp:
              `virtual_good`/`virtual_currency`/`bundle`/`physical_good`/`unit`.
            example: unit
            type: string
          unit_items:
            description: >-
              Artikel vom Typ "Unit" enthalten alle Artikel in der Einheit. In
              den meisten Fällen sollte der Nutzer einen davon als
              Promocodebonus auswählen.
            items:
              properties:
                drm_name:
                  description: DRM-Name.
                  example: Steam
                  type: string
                drm_sku:
                  description: >-
                    Eindeutige DRM-ID. Die SKU darf nur lateinische Klein- und
                    Großbuchstaben, Ziffern, Punkte, Bindestriche und
                    Unterstriche enthalten.
                  example: steam
                  type: string
                name:
                  description: Artikelname.
                  example: Game name
                  type: string
                sku:
                  description: >-
                    Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein-
                    und Großbuchstaben, Ziffern, Punkte, Bindestriche und
                    Unterstriche enthalten.
                  example: game_01
                  type: string
                type:
                  description: 'Artikeltyp: `game_key`.'
                  example: game_key
                  type: string
              type: object
            type: array
        type: object
      nullable: true
      type: array
    Promotions_is_enabled:
      description: Ob die Werbeaktion aktiviert ist oder nicht.
      example: true
      type: boolean
    Promotions_name:
      additionalProperties:
        type: string
      default:
        de-DE: Artikeltitel
        en-US: Item title
      description: >-
        Name des Artikels. Sollte Schlüssel-Wert-Paare enthalten,

        wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}-[A–Z]{2}$"
        und der Wert ein String ist.
      example:
        de-DE: Artikeltitel
        en-US: Item title
      type: object
    Promotions_promocode_total_limit_state:
      description: Limits für jeden einzelnen Promocode.
      nullable: true
      properties:
        available:
          description: Wie oft ein Promocode noch eingelöst werden kann.
          example: 3
          type: integer
        reserved:
          description: Die reservierte Nummer eines Promocodes.
          example: 3
          type: integer
        used:
          description: Wie oft ein Promocode eingelöst wurde.
          example: 5
          type: integer
      type: object
    Promotions_promotion_condition:
      items:
        description: Die Liste der Artikel, für die der Nutzer einen Bonus erhalten hat.
        properties:
          item:
            properties:
              description:
                description: Artikelbeschreibung.
                example: Game description
                nullable: true
                type: string
              external_id:
                description: >-
                  Externe ID der Werbeaktion. Eindeutige Werbeaktionskennung
                  innerhalb des Projekts.
                maxLength: 255
                minLength: 1
                pattern: ^[-_.\d\w]+$
                type: string
              image_url:
                description: Bild-URL.
                example: >-
                  https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png
                nullable: true
                type: string
              is_enabled:
                type: boolean
              name:
                $ref: '#/components/schemas/Promotions_name'
              redeem_code_limit:
                $ref: '#/components/schemas/Promotions_redeem_code_limit'
              redeem_total_limit:
                nullable: true
                type: integer
              redeem_user_limit:
                nullable: true
                type: integer
              sku:
                $ref: '#/components/schemas/Promotions_sku'
              type:
                $ref: '#/components/schemas/Promotions_type'
            type: object
        type: object
      nullable: true
      type: array
    Promotions_promotion_discount_percent:
      default: '10.00'
      description: >-
        Prozentualer Rabatt.

        Der Preis des Warenkorbs wird um einen Wert verringert, der anhand
        dieses Prozentsatzes berechnet und dann auf zwei Dezimalstellen gerundet
        wird.
      example: '10.00'
      nullable: true
      type: string
    Promotions_promotion_id:
      description: Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb des Projekts.
      example: 1
      type: integer
    Promotions_promotion_limits:
      description: Werbebeschränkungen.
      properties:
        per_user:
          description: Werbebeschränkungen für einen separaten Nutzer.
          nullable: true
          type: integer
        recurrent_schedule:
          $ref: '#/components/schemas/promotion_recurrent_schedule_response'
      type: object
    Promotions_promotion_limits_response:
      description: Werbebeschränkungen.
      properties:
        per_item:
          description: Globale Artikelbeschränkung.
          example: 10
          nullable: true
          type: integer
        per_user:
          description: Werbebeschränkungen für einen separaten Nutzer.
          nullable: true
          properties:
            total:
              description: >-
                Gesamtzahl der pro Nutzer erhältlichen Artikel. Sie können diese
                Nummer im Kundenportal festlegen oder Admin-Endpunkte für
                Store-Entitäten (Beschränkungsobjekt) verwenden.
              example: 5
              type: integer
          type: object
        recurrent_schedule:
          $ref: '#/components/schemas/promotion_recurrent_schedule_response'
      type: object
    Promotions_promotion_type:
      description: Werbeaktionstyp.
      example: item_discount
      type: string
    Promotions_redeem_code_limit:
      default: 10
      description: Anzahl der Einlösungen pro Code.
      example: 10
      nullable: true
      type: integer
    Promotions_selected_unit_items:
      additionalProperties:
        type: string
      description: >-
        Die von einem Nutzer ausgewählte Belohnung.

        Der Objektschlüssel ist eine SKU einer Einheit und der Wert ist eine SKU
        eines der Artikel in einer Einheit.
      example:
        game_1: game_1_steam
        game_2: game_2_playstation
      type: object
    Promotions_sku:
      description: >-
        Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
        Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
        enthalten.
      example: booster_mega_1
      type: string
    Promotions_type:
      description: >-
        Artikeltyp:
        `virtual_good`/`virtual_currency`/`bundle`/`physical_good`/`unit`.
      type: string
    Promotions_unique_catalog_offer_items:
      description: >-
        Eine Liste der Artikel-SKU, die nach Inanspruchnahme des
        Katalogsonderangebots verfügbar sind.
      items:
        $ref: '#/components/schemas/sku'
      type: array
    Upsell-422-invalid-request:
      properties:
        errorCode:
          example: 1102
          type: integer
        errorMessage:
          example: >-
            [0401-1102]: Unprocessable entity. The property `is_enabled` is
            required
          type: string
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    Upsell-model:
      description: Upselling-Typ.
      properties:
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        items:
          default: null
          description: Array mit Artikel-SKUs.
          example:
            - game_sku
          items:
            type: string
          type: array
        type:
          enum:
            - fixed_list
          example: true
          type: string
      required:
        - is_enabled
        - type
        - items
      type: object
    Upsell-model-not-fixed-list:
      description: Upselling-Typ.
      properties:
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        items:
          default: null
          description: Leeres Array mit Artikel-SKUs.
          example:
            - null
          items:
            type: string
          type: array
        type:
          enum:
            - most_sellable
            - only_promotions
          example: true
          type: string
      required:
        - is_enabled
        - type
      type: object
    Upsell_item:
      properties:
        attributes:
          $ref: '#/components/schemas/Virtual-Items-Currency_client-attributes'
        can_be_bought:
          $ref: '#/components/schemas/Can_be_bought'
        custom_attributes:
          $ref: '#/components/schemas/item-custom-attributes-response'
        description:
          description: Artikelbeschreibung.
          example: Big Rocket - description
          type: string
        groups:
          $ref: '#/components/schemas/Virtual-Items-Currency_admin-groups-response'
        image_url:
          description: Bild-URL.
          example: >-
            https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png
          type: string
        is_free:
          $ref: '#/components/schemas/value-is_free'
        limits:
          $ref: '#/components/schemas/Catalog_item_limits'
        name:
          description: Artikelname.
          example: Big Rocket
          type: string
        periods:
          $ref: '#/components/schemas/item-periods-response'
        price:
          description: Artikelpreise.
          nullable: true
          properties:
            amount:
              description: Reduzierter Artikelpreis.
              example: '100.99'
              type: string
            amount_without_discount:
              description: Artikelpreis.
              example: '100.99'
              type: string
            currency:
              description: >-
                Währung des Artikelpreises. Dreistelliger Code pro [ISO
                4217](https://en.wikipedia.org/wiki/ISO_4217).
              example: USD
              type: string
          type: object
        promotions:
          $ref: '#/components/schemas/Catalog_item_promotions'
        sku:
          description: >-
            Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
            Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
            enthalten.
          example: big_rocket
          type: string
        type:
          description: 'Artikeltyp: `virtual_good`/`virtual_currency`/`bundle`.'
          example: virtual_good
          type: string
        virtual_item_type:
          description: Art des virtuellen Gegenstands.
          enum:
            - consumable
            - non_consumable
            - non_renewing_subscription
          example: non-consumable
          type: string
          x-enumDescriptions:
            consumable: "Ein Artikel, der nach Gebrauch aus dem Inventar verschwindet (z.\_B. Munition)."
            non_consumable: Ein Artikel, der für unbegrenzte Zeit im Inventar verbleibt.
            non_renewing_subscription: >-
              Zeitlich begrenzter Artikel, der den Zugang zu Diensten oder
              Inhalten für einen begrenzten Zeitraum ermöglicht.
        virtual_prices:
          description: Virtuelle Preise.
          items:
            description: Virtueller Preis.
            properties:
              amount:
                description: Rabattierter Artikelpreis in virtueller Währung.
                example: 100
                type: integer
              amount_without_discount:
                description: Artikelpreis.
                example: 200
                type: integer
              description:
                description: Beschreibung der virtuellen Währung.
                example: Big Rocket - description
                type: string
              image_url:
                description: Bild der virtuellen Währung.
                example: http://image.png
                type: string
              is_default:
                description: Ob der Preis für den Artikel voreingestellt ist.
                example: true
                type: boolean
              name:
                description: Name der virtuellen Währung.
                example: SHOTGUN FOR TRUE RAIDERS
                type: string
              sku:
                description: Artikel-SKU der virtuellen Währung.
                example: vc_test
                type: string
              type:
                description: Art der virtuellen Währung.
                example: virtual_currency
                type: string
            type: object
          type: array
        vp_rewards:
          $ref: '#/components/schemas/client-item-value-point-reward'
      type: object
    Upsell_item-list:
      properties:
        has_more:
          $ref: '#/components/schemas/Pagination_has-more'
        items:
          items:
            $ref: '#/components/schemas/Upsell_item'
          type: array
      type: object
    User-limit-coupon:
      properties:
        per_user:
          properties:
            available:
              description: Wie oft ein Nutzer einen Gutschein noch in Anspruch nehmen kann.
              example: 9
              type: integer
            total:
              description: >-
                Wie oft ein Nutzer einen Gutschein maximal in Anspruch nehmen
                kann.
              example: 10
              type: integer
          type: object
      type: object
    User-limit-promo-code:
      properties:
        per_user:
          properties:
            available:
              description: Wie oft ein Nutzer einen Promocode noch in Anspruch nehmen kann.
              example: 9
              type: integer
            total:
              description: >-
                Wie oft ein Nutzer einen Promocode maximal in Anspruch nehmen
                kann.
              example: 10
              type: integer
          type: object
      type: object
    User-limit-promotion:
      properties:
        per_user:
          properties:
            available:
              description: >-
                Wie oft ein Nutzer eine Werbeaktion noch in Anspruch nehmen
                darf.
              example: 9
              type: integer
            total:
              description: >-
                Wie oft ein Nutzer eine Werbeaktion maximal in Anspruch nehmen
                darf.
              example: 10
              type: integer
          type: object
      type: object
    User-limit_available:
      description: >-
        Wie viele Artikel der Nutzer noch erhalten kann bzw. wie oft der Nutzer
        Werbeaktionen innerhalb des geltenden Limits noch in Anspruch nehmen
        darf.
      minimum: 1
      type: integer
    User-limit_available_flexible:
      description: >-
        Wie viele Artikel der Nutzer noch erhalten kann bzw. wie oft der Nutzer
        Werbeaktionen innerhalb des geltenden Limits noch in Anspruch nehmen
        darf.
      minimum: 0
      type: integer
    User-limit_user:
      properties:
        user_external_id:
          $ref: '#/components/schemas/User-limit_user-external-id'
      required:
        - user_external_id
      type: object
    User-limit_user-external-id:
      description: Externe Benutzer-ID.
      minLength: 1
      pattern: ^\S+$
      type: string
    User-limit_user_flexible:
      nullable: true
      properties:
        user_external_id:
          $ref: '#/components/schemas/User-limit_user-external-id'
      type: object
    Value-point-item-model:
      properties:
        can_delete:
          description: >-
            Ob ein Wertpunkt gelöscht werden kann. Wenn `false` festgelegt ist,
            können Sie den Wertpunkt nicht löschen, da er in einer oder mehreren
            Belohnungsketten verwendet wird. Um den Wertpunkt zu löschen, müssen
            Sie zunächst alle Belohnungsketten
            [löschen](https://developers.xsolla.com/de/api/shop-builder/operation/admin-delete-reward-chain/),
            in denen der Wertpunkt enthalten ist.


            Wenn `true` festgelegt ist, wird der Wertpunkt in keiner
            Belohnungskette verwendet und kann
            [gelöscht](https://developers.xsolla.com/de/api/shop-builder/operation/admin-delete-value-point/)
            werden.
          type: boolean
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          type: string
        is_clan:
          $ref: '#/components/schemas/is_clan'
        is_enabled:
          type: boolean
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        media_list:
          description: >-
            Zusätzliche Medieninhalte des Artikels wie Screenshots,
            Gameplay-Videos usw.
          example:
            - type: image
              url: >-
                https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
          items:
            properties:
              type:
                description: 'Medieninhaltstyp: `image`/`video`.'
                enum:
                  - image
                  - video
                example: image
                type: string
              url:
                description: Ressourcendatei.
                example: >-
                  https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
                type: string
            type: object
          type: array
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          description: Definiert die Anordnungsreihenfolge.
          example: 1
          type: integer
        sku:
          description: >-
            Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
            Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
            enthalten.
          example: booster_mega_1
          maxLength: 255
          minLength: 1
          pattern: ^[a-zA-Z0-9_\-–.]*$
          type: string
        type:
          description: Artikeltyp.
          type: string
      type: object
    Value-points-item-model:
      properties:
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          type: string
        is_clan:
          $ref: '#/components/schemas/is_clan'
        is_enabled:
          type: boolean
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        media_list:
          description: >-
            Zusätzliche Medieninhalte des Artikels wie Screenshots,
            Gameplay-Videos usw.
          example:
            - type: image
              url: >-
                https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
          items:
            properties:
              type:
                description: 'Medieninhaltstyp: `image`/`video`.'
                enum:
                  - image
                  - video
                example: image
                type: string
              url:
                description: Ressourcendatei.
                example: >-
                  https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
                type: string
            type: object
          type: array
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          description: Definiert die Anordnungsreihenfolge.
          example: 1
          type: integer
        sku:
          description: >-
            Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
            Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
            enthalten.
          example: booster_mega_1
          maxLength: 255
          minLength: 1
          pattern: ^[a-zA-Z0-9_\-–.]*$
          type: string
        type:
          description: Artikeltyp.
          type: string
      type: object
    Virtual-Items-Currency_admin-groups-response:
      default: []
      description: Gruppen, zu denen der Artikel gehört.
      example:
        - external_id: horror
          name:
            en: Horror
      items:
        properties:
          external_id:
            example: horror
            type: string
          name:
            additionalProperties:
              type: string
            default:
              en: Horror
            description: >-
              Name des Artikels. Sollte Schlüssel-Wert-Paare enthalten,

              wobei der Schlüssel ein Gebietsschema im Format "^[a–z]{2}" und
              der Wert ein String ist.
            example:
              de: Horror
              en: Horror
            type: object
        type: object
      type: array
    Virtual-Items-Currency_client-attributes:
      default: []
      description: >-
        Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind.
        Kann für die Katalogfilterung verwendet werden.
      example:
        value:
          external_id: genre
          name: Жанр
          values:
            - external_id: genre_e3364991f92e751689a68b96598a5a5a84010b85
              value: Casual
            - external_id: genre_eba07bfd0f982940773cba3744d97264dd58acd7
              value: Strategy
            - external_id: genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8
              value: Mobile
      items:
        properties:
          external_id:
            $ref: '#/components/schemas/admin-attribute-external_id'
          name:
            additionalProperties:
              nullable: true
              type: string
            description: Name des Attributs.
            example: Genre
            type: object
          values:
            items:
              properties:
                external_id:
                  $ref: '#/components/schemas/value-external_id'
                value:
                  description: Wert des Attributs.
                  example: Strategy
                  type: string
              type: object
            type: array
        type: object
      type: array
    active_promotions_count:
      description: Anzahl der aktiven Werbeaktionen.
      type: integer
    admin-attribute-external_id:
      description: >-
        Eindeutige Attribut-ID. Die `external_id` darf nur lateinische Klein-
        und Großbuchstaben, Ziffern, Bindestriche und Unterstriche enthalten.
      example: attribute_1
      maxLength: 255
      minLength: 1
      pattern: ^[a-zA-Z0-9-_]+$
      type: string
    admin-calendar-hard-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/calendar-hard-daily-chain-base'
        - description: >-
            Eine tägliche Belohnung vom Typ calendar_hard für
            verwaltungstechnische Antworten.
          properties:
            date_end:
              $ref: '#/components/schemas/daily_chain_date_end'
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/admin-daily-chain-step-model'
              type: array
          type: object
    admin-calendar-hard-daily-chain-short-model:
      allOf:
        - $ref: '#/components/schemas/calendar-hard-daily-chain-base'
        - description: Die tägliche Belohnung `calendar_hard` (Kurzversion).
          properties:
            date_end:
              $ref: '#/components/schemas/daily_chain_date_end'
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
          type: object
    admin-daily-chain-item-model:
      properties:
        description:
          $ref: '#/components/schemas/long-description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        item_id:
          $ref: '#/components/schemas/item_id'
        name:
          $ref: '#/components/schemas/two-letter-locale'
        quantity:
          description: Anzahl der Artikel.
          example: 1
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
        type:
          $ref: '#/components/schemas/item_type'
      type: object
    admin-daily-chain-long-model:
      discriminator:
        mapping:
          calendar_hard: '#/components/schemas/admin-calendar-hard-daily-chain-model'
          rolling_skippable: '#/components/schemas/admin-rolling-skippable-daily-chain-model'
          rolling_unskippable: '#/components/schemas/admin-rolling-unskippable-daily-chain-model'
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/admin-calendar-hard-daily-chain-model'
        - $ref: '#/components/schemas/admin-rolling-skippable-daily-chain-model'
        - $ref: '#/components/schemas/admin-rolling-unskippable-daily-chain-model'
    admin-daily-chain-short-model:
      discriminator:
        mapping:
          calendar_hard: '#/components/schemas/admin-calendar-hard-daily-chain-short-model'
          rolling_skippable: '#/components/schemas/admin-rolling-skippable-daily-chain-short-model'
          rolling_unskippable: >-
            #/components/schemas/admin-rolling-unskippable-daily-chain-short-model
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/admin-calendar-hard-daily-chain-short-model'
        - $ref: '#/components/schemas/admin-rolling-skippable-daily-chain-short-model'
        - $ref: >-
            #/components/schemas/admin-rolling-unskippable-daily-chain-short-model
    admin-daily-chain-step-model:
      description: Ein Belohnungsschritt.
      properties:
        items:
          items:
            $ref: '#/components/schemas/admin-daily-chain-item-model'
          type: array
        step_id:
          $ref: '#/components/schemas/daily_chain_step_id'
        step_number:
          $ref: '#/components/schemas/daily_chain_step_number'
      type: object
    admin-get-reward-chain-item-basic-model:
      description: Eine Belohnungskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-get'
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        is_reset_after_end:
          $ref: '#/components/schemas/is_reset_after_end'
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        periods:
          $ref: '#/components/schemas/periods'
        recurrent_schedule:
          $ref: '#/components/schemas/admin_recurrent_schedule'
        reward_chain_id:
          $ref: '#/components/schemas/reward_chain_id'
        value_point:
          properties:
            amount:
              $ref: '#/components/schemas/value-point-amount'
            description:
              $ref: '#/components/schemas/value-point-description'
            image_url:
              $ref: '#/components/schemas/Common_admin-image_url'
            is_clan:
              $ref: '#/components/schemas/is_clan'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            long_description:
              $ref: '#/components/schemas/value-point-long-description'
            media_list:
              $ref: '#/components/schemas/media_list'
            name:
              $ref: '#/components/schemas/value-point-name'
            order:
              $ref: '#/components/schemas/order'
            sku:
              $ref: '#/components/schemas/value-point-sku'
            type:
              example: value_point
              type: string
          type: object
      type: object
    admin-get-reward-chain-item-clan-basic-model:
      allOf:
        - $ref: '#/components/schemas/admin-get-reward-chain-item-basic-model'
        - description: Clan-Belohnungskette.
          properties:
            clan_type:
              $ref: '#/components/schemas/clan_type'
            popup_header:
              $ref: '#/components/schemas/popup_header-two-letter-locale'
            popup_image_url:
              $ref: '#/components/schemas/popup_image_url'
            popup_instruction:
              $ref: '#/components/schemas/popup_instruction-two-letter-locale'
            value_point:
              description: Ein für eine Clan-Belohnungskette konfigurierter Wertpunkt.
              properties:
                amount:
                  $ref: '#/components/schemas/value-point-amount'
                description:
                  $ref: '#/components/schemas/value-point-description'
                image_url:
                  $ref: '#/components/schemas/Common_admin-image_url'
                is_clan:
                  $ref: '#/components/schemas/is_clan'
                is_enabled:
                  $ref: '#/components/schemas/is_enabled'
                long_description:
                  $ref: '#/components/schemas/value-point-long-description'
                media_list:
                  $ref: '#/components/schemas/media_list'
                name:
                  $ref: '#/components/schemas/value-point-name'
                order:
                  $ref: '#/components/schemas/order'
                sku:
                  $ref: '#/components/schemas/value-point-sku'
                type:
                  example: value_point
                  type: string
              required:
                - sku
              type: object
          type: object
    admin-get-reward-chain-item-clan-full-model:
      allOf:
        - $ref: '#/components/schemas/admin-get-reward-chain-item-full-model'
        - description: Clan-Belohnungskette.
          properties:
            clan_type:
              $ref: '#/components/schemas/clan_type'
            popup_header:
              $ref: '#/components/schemas/popup_header-two-letter-locale'
            popup_image_url:
              $ref: '#/components/schemas/popup_image_url'
            popup_instruction:
              $ref: '#/components/schemas/popup_instruction-two-letter-locale'
            top_contributors:
              $ref: '#/components/schemas/top_contributors'
            value_point:
              description: Ein für eine Clan-Belohnungskette konfigurierter Wertpunkt.
              properties:
                description:
                  $ref: '#/components/schemas/description-localization-object'
                image_url:
                  $ref: '#/components/schemas/image_url'
                is_clan:
                  $ref: '#/components/schemas/is_clan'
                is_enabled:
                  $ref: '#/components/schemas/is_enabled'
                long_description:
                  $ref: '#/components/schemas/long-description-localization-object'
                media_list:
                  $ref: '#/components/schemas/media_list'
                name:
                  $ref: '#/components/schemas/name-localization-object'
                order:
                  $ref: '#/components/schemas/order'
                sku:
                  $ref: '#/components/schemas/sku'
                type:
                  type: string
              required:
                - sku
              type: object
          type: object
    admin-get-reward-chain-item-full-model:
      description: Eine Belohnungskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-get'
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        is_reset_after_end:
          $ref: '#/components/schemas/is_reset_after_end'
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        periods:
          $ref: '#/components/schemas/periods'
        recurrent_schedule:
          $ref: '#/components/schemas/admin_recurrent_schedule'
        reward_chain_id:
          $ref: '#/components/schemas/reward_chain_id'
        steps:
          items:
            $ref: '#/components/schemas/reward_step_short'
          type: array
        value_point:
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            image_url:
              $ref: '#/components/schemas/image_url'
            is_clan:
              $ref: '#/components/schemas/is_clan'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            long_description:
              $ref: '#/components/schemas/long-description-localization-object'
            media_list:
              $ref: '#/components/schemas/media_list'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            sku:
              $ref: '#/components/schemas/sku'
            type:
              type: string
          type: object
      type: object
    admin-item-value-point-reward:
      properties:
        amount:
          description: Anzahl der Wertpunkte.
          type: integer
        image_url:
          $ref: '#/components/schemas/Common_admin-image_url'
        item_id:
          $ref: '#/components/schemas/item_id'
        name:
          $ref: '#/components/schemas/name-localization-object'
        sku:
          $ref: '#/components/schemas/sku'
      type: object
    admin-offer-chain-item-model:
      properties:
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        is_free:
          $ref: '#/components/schemas/value-is_free'
        item_id:
          $ref: '#/components/schemas/item_id'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        quantity:
          description: Anzahl der Artikel.
          example: 1
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
        type:
          $ref: '#/components/schemas/item_type'
      type: object
    admin-offer-chain-long-model:
      description: Eine Angebotskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-get'
        date_end:
          $ref: '#/components/schemas/offer_chain_date_end'
        date_start:
          $ref: '#/components/schemas/offer_chain_date_start'
        description:
          $ref: '#/components/schemas/description-localization-object'
        id:
          $ref: '#/components/schemas/offer_chain_id'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        recurrent_schedule:
          $ref: '#/components/schemas/offer_chain_recurrent_schedule'
        steps:
          items:
            $ref: '#/components/schemas/admin-offer-chain-step-model'
          type: array
      type: object
    admin-offer-chain-short-model:
      description: Eine Angebotskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-get'
        date_end:
          $ref: '#/components/schemas/offer_chain_date_end'
        date_start:
          $ref: '#/components/schemas/offer_chain_date_start'
        description:
          $ref: '#/components/schemas/description-localization-object'
        id:
          $ref: '#/components/schemas/offer_chain_id'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        recurrent_schedule:
          $ref: '#/components/schemas/offer_chain_recurrent_schedule'
      type: object
    admin-offer-chain-step-model:
      description: Angebotskettenschritt.
      properties:
        is_free:
          $ref: '#/components/schemas/offer_chain_is_free'
        items:
          items:
            $ref: '#/components/schemas/admin-offer-chain-item-model'
          type: array
        step_id:
          $ref: '#/components/schemas/offer_chain_step_id'
        step_number:
          $ref: '#/components/schemas/offer_chain_step_number'
        step_price:
          $ref: '#/components/schemas/offer_chain_step_price'
      type: object
    admin-promotions_200-get-coupon-promotion-model:
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/promotion_user-attribute_conditions_model-get'
        bonus:
          $ref: '#/components/schemas/Promotions_coupon_bonus'
        external_id:
          $ref: '#/components/schemas/Promotions_coupon-external_id'
        is_enabled:
          $ref: '#/components/schemas/Promotions_coupon-is_enabled'
        name:
          $ref: '#/components/schemas/Promotions_coupon_name'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
        redeem_code_limit:
          $ref: '#/components/schemas/Promotions_redeem_code_limit'
        redeem_total_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
        redeem_user_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
        total_limit_state:
          $ref: '#/components/schemas/Promotions_coupon_total_limit_state'
      type: object
    admin-promotions_200-get-redeemable-coupon-promotion-model:
      properties:
        bonus:
          $ref: '#/components/schemas/Promotions_coupon_bonus'
        discount:
          description: Nur für Promocodes.
          example:
            discount:
              percent: '10.99'
          nullable: true
          properties:
            percent:
              default: '10.00'
              description: >-
                Prozentualer Rabatt.

                Der Preis des Warenkorbs wird um einen Wert verringert, der
                anhand dieses Prozentsatzes berechnet und dann auf zwei
                Dezimalstellen gerundet wird.
              example: '10.00'
              nullable: true
              type: string
          type: object
        discounted_items:
          description: >-
            Liste der Artikel, die durch einen Promocode rabattiert sind. Nur
            für Promocodes.
          items:
            description: Rabatt für bestimmte Artikel im Warenkorb.
            minItems: 1
            properties:
              discount:
                nullable: false
                properties:
                  percent:
                    $ref: '#/components/schemas/Promotions_cart_item_discount'
                required:
                  - percent
                type: object
              sku:
                default: elven_shield
                description: Artikel-SKU.
                type: string
            required:
              - sku
              - discount
            type: object
          nullable: true
          type: array
        external_id:
          $ref: '#/components/schemas/Promotions_coupon-external_id'
        is_enabled:
          $ref: '#/components/schemas/Promotions_coupon-is_enabled'
        name:
          $ref: '#/components/schemas/Promotions_coupon_name'
        promotion_periods:
          $ref: '#/components/schemas/promotion_periods'
        redeem_code_limit:
          $ref: '#/components/schemas/Promotions_redeem_code_limit'
        redeem_total_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_total_limit'
        redeem_user_limit:
          $ref: '#/components/schemas/Promotions_coupon-redeem_user_limit'
        total_limit_state:
          $ref: '#/components/schemas/Promotions_coupon_total_limit_state'
      type: object
    admin-rolling-skippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-skippable-daily-chain-base'
        - description: >-
            Eine tägliche Belohnung vom Typ rolling_skippable für
            verwaltungstechnische Antworten.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/admin-daily-chain-step-model'
              type: array
          type: object
    admin-rolling-skippable-daily-chain-short-model:
      allOf:
        - $ref: '#/components/schemas/rolling-skippable-daily-chain-base'
        - description: Eine tägliche Belohnung vom Typ `rolling_skippable` (Kurzversion).
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
          type: object
    admin-rolling-unskippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-unskippable-daily-chain-base'
        - description: >-
            Eine tägliche Belohnung vom Typ `rolling_unskippable` für
            verwaltungstechnische Antworten.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/admin-daily-chain-step-model'
              type: array
          type: object
    admin-rolling-unskippable-daily-chain-short-model:
      allOf:
        - $ref: '#/components/schemas/rolling-unskippable-daily-chain-base'
        - description: Eine tägliche Belohnung vom Typ `rolling_unskippable` (Kurzversion).
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            number_of_steps:
              $ref: '#/components/schemas/daily_chain_number_of_step'
            order:
              $ref: '#/components/schemas/order'
          type: object
    admin_recurrent_schedule:
      description: Wiederkehrender Reset-Zeitraum der Belohnungskette.
      nullable: true
      oneOf:
        - description: Belohnungskette wird wöchentlich zurückgesetzt.
          properties:
            day_of_week:
              $ref: '#/components/schemas/day_of_week'
            displayable_reset_next_date:
              $ref: '#/components/schemas/displayable_reset_next_date'
            displayable_reset_start_date:
              $ref: '#/components/schemas/displayable_reset_start_date'
            interval_type:
              $ref: '#/components/schemas/interval_type_weekly'
            reset_next_date:
              $ref: '#/components/schemas/reset_next_date'
            time:
              $ref: '#/components/schemas/time'
          title: interval_type = weekly
          type: object
        - description: Belohnungskette wird monatlich zurückgesetzt.
          properties:
            day_of_month:
              $ref: '#/components/schemas/day_of_month'
            displayable_reset_next_date:
              $ref: '#/components/schemas/displayable_reset_next_date'
            displayable_reset_start_date:
              $ref: '#/components/schemas/displayable_reset_start_date'
            interval_type:
              $ref: '#/components/schemas/interval_type_monthly'
            reset_next_date:
              $ref: '#/components/schemas/reset_next_date'
            time:
              $ref: '#/components/schemas/time'
          title: interval_type = monthly
          type: object
        - description: >-
            Die Belohnungskette wird gemäß dem in Stunden angegebenen
            Zeitintervall zurückgesetzt.
          properties:
            displayable_reset_next_date:
              $ref: '#/components/schemas/displayable_reset_next_date'
            displayable_reset_start_date:
              $ref: '#/components/schemas/displayable_reset_start_date'
            hours_interval:
              $ref: '#/components/schemas/reward_chain_hours_interval'
            interval_type:
              $ref: '#/components/schemas/interval_type_hourly_rc'
            reset_next_date:
              $ref: '#/components/schemas/reset_next_date'
            time:
              $ref: '#/components/schemas/time'
          title: 'interval_type = hourly '
          type: object
      type: object
    admin_value_points-create:
      properties:
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/Common_admin-image_url'
        is_clan:
          $ref: '#/components/schemas/is_clan'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        media_list:
          $ref: '#/components/schemas/media_list'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        sku:
          $ref: '#/components/schemas/sku'
      required:
        - sku
        - name
      type: object
    bundle_type:
      description: Bündeltyp. Wird zurückgegeben, wenn der Artikeltyp ein Bündel ist.
      enum:
        - standard
        - virtual_currency_package
        - partner_side_content
      type: string
    calendar-hard-daily-chain-base:
      description: >-
        Grundlegende Eigenschaften für tägliche Belohnungen vom Typ
        `calendar_hard`.
      properties:
        date_start:
          $ref: '#/components/schemas/calendar_hard_date_start'
        is_recurrent:
          $ref: '#/components/schemas/calendar_hard_is_recurrent'
        type:
          allOf:
            - $ref: '#/components/schemas/daily_chain_type'
            - enum:
                - calendar_hard
      type: object
    calendar_hard_date_start:
      description: Datum, an dem die tägliche Belohnung beginnt.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      type: string
    calendar_hard_is_recurrent:
      default: false
      description: >-
        Ob die tägliche Belohnung wiederkehrend ist. Ist `true` festgelegt, wird
        die tägliche Belohnung nach dem Enddatum automatisch zurückgesetzt. Das
        nächste `start_date` und `end_date` basiert auf der Anzahl der
        Belohnungsschritte und dem eingestellten Anfangszeitpunkt
        (`start_date`).
      example: true
      type: boolean
    chain_is_always_visible:
      default: true
      description: >-
        Ob die Kette für alle Nutzer sichtbar ist:
         * Wenn `true` festgelegt ist, wird die Kette immer angezeigt, unabhängig vom Authentifizierungsstatus oder den Attributen des Nutzers.
         * Wenn `false` festgelegt ist, wird die Kette nur dann angezeigt, wenn keine personalisierte Kette gefunden wird. Zum Beispiel, wenn der Nutzer nicht authentifiziert ist oder für seine Attribute keine personalisierte Kette vorliegt.

        Gilt nur im Rahmen personalisierter Ketten und kommt zum Einsatz, wenn
        das Array `attribute_conditions` nicht übermittelt wird.
      example: true
      type: boolean
    chain_user-attribute_conditions_model-get:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-get'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit der Kette basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    chain_user-attribute_conditions_model-post:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-post'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit der Kette basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    clan_type:
      description: Clan-Typ.
      enum:
        - clan
        - guild
        - faction
        - community
        - team
        - squad
        - alliance
        - association
        - coalition
        - union
        - group
        - civilizations
        - dynasty
        - order
        - league
        - brotherhood
        - kingdom
        - organization
        - house
        - empire
        - tribe
        - cartel
        - null
      nullable: true
      type: string
    client-attributes:
      default: []
      description: >-
        Liste der Attribute und ihrer Werte, die dem Artikel zugeordnet sind.
        Kann für die Katalogfilterung verwendet werden.
      example:
        value:
          external_id: genre
          name: Жанр
          values:
            - external_id: genre_e3364991f92e751689a68b96598a5a5a84010b85
              value: Casual
            - external_id: genre_eba07bfd0f982940773cba3744d97264dd58acd7
              value: Strategy
            - external_id: genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8
              value: Mobile
      items:
        properties:
          external_id:
            $ref: '#/components/schemas/admin-attribute-external_id'
          name:
            description: Name des Attributs.
            example: Genre
            type: string
          values:
            items:
              properties:
                external_id:
                  $ref: '#/components/schemas/value-external_id'
                value:
                  description: Wert des Attributs.
                  example: Strategy
                  type: string
              type: object
            type: array
        type: object
      type: array
    client-calendar-hard-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/calendar-hard-daily-chain-base'
        - description: Eine tägliche Belohnung vom Typ calendar_hard für Client-Antworten.
          properties:
            date_end:
              $ref: '#/components/schemas/daily_chain_date_end'
            description:
              description: Beschreibung der täglichen Belohnung.
              example: Major weekly quest
              nullable: true
              type: string
            id:
              description: ID der täglichen Belohnung.
              example: 9
              type: integer
            name:
              description: Name der täglichen Belohnung.
              example: Weekly quest
              type: string
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/client-daily-chain-step-model'
              type: array
          type: object
    client-daily-chain-item-model:
      properties:
        bundle_type:
          enum:
            - standard
            - virtual_currency_package
          nullable: true
          type: string
        content:
          items:
            $ref: '#/components/schemas/client-daily-chain-item-model'
          nullable: true
          type: array
        description:
          description: Artikelbeschreibung.
          nullable: true
          type: string
        image_url:
          $ref: '#/components/schemas/image_url'
        is_free:
          $ref: '#/components/schemas/value-is_free'
        item_id:
          $ref: '#/components/schemas/item_id'
        name:
          description: Artikelname.
          type: string
        quantity:
          description: Anzahl der Artikel.
          example: 1
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
        type:
          $ref: '#/components/schemas/item_type'
      type: object
    client-daily-chain-model:
      discriminator:
        mapping:
          calendar_hard: '#/components/schemas/client-calendar-hard-daily-chain-model'
          rolling_skippable: '#/components/schemas/client-rolling-skippable-daily-chain-model'
          rolling_unskippable: '#/components/schemas/client-rolling-unskippable-daily-chain-model'
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/client-calendar-hard-daily-chain-model'
        - $ref: '#/components/schemas/client-rolling-skippable-daily-chain-model'
        - $ref: '#/components/schemas/client-rolling-unskippable-daily-chain-model'
    client-daily-chain-step-model:
      description: Belohnungsschritt.
      properties:
        items:
          items:
            $ref: '#/components/schemas/client-daily-chain-item-model'
          type: array
        status:
          description: Definiert den aktuellen Anspruchsstatus des Schritts.
          enum:
            - claimed
            - claimable
            - blocked
            - claim_in_future
          example: claimed
          type: string
          x-enumDescriptions:
            blocked: |-
              Der Schritt kann nicht beansprucht:
                - Bei autorisierten Nutzern: Alle Schritte sind gesperrt.
                - Bei `calendar_hard`: Der Schritt wurde nicht beansprucht und liegt nun in der Vergangenheit.
                - Bei `rolling_skippable`: Der Schritt ist gesperrt, bis der vorherige Schritt beansprucht wird.
            claim_in_future: Der Schritt wurde nicht beansprucht und liegt in der Zukunft.
            claimable: Der Schritt kann beansprucht werden.
            claimed: Der Schritt wurde bereits beansprucht.
        step_number:
          $ref: '#/components/schemas/daily_chain_step_number'
        unlocked_date:
          description: Unix-Zeitstempel (in Sekunden), an dem der Schritt entsperrt wird.
          format: int64
          type: integer
      type: object
    client-item-value-point-reward:
      description: Wertpunktartikel-Belohnung.
      items:
        properties:
          amount:
            $ref: '#/components/schemas/value-point-amount'
          image_url:
            $ref: '#/components/schemas/Common_admin-image_url'
          is_clan:
            $ref: '#/components/schemas/is_clan'
          item_id:
            $ref: '#/components/schemas/item_id'
          name:
            $ref: '#/components/schemas/value-point-name'
          sku:
            $ref: '#/components/schemas/value-point-sku'
        type: object
      type: array
    client-offer-chain-item-model:
      properties:
        bundle_type:
          enum:
            - standard
            - virtual_currency_package
          nullable: true
          type: string
        content:
          items:
            $ref: '#/components/schemas/client-offer-chain-item-model'
          nullable: true
          type: array
        description:
          description: Artikelbeschreibung.
          nullable: true
          type: string
        image_url:
          $ref: '#/components/schemas/image_url'
        is_free:
          $ref: '#/components/schemas/value-is_free'
        item_id:
          $ref: '#/components/schemas/item_id'
        name:
          description: Artikelname.
          type: string
        order:
          $ref: '#/components/schemas/order'
        quantity:
          description: Anzahl der Artikel.
          example: 1
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
        type:
          $ref: '#/components/schemas/item_type'
      type: object
    client-offer-chain-model:
      description: Eine Angebotskette.
      properties:
        date_end:
          $ref: '#/components/schemas/offer_chain_date_end'
        date_start:
          $ref: '#/components/schemas/offer_chain_date_start'
        description:
          description: Angebotskettenbeschreibung.
          example: Major weekly quest
          nullable: true
          type: string
        id:
          description: Angebotsketten-ID.
          example: 9
          type: integer
        name:
          description: Angebotskettenname.
          example: Weekly quest
          type: string
        next_step_number:
          description: >-
            Nächste Angebotskettenschritt-Nummer. `null`, wenn die Angebotskette
            abgeschlossen ist.
          example: 1
          nullable: true
          type: integer
        order:
          $ref: '#/components/schemas/order'
        recurrent_schedule:
          $ref: '#/components/schemas/offer_chain_recurrent_schedule_client_side'
        steps:
          items:
            $ref: '#/components/schemas/client-offer-chain-step-model'
          type: array
      type: object
    client-offer-chain-step-model:
      description: Angebotskettenschritt.
      properties:
        is_claimed:
          description: Gibt an, ob die Schrittbelohnung beansprucht oder gekauft wurde.
          example: false
          type: boolean
        is_free:
          $ref: '#/components/schemas/offer_chain_is_free'
        items:
          items:
            $ref: '#/components/schemas/client-offer-chain-item-model'
          type: array
        step_loyalty_rewards:
          items:
            properties:
              amount:
                description: Anzahl der Treuepunkte.
                example: 1
                type: integer
              description:
                description: Treuepunktbeschreibung.
                example: First Loyalty Point Desc
                type: string
              image_url:
                $ref: '#/components/schemas/image_url'
              name:
                description: Treuepunktname.
                example: First Loyalty Point
                type: string
              sku:
                description: Treuepunkt-SKU.
                example: 0c745ef0-4243-46e1-aa90-54dee07da622
                type: string
            type: object
          nullable: true
          type: array
        step_number:
          $ref: '#/components/schemas/offer_chain_step_number'
        step_price:
          $ref: '#/components/schemas/offer_chain_step_price'
        step_vp_rewards:
          description: >-
            Eine Array von Wertpunkten aus dem Belohnungssystem, die als
            Belohnung gewährt werden.
          items:
            properties:
              amount:
                $ref: '#/components/schemas/value-point-amount'
              image_url:
                $ref: '#/components/schemas/Common_admin-image_url'
              is_clan:
                $ref: '#/components/schemas/is_clan'
              item_id:
                $ref: '#/components/schemas/item_id'
              name:
                $ref: '#/components/schemas/value-point-name'
              sku:
                $ref: '#/components/schemas/value-point-sku'
            type: object
          nullable: true
          type: array
      type: object
    client-reward-chain-item-model:
      properties:
        clan_type:
          $ref: '#/components/schemas/clan_type'
        date_end:
          $ref: '#/components/schemas/date_end'
        date_start:
          $ref: '#/components/schemas/date_start'
        description:
          description: Beschreibung der Belohnungskette.
          example: Major weekly quest
          nullable: true
          type: string
        image_url:
          $ref: '#/components/schemas/image_url'
        long_description:
          description: Lange Beschreibung der Belohnungskette.
          example: >-
            You can get a lot of additional items just by shopping during the
            week
          nullable: true
          type: string
        name:
          description: Name der Belohnungskette.
          example: Weekly quest
          type: string
        order:
          $ref: '#/components/schemas/order'
        popup_header:
          $ref: '#/components/schemas/popup_header-two-letter-locale'
        popup_image_url:
          $ref: '#/components/schemas/popup_image_url'
        popup_instruction:
          $ref: '#/components/schemas/popup_instruction-two-letter-locale'
        recurrent_schedule:
          $ref: '#/components/schemas/recurrent_schedule_client_side'
        reward_chain_id:
          description: Belohnungsketten-ID.
          example: 9
          type: integer
        steps:
          items:
            description: Belohnungskettenschritt.
            properties:
              image_url:
                $ref: '#/components/schemas/Common_admin-image_url'
              is_claimed:
                description: Ob die Schrittbelohnung in Anspruch genommen wurden ist.
                example: false
                type: boolean
              name:
                description: Schrittname.
                example: Level 1
                type: string
              price:
                properties:
                  amount:
                    description: >-
                      Wie viele Wertpunkte ein Nutzer benötigt, um den Schritt
                      abzuschließen.
                    example: 100
                    type: integer
                type: object
              reward:
                items:
                  properties:
                    description:
                      description: Artikelbeschreibung.
                      example: Super box with items
                      type: string
                    image_url:
                      $ref: '#/components/schemas/Common_admin-image_url'
                    name:
                      description: Artikelname.
                      example: Super box
                      type: string
                    quantity:
                      description: Artikelmenge.
                      example: 2
                      type: integer
                    sku:
                      $ref: '#/components/schemas/sku'
                    type:
                      description: Artikeltyp.
                      example: bundle
                      type: string
                  type: object
                type: array
              step_id:
                description: Schritt-ID.
                example: 10
                type: integer
            type: object
          type: array
        top_contributors:
          items:
            $ref: '#/components/schemas/top_contributors'
          type: array
        value_point:
          properties:
            amount:
              $ref: '#/components/schemas/value-point-amount'
            description:
              $ref: '#/components/schemas/value-point-description'
            image_url:
              $ref: '#/components/schemas/Common_admin-image_url'
            is_clan:
              $ref: '#/components/schemas/is_clan'
            long_description:
              $ref: '#/components/schemas/value-point-long-description'
            name:
              $ref: '#/components/schemas/value-point-name'
            sku:
              $ref: '#/components/schemas/value-point-sku'
          type: object
      type: object
    client-rolling-skippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-skippable-daily-chain-base'
        - description: >-
            Eine tägliche Belohnung vom Typ rolling_skippable für
            Client-Antworten.
          properties:
            description:
              description: Beschreibung der täglichen Belohnung.
              example: Major weekly quest
              nullable: true
              type: string
            id:
              description: ID der täglichen Belohnung.
              example: 9
              type: integer
            name:
              description: Name der täglichen Belohnung.
              example: Weekly quest
              type: string
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/client-daily-chain-step-model'
              type: array
          type: object
    client-rolling-unskippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-unskippable-daily-chain-base'
        - description: >-
            Eine tägliche Belohnung vom Typ `rolling_unskippable` für
            Client-Antworten.
          properties:
            description:
              description: Beschreibung der täglichen Belohnung.
              example: Major weekly quest
              nullable: true
              type: string
            id:
              description: ID der täglichen Belohnung.
              example: 9
              type: integer
            name:
              description: Name der täglichen Belohnung.
              example: Weekly quest
              type: string
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/client-daily-chain-step-model'
              type: array
          type: object
    create-calendar-hard-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/calendar-hard-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `calendar_hard`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/create-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    create-clan-reward-chain-model:
      allOf:
        - $ref: '#/components/schemas/create-reward-chain-model'
        - description: Clan-Belohnungskette.
          properties:
            clan_type:
              $ref: '#/components/schemas/clan_type'
            popup_header:
              $ref: '#/components/schemas/popup_header-two-letter-locale'
            popup_image_url:
              $ref: '#/components/schemas/popup_image_url'
            popup_instruction:
              $ref: '#/components/schemas/popup_instruction-two-letter-locale'
            value_point:
              description: Ein für eine Clan-Belohnungskette konfigurierter Wertpunkt.
              properties:
                sku:
                  $ref: '#/components/schemas/sku'
              required:
                - sku
              type: object
          required:
            - name
            - value_point
            - periods
            - steps
            - is_enabled
            - popup_header
            - popup_instruction
          type: object
    create-daily-chain-step-model:
      properties:
        items:
          items:
            $ref: '#/components/schemas/modify-daily-chain-item-model'
          minItems: 1
          type: array
        step_number:
          $ref: '#/components/schemas/daily_chain_step_number'
      required:
        - step_number
        - items
      type: object
    create-offer-chain-model:
      description: Eine Angebotskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-post'
        date_end:
          $ref: '#/components/schemas/offer_chain_date_end'
        date_start:
          $ref: '#/components/schemas/offer_chain_date_start'
        description:
          $ref: '#/components/schemas/description-localization-object'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        recurrent_schedule:
          $ref: '#/components/schemas/offer_chain_recurrent_schedule_create_update'
        steps:
          items:
            $ref: '#/components/schemas/create-offer-chain-step-model'
          type: array
      required:
        - name
        - date_start
        - steps
        - is_enabled
      type: object
    create-offer-chain-step-model:
      properties:
        is_free:
          $ref: '#/components/schemas/offer_chain_is_free'
        items:
          items:
            $ref: '#/components/schemas/modify-offer-chain-item-model'
          minItems: 1
          type: array
        step_number:
          $ref: '#/components/schemas/offer_chain_step_number'
      required:
        - step_number
        - is_free
        - items
      type: object
    create-reward-chain-model:
      description: Eine Belohnungskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-post'
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        is_reset_after_end:
          $ref: '#/components/schemas/is_reset_after_end'
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        periods:
          $ref: '#/components/schemas/periods'
        recurrent_schedule:
          $ref: '#/components/schemas/recurrent_schedule_create_update'
        steps:
          items:
            $ref: '#/components/schemas/create_reward_step'
          type: array
        value_point:
          properties:
            sku:
              $ref: '#/components/schemas/sku'
          required:
            - sku
          type: object
      required:
        - name
        - value_point
        - periods
        - steps
        - is_enabled
      type: object
    create-rolling-skippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-skippable-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `rolling_skippable`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/create-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    create-rolling-unskippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-unskippable-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `rolling_unskippable`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/create-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    create_reward_step:
      description: Belohnungskettenschritt.
      properties:
        image_url:
          $ref: '#/components/schemas/image_url'
        name:
          $ref: '#/components/schemas/name-localization-object'
        price:
          $ref: '#/components/schemas/reward_step_price'
        reward:
          items:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/reward-chain-step-reward_user-attribute_conditions_model-post
              quantity:
                $ref: '#/components/schemas/reward_item_quantity'
              sku:
                $ref: '#/components/schemas/sku'
            required:
              - sku
              - quantity
            type: object
          type: array
      required:
        - name
        - price
        - reward
      type: object
    daily-chain-error-model:
      properties:
        errorCode:
          example: 1102
          type: integer
        errorMessage:
          example: >-
            [0401-1102]: Unprocessable Entity. The property `property_name` is
            required
          type: string
        errorMessageExtended:
          nullable: true
          type: object
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    daily_chain_date_end:
      description: >-
        Datum, an dem die tägliche Belohnung endet. Möglich ist `null`. Ist der
        Typ `calendar_hard` festgelegt, wird das Datum automatisch anhand der
        hinzugefügten Schritte ermittelt, sodass Sie dieses Feld auf `null`
        belassen können.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      nullable: true
      type: string
    daily_chain_id:
      description: Eindeutige ID der täglichen Belohnung.
      example: 9
      type: integer
    daily_chain_number_of_step:
      description: >-
        Die im Rahmen der Belohnungskette festgelegte Anzahl der Schritte. Jeder
        Schritt steht hier für einen Tag.
      example: 3
      type: integer
    daily_chain_step_id:
      description: Eindeutige Kennung für den Belohnungsschritt
      example: 10
      minimum: 1
      nullable: true
      type: integer
    daily_chain_step_number:
      description: Schrittnummer.
      example: 2
      minimum: 1
      nullable: false
      type: integer
    daily_chain_type:
      description: >-
        Belohnungstyp, der festlegt, wann Nutzer Belohnungen beanspruchen
        können.
      enum:
        - calendar_hard
        - rolling_skippable
        - rolling_unskippable
      type: string
      x-enumDescriptions:
        calendar_hard: >-
          Schaltet alle 24 Stunden die nächste Schrittbelohnung frei. Nicht
          beanspruchte Schrittbelohnungen verfallen endgültig, sobald die
          nächste Schrittbelohnung verfügbar wird.
        rolling_skippable: >-
          Schaltet alle 24 Stunden die nächste Schrittbelohnung basierend auf
          dem `date_start` frei. Der Fortschritt erfolgt schrittweise: Eine neue
          Belohnung wird erst freigeschaltet, wenn die vorherige beansprucht
          wurde. Wenn ein Nutzer einen oder mehrere Tage auslässt, setzt er an
          der Stelle fort, an der er aufgehört hat; für ausgelassene Tage werden
          keine mehrfachen Belohnungen vergeben.
        rolling_unskippable: >-
          Schaltet alle 24 Stunden die nächste Schrittbelohnung basierend auf
          dem `date_start` frei. Der Fortschritt erfolgt schrittweise: Eine neue
          Belohnung wird erst freigeschaltet, wenn die vorherige beansprucht
          wurde. Wenn ein Nutzer jedoch einen Tag auslässt, wird der Fortschritt
          zurückgesetzt, und der Nutzer muss wieder beim ersten Schritt
          beginnen.
    daily_chain_update_step_id:
      description: >-
        Eindeutige Kennung des Belohnungsschritts. Geben Sie die ID während der
        Aktualisierung an, damit der Nutzerfortschritt für diesen Schritt nicht
        verloren geht.
      example: 10
      minimum: 1
      nullable: true
      type: integer
    daily_rolling_chain_date_start:
      description: >-
        Datum samt Uhrzeit, an dem die tägliche Belohnung beginnt. Dieser
        Zeitpunkt bestimmt auch den täglichen Reset-Zeitpunkt, zu dem Nutzer
        ihre Belohnung beanspruchen können.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      type: string
    date_end:
      description: >-
        Datum, an dem Ihre Belohungsketten-Aktion endet. Darf `null` sein. Ist
        für `date_end` der Wert `null` festgelegt, ist die Belohnungskette
        zeitlich unbegrenzt.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      nullable: true
      type: string
    date_start:
      description: Datum, an dem Ihre Belohnungskette beginnt.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      type: string
    day_of_month:
      description: >-
        Tag im Monat, an dem die Belohnungskette zurückgesetzt wird. Hat ein
        Monat weniger Tage als die angegebene Ordinalzahl, wird die
        Belohnungskette am letzten Tag des Monats zurückgesetzt.
      maximum: 31
      minimum: 1
      type: integer
    day_of_week:
      description: >-
        Wochentag, an dem die Belohnungskette zurückgesetzt wird, wobei "1" für
        Montag und "7" für Sonntag steht.
      maximum: 7
      minimum: 1
      type: integer
    description-localization-object:
      description: "Objekt mit Lokalisierungen für Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z.\_B. `en`) oder fünfstelliger Gebietsschemacode (z.\_B. `en-US`). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Optionen angegeben sind (z.\_B. `en` und `en-US`), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/)."
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/two-letter-locale'
        - $ref: '#/components/schemas/five-letter-locale'
      type: object
    displayable_reset_next_date:
      description: "Berechnetes Datum samt Uhrzeit, an dem die Belohnungskette das nächste Mal zurückgesetzt wird <a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">(ISO 8601)</a>.<br><br> Beispiel: Die Belohnungskette wird monatlich zurückgesetzt, beginnend ab dem 1. März 2024 um 01:00\_Uhr Kuala-Lumpur-Zeit. Das Datum samt Uhrzeit, an dem die Belohnungskette das nächste Mal zurückgesetzt wird, ist der 1. April 2024 um 01:00 Uhr Kuala-Lumpur-Zeit bzw. „2024-04-01T01:00:00+08:00“ gemäß <a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">ISO 8601</a>.<br><br> Beispiel: „2024-04-01T01:00:00+08:00“"
      format: date-time
      type: string
    displayable_reset_start_date:
      description: "Datum samt Uhrzeit, an dem die Belohnungskette zurückgesetzt wird.<br><br> Beispiel: Die Belohnungskette wird erstmalig am 1. März 2024 um 01:00\_Uhr Kuala-Lumpur-Zeit bzw. „2024-03-01T01:00:00+08:00“ gemäß <a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">ISO 8601</a> zurückgesetzt.<br><br> Beispiel: \"2024-03-01T01:00:00+08:00\""
      format: date-time
      type: string
    drm_name:
      description: DRM-Name des Spielschlüssels.
      example: Steam
      type: string
    drm_sku:
      description: Eindeutige DRM-ID.
      example: steam
      type: string
    excluded_promotions:
      description: >-
        Liste der IDs der Werbeaktionen, die bei der Anwendung dieser
        Werbeaktion ausgeschlossen werden sollen.<br> Example: `[12, 789]`
      example:
        - 12
        - 789
      items:
        type: integer
      type: array
    five-letter-locale:
      description: Fünfstellige Gebietsschemacodes.
      nullable: true
      properties:
        ar-AE:
          description: Arabisch
          nullable: true
          type: string
        bg-BG:
          description: Bulgarisch
          nullable: true
          type: string
        cs-CZ:
          description: Tschechisch
          nullable: true
          type: string
        de-DE:
          description: Deutsch
          nullable: true
          type: string
        en-US:
          description: Englisch
          nullable: true
          type: string
        es-ES:
          description: Spanisch (Spanien)
          nullable: true
          type: string
        fr-FR:
          description: Französisch
          nullable: true
          type: string
        he-IL:
          description: Hebräisch
          nullable: true
          type: string
        id-ID:
          description: Indonesisch
          nullable: true
          type: string
        it-IT:
          description: Italienisch
          nullable: true
          type: string
        ja-JP:
          description: Japanisch
          nullable: true
          type: string
        km-KH:
          description: Khmer
          nullable: true
          type: string
        ko-KR:
          description: Koreanisch
          nullable: true
          type: string
        lo-LA:
          description: Laotisch
          nullable: true
          type: string
        my-MM:
          description: Birmanisch
          nullable: true
          type: string
        ne-NP:
          description: Nepalesisch
          nullable: true
          type: string
        ph-PH:
          description: Filipino
          nullable: true
          type: string
        pl-PL:
          description: Polnisch
          nullable: true
          type: string
        pt-BR:
          description: Portugiesisch (Brasilien)
          nullable: true
          type: string
        ro-RO:
          description: Rumänisch
          nullable: true
          type: string
        ru-RU:
          description: Russisch
          nullable: true
          type: string
        th-TH:
          description: Thai
          nullable: true
          type: string
        tr-TR:
          description: Türkisch
          nullable: true
          type: string
        vi-VN:
          description: Vietnamesisch
          nullable: true
          type: string
        zh-CN:
          description: Chinesisch (vereinfacht)
          nullable: true
          type: string
        zh-TW:
          description: Chinesisch (traditionell)
          nullable: true
          type: string
      title: five-letter
      type: object
    image_url:
      description: Bild-URL.
      example: https://image.example.com
      nullable: true
      type: string
    inactive_promotions_count:
      description: Anzahl der deaktivierten Werbeaktionen.
      type: integer
    interval_type_hourly_rc:
      description: Wie oft die Belohnungskette zurückgesetzt wird.
      enum:
        - hourly
      type: string
    interval_type_monthly:
      description: Wie oft die Belohnungskette zurückgesetzt wird.
      enum:
        - monthly
      type: string
    interval_type_weekly:
      description: Wie oft die Belohnungskette zurückgesetzt wird.
      enum:
        - weekly
      type: string
    is_clan:
      description: Ob der Wertpunkt in Clan-Belohnungsketten verwendet wird.
      example: true
      type: boolean
    is_enabled:
      example: true
      type: boolean
    is_reset_after_end:
      default: false
      description: >-
        Ob die Belohnungskette (Wertpunkte und Fortschritt aller Nutzer) nach
        dem Enddatum zurückgesetzt wird:

        * Wenn `true` festgelegt ist, wird die Belohnungskette nach dem Enddatum
        zurückgesetzt.

        * Wenn `false` festgelegt ist, wird die Belohnungskette nach dem
        Enddatum nicht zurückgesetzt.


        <br>

        <div class="notice"><strong>Hinweis</strong><br><br>

        <code>true</code> ist nicht möglich, wenn: <br>

        <ul>
          <li>in <code>recurrent_schedule</code> ein Zeitraum für das Zurücksetzen angegeben ist.</li>
          <li>der Wert <code>null</code> im Parameter <code>periods.date_until</code> übermittelt wird.</li>
        </ul>

        </div>
      example: false
      type: boolean
    item-custom-attributes-response:
      description: Ein JSON-Objekt mit Artikelattributen und ‑werten.
      format: json
      type: object
    item-periods:
      description: Artikelangebotszeitraum.
      items:
        properties:
          date_from:
            description: Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.
            example: '2020-08-11T10:00:00+03:00'
            format: date-time
            type: string
          date_until:
            description: >-
              Datum, an dem der angegebene Artikel nicht mehr zum Verkauf
              angeboten wird. Möglich ist: `null`.
            example: '2020-08-11T20:00:00+03:00'
            format: date-time
            nullable: true
            type: string
        type: object
      nullable: true
      type: array
    item-periods-response:
      description: Artikelangebotszeitraum.
      items:
        properties:
          date_from:
            description: Datum, an dem der angegebene Artikel zum Verkauf angeboten wird.
            example: '2020-08-11T10:00:00+03:00'
            format: date-time
            nullable: true
            type: string
          date_until:
            description: >-
              Datum, an dem der angegebene Artikel nicht mehr zum Verkauf
              angeboten wird. Möglich ist: `null`.
            example: '2020-08-11T20:00:00+03:00'
            format: date-time
            nullable: true
            type: string
        type: object
      type: array
    item-value-point-reward-set:
      items:
        properties:
          amount:
            description: Anzahl der Wertpunkte.
            type: integer
          sku:
            $ref: '#/components/schemas/sku'
        required:
          - sku
          - amount
        type: object
      type: array
    item-value-point-reward-set-for-patch:
      items:
        maxItems: 100
        properties:
          amount:
            description: Anzahl der Wertpunkte.
            minimum: 0
            type: integer
          sku:
            $ref: '#/components/schemas/sku'
        required:
          - sku
          - amount
        type: object
      type: array
    item_id:
      description: Interne eindeutige Artikel-ID.
      example: 1
      type: integer
    item_price_conditions_promocode:
      description: >-
        Objekt-Array mit Bedingungen für die Preisspanne, innerhalb der die
        Werbeaktion auf bestimmte Artikel im Warenkorb angewandt wird.<br>

        Der Preis der einzelnen Artikel im Warenkorb des Nutzers wird mit der in
        der Bedingung angegebenen Preisspanne verglichen.
        [Boni](/de/api/shop-builder/operation/create-promo-code/#!path=bonus&t=request)
        und
        [Rabatte](/de/api/shop-builder/operation/create-promo-code/#!path=discount&t=request)
        werden nur auf die Artikel im Warenkorb angewendet, deren Preis die
        Bedingung erfüllt.<br>

        Wenn Sie dieses Array übermitteln, müssen Sie den Wert des Arrays
        [discounted_items](/de/api/shop-builder/operation/create-promo-code/#!path=discounted_items&t=request)
        auf `null` setzen.
      items:
        $ref: '#/components/schemas/price_conditions_items'
      nullable: true
      type: array
    item_type:
      description: 'Artikeltyp: `virtual_good`/`virtual_currency`/`bundle`/`unit`.'
      type: string
    limit_exceeded_visibility:
      default: show
      description: >-
        Steuert die Sichtbarkeit des Artikels im Katalog nach Erreichen des
        Kauflimits, und zwar bis das Limit das nächste Mal zurückgesetzt wird.


        Gilt für Artikel, bei denen im Array `recurrent_schedule` Limits
        konfiguriert sind, die regelmäßig zurückgesetzt werden.


        Ist keine Zurücksetzung konfiguriert, wird der Artikel nach Erreichen
        des Kauflimits nicht im Katalog angezeigt, unabhängig vom Wert des
        Parameters `limit_exceeded_visibility`.
      enum:
        - show
        - hide
      example: show
      type: string
      x-enumDescriptions:
        hide: >-
          Der Artikel wird nach Erreichen des Kauflimits in den API-Aufrufen zur
          Katalogabfrage nicht mehr zurückgegeben, bis das Limit zurückgesetzt
          ist.
        show: >-
          Der Artikel wird in API-Aufrufen zur Katalogabfrage zurückgegeben,
          nachdem das Kauflimit erreicht wurde.

          Bei clientseitigen API-Aufrufen zur Katalogabfrage wird der Artikel
          nach Erreichen des Limits mit dem Flag "can_be_bought: false"
          zurückgegeben.

          Das Datum, an dem die nächste Zurücksetzung erfolgt, wird in
          `reset_next_date` zurückgegeben.
    long-description-localization-object:
      anyOf:
        - $ref: '#/components/schemas/two-letter-locale'
        - $ref: '#/components/schemas/five-letter-locale'
      description: "Objekt mit Lokalisierungen für lange Artikelbeschreibungen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z.\_B. `en`) oder fünfstelliger Gebietsschemacode (z.\_B. `en-US`). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Varianten angegeben sind (z.\_B. `en` und `en-US`), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/)."
      nullable: true
      type: object
    media_list:
      description: >-
        Zusätzliche Medieninhalte des Artikels wie Screenshots, Gameplay-Videos
        usw.
      example:
        - type: image
          url: >-
            https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
      items:
        properties:
          type:
            description: 'Medieninhaltstyp: `image`/`video`.'
            enum:
              - image
              - video
            example: image
            type: string
          url:
            description: Ressourcendatei.
            example: >-
              https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg
            type: string
        type: object
      type: array
    modify-daily-chain-item-model:
      properties:
        quantity:
          description: Menge der täglichen Belohnung für diese SKU
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
      required:
        - sku
        - quantity
      type: object
    modify-daily-chain-step-model:
      properties:
        items:
          items:
            $ref: '#/components/schemas/modify-daily-chain-item-model'
          minItems: 1
          type: array
        step_id:
          $ref: '#/components/schemas/daily_chain_update_step_id'
        step_number:
          $ref: '#/components/schemas/daily_chain_step_number'
      required:
        - step_number
        - items
      type: object
    modify-offer-chain-item-model:
      properties:
        order:
          description: Belohnungsreihenfolge für den Angebotskettenschritt.
          minimum: 0
          nullable: true
          type: integer
        quantity:
          description: Menge der Belohnungsartikel für diesen Kettenschritt.
          minimum: 1
          type: integer
        sku:
          $ref: '#/components/schemas/sku'
      required:
        - sku
        - quantity
      type: object
    modify-offer-chain-model:
      description: Eine Angebotskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-post'
        date_end:
          $ref: '#/components/schemas/offer_chain_date_end'
        date_start:
          $ref: '#/components/schemas/offer_chain_date_start'
        description:
          $ref: '#/components/schemas/description-localization-object'
        id:
          $ref: '#/components/schemas/offer_chain_id'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        recurrent_schedule:
          $ref: '#/components/schemas/offer_chain_recurrent_schedule_create_update'
        steps:
          items:
            $ref: '#/components/schemas/modify-offer-chain-step-model'
          type: array
      required:
        - name
        - date_start
        - steps
        - is_enabled
      type: object
    modify-offer-chain-step-model:
      properties:
        is_free:
          $ref: '#/components/schemas/offer_chain_is_free'
        items:
          items:
            $ref: '#/components/schemas/modify-offer-chain-item-model'
          minItems: 1
          type: array
        step_id:
          $ref: '#/components/schemas/update_step_id'
        step_number:
          $ref: '#/components/schemas/offer_chain_step_number'
      required:
        - step_number
        - is_free
        - items
      type: object
    modify_reward_step:
      description: Belohnungskettenschritt.
      properties:
        image_url:
          $ref: '#/components/schemas/image_url'
        name:
          $ref: '#/components/schemas/name-localization-object'
        price:
          $ref: '#/components/schemas/reward_step_price'
        reward:
          items:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/reward-chain-step-reward_user-attribute_conditions_model-post
              quantity:
                $ref: '#/components/schemas/reward_item_quantity'
              sku:
                $ref: '#/components/schemas/sku'
            required:
              - sku
              - quantity
            type: object
          type: array
        step_id:
          $ref: '#/components/schemas/step_id'
      required:
        - name
        - price
        - reward
        - step_id
      type: object
    name-localization-object:
      description: "Objekt mit Lokalisierungen für Artikelnamen. Werte können in zwei Formaten angegeben werden: Sprachencode bestehend aus zwei Kleinbuchstaben (z.\_B. `en`) oder fünfstelliger Gebietsschemacode (z.\_B. `en-US`). Beide Formate werden als Eingabe akzeptiert, als Antwort werden jedoch stets zweistellige Sprachencodes in Kleinbuchstaben zurückgegeben. Wenn für dieselbe Sprache beide Optionen angegeben sind (z.\_B. `en` und `en-US`), wird der zuletzt angegebene Wert gespeichert. Die vollständige Liste der unterstützten Sprachen finden Sie in der [Dokumentation](/de/doc/shop-builder/references/supported-languages/)."
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/two-letter-locale'
        - $ref: '#/components/schemas/five-letter-locale'
      type: object
    offer-chain-error-model:
      properties:
        errorCode:
          example: 1102
          type: integer
        errorMessage:
          example: >-
            [0401-1102]: Unprocessable Entity. The property `property_name` is
            required
          type: string
        errorMessageExtended:
          nullable: true
          type: object
        statusCode:
          example: 422
          type: integer
        transactionId:
          example: x-x-x-x-transactionId-mock-x-x-x
          type: string
      type: object
    offer_chain_date_end:
      description: >-
        Datum, an dem die Angebotskette endet. Kann `null` sein. Wenn für
        `date_end` der Wert `null` festgelegt ist, ist die Angebotskette
        zeitlich unbegrenzt.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      nullable: true
      type: string
    offer_chain_date_start:
      description: Datum, an dem die Angebotskette beginnt.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      type: string
    offer_chain_day_of_month:
      description: >-
        Der Tag des Monats, an dem die Angebotskette zurückgesetzt wird. Wenn
        ein Monat weniger Tage als der angegebene Tag hat, erfolgt die
        Zurücksetzung am letzten Tag des Monats.
      maximum: 31
      minimum: 1
      type: integer
    offer_chain_day_of_week:
      description: >-
        Wochentag, an dem die Angebotskette zurückgesetzt wird, wobei `1` für
        Montag und `7` für Sonntag steht.
      maximum: 7
      minimum: 1
      type: integer
    offer_chain_displayable_reset_next_date:
      description: "Berechnetes Datum samt Uhrzeit (<a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">gemäß ISO 8601</a>), an dem die Angebotskette das nächste Mal zurückgesetzt wird. <br><br> Beispielsweise beginnt die Angebotskette am 1. März 2024 um 01:00\_Uhr malaysischer Zeit (Kuala Lumpur) und wird monatlich zurückgesetzt. Die erste Zurücksetzung erfolgt am 1. April 2024 um 01:00\_Uhr malaysischer Zeit (Kuala Lumpur), was`2024-04-01T01:00:00+08:00` im Format <a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">ISO 8601</a> entspricht. <br><br> Beispiel: `2024-04-01T01:00:00+08:00`"
      format: date-time
      type: string
    offer_chain_displayable_reset_start_date:
      description: "Datum samt Uhrzeit, an dem die Angebotskette erstmalig zurückgesetzt wird. <br><br> Beispielsweise entspricht die erste für den 1. März 2024 um 01:00\_Uhr malaysischer Zeit (Kuala Lumpur) geplante Zurücksetzung dem Wert `2024-03-01T01:00:00+08:00` im Format <a href=\"https://en.wikipedia.org/wiki/ISO_8601\" target=\"_blank\">ISO 8601</a>. <br><br> Beispiel: `2024-03-01T01:00:00+08:00`"
      format: date-time
      type: string
    offer_chain_hours_interval:
      description: >-
        Intervall in Stunden, nach dem die Angebotskette zurückgesetzt wird.
        <br><br> Der Countdown beginnt gemäß dem Parameter <a
        href="https://developers.xsolla.com/de/api/shop-builder/operation/admin-create-offer-chain/#!path=date_start&t=request">date_start</a>.
        <br><br> Sind beispielsweise `date_start = "2025-11-15T18:15:00+05:00"`
        und `hours_interval = 2`angegeben, wird die Angebotskette alle alle zwei
        Stunden ab dem `"2025-11-15T20:15:00+05:00"` zurückgesetzt.
      maximum: 10000
      minimum: 1
      type: integer
    offer_chain_id:
      description: Eindeutige Angebotsketten-ID.
      example: 9
      type: integer
    offer_chain_interval_type_hourly:
      description: Wie oft die Angebotskette zurückgesetzt wird.
      enum:
        - hourly
      type: string
    offer_chain_interval_type_monthly:
      description: Wie oft die Angebotskette zurückgesetzt wird.
      enum:
        - monthly
      type: string
    offer_chain_interval_type_weekly:
      description: Wie oft die Angebotskette zurückgesetzt wird.
      enum:
        - weekly
      type: string
    offer_chain_is_free:
      description: >-
        Gibt an, ob der Angebotskettenschritt kostenlos ist:<ul><li>
        Wenn<code>true</code> festgelegt ist, muss der Schritt mit dem Aufruf <a
        href="/api/shop-builder/operation/claim-user-offer-chain-step-reward">Kostenlosen
        Angebotskettenschritt sichern</a> in Anspruch genommen werden.</li><li>
        Wenn <code>false</code> festgelegt ist, muss er über den Aufruf <a
        href="/api/shop-builder/operation/order-user-offer-chain-step-reward">Bestellung
        für kostenpflichtigen Angebotskettenschritt anlegen</a> erworben
        werden.</li></ul>
      type: boolean
    offer_chain_recurrent_schedule:
      description: Wiederkehrender Reset-Zeitraum der Angebotskette.
      nullable: true
      oneOf:
        - description: Angebotskette wird wöchentlich zurückgesetzt.
          nullable: true
          properties:
            day_of_week:
              $ref: '#/components/schemas/offer_chain_day_of_week'
            displayable_reset_next_date:
              $ref: '#/components/schemas/offer_chain_displayable_reset_next_date'
            displayable_reset_start_date:
              $ref: '#/components/schemas/offer_chain_displayable_reset_start_date'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_weekly'
            reset_next_date:
              $ref: '#/components/schemas/offer_chain_reset_next_date'
            time:
              $ref: '#/components/schemas/offer_chain_time'
          title: interval_type = weekly
          type: object
        - description: Angebotskette wird monatlich zurückgesetzt.
          properties:
            day_of_month:
              $ref: '#/components/schemas/offer_chain_day_of_month'
            displayable_reset_next_date:
              $ref: '#/components/schemas/offer_chain_displayable_reset_next_date'
            displayable_reset_start_date:
              $ref: '#/components/schemas/offer_chain_displayable_reset_start_date'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_monthly'
            reset_next_date:
              $ref: '#/components/schemas/offer_chain_reset_next_date'
            time:
              $ref: '#/components/schemas/offer_chain_time'
          title: interval_type = monthly
          type: object
        - description: >-
            Die Angebotskette wird gemäß dem in Stunden angegebenen
            Zeitintervall zurückgesetzt.
          properties:
            hours_interval:
              $ref: '#/components/schemas/offer_chain_hours_interval'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_hourly'
          title: 'interval_type = hourly '
          type: object
      type: object
    offer_chain_recurrent_schedule_client_side:
      description: Reset-Zeitraum der Angebotskette.
      nullable: true
      properties:
        interval_type:
          description: Wie oft die Angebotskette zurückgesetzt wird.
          enum:
            - weekly
            - monthly
            - hourly
          type: string
        reset_next_date:
          $ref: '#/components/schemas/offer_chain_reset_next_date'
      type: object
    offer_chain_recurrent_schedule_create_update:
      description: Reset-Zeitraum der Angebotskette.
      nullable: true
      oneOf:
        - description: Angebotskette wird wöchentlich zurückgesetzt.
          nullable: true
          properties:
            day_of_week:
              $ref: '#/components/schemas/offer_chain_day_of_week'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_weekly'
            time:
              $ref: '#/components/schemas/offer_chain_time'
          required:
            - interval_type
            - time
            - day_of_week
          title: interval_type = weekly
          type: object
        - description: Angebotskette wird monatlich zurückgesetzt.
          properties:
            day_of_month:
              $ref: '#/components/schemas/offer_chain_day_of_month'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_monthly'
            time:
              $ref: '#/components/schemas/offer_chain_time'
          required:
            - interval_type
            - time
            - day_of_month
          title: interval_type = monthly
          type: object
        - description: >-
            Die Angebotskette wird gemäß dem in Stunden angegebenen
            Zeitintervall zurückgesetzt.
          properties:
            hours_interval:
              $ref: '#/components/schemas/offer_chain_hours_interval'
            interval_type:
              $ref: '#/components/schemas/offer_chain_interval_type_hourly'
          required:
            - interval_type
            - hours_interval
          title: 'interval_type = hourly '
          type: object
      type: object
    offer_chain_reset_next_date:
      description: "Berechnetes Datum samt Uhrzeit (als <a href=\"https://en.wikipedia.org/wiki/Unix_time\" target=\"_blank\">Unix-Zeitstempel</a>), an dem die Angebotskette das nächste Mal zurückgesetzt wird. <br><br> Beispielsweise beginnt die Angebotskette am 1. März 2024 um 01:00\_Uhr malaysischer Zeit (GMT+8) und wird monatlich zurückgesetzt. Die erste Zurücksetzung erfolgt am 1. April 2024 um 01:00\_Uhr malaysischer Zeit (GMT+8), was dem 31. März 2024 um 17:00\_Uhr (GMT+0) bzw. `1711904400000` (Unix-Zeitstempel) entspricht. <br><br> Beispiel: `1711904400000`"
      type: integer
    offer_chain_step_id:
      description: Eindeutige ID des Kettenschritts.
      example: 10
      minimum: 1
      nullable: true
      type: integer
    offer_chain_step_number:
      description: Schrittnummer.
      example: 2
      minimum: 1
      nullable: false
      type: integer
    offer_chain_step_price:
      nullable: true
      properties:
        amount:
          $ref: '#/components/schemas/offer_chain_step_price_amount'
        currency:
          $ref: '#/components/schemas/offer_chain_step_price_currency'
      required:
        - amount
        - currency
      type: object
    offer_chain_step_price_amount:
      description: Schrittpreis in echter Währung.
      example: 99.99
      type: number
    offer_chain_step_price_currency:
      description: >-
        Währung des Artikelpreises. Dreistelliger Code pro [ISO
        4217](https://en.wikipedia.org/wiki/ISO_4217).
      example: USD
      type: string
    offer_chain_time:
      description: "Der Zeitpunkt, zu dem die Angebotskette in der angegebenen Zeitzone zurückgesetzt wird (auf Stunden gerundet). <br><br> Beispielsweise erfolgt die Zurücksetzung um 01:00\_Uhr malaysischer Zeit (GMT+8); der Wert des Parameters `time` lautet in diesem Fall: `01:00:00+08:00`."
      example: 01:00:00+08:00
      pattern: ((0[0-9]|1[0-9]|2[0-3]):00:00)(\+|-)(0[0-9]|1[0-9]|2[0-3]):([0-5][0-9])
      type: string
    order:
      description: Definiert die Anordnungsreihenfolge.
      example: 1
      type: integer
    periods:
      description: >-
        Gültigkeitszeitraum der Belohnungskette. Wenn mehrere Zeiträume
        angegeben sind, sind sowohl `date_from` als auch `date_until`
        erforderlich.
      items:
        properties:
          date_from:
            description: Startdatum für die angegebene Belohnungskette.
            example: '2020-08-11T10:00:00+03:00'
            format: date-time
            nullable: false
            type: string
          date_until:
            description: >-
              Enddatum für die angegebene Belohnungskette. Kann nur dann `null`
              sein, wenn eine einziger Gültigkeitszeitraum angegeben ist.
            example: '2020-08-11T20:00:00+03:00'
            format: date-time
            nullable: true
            type: string
        required:
          - date_from
        type: object
      nullable: false
      type: array
    personalized-catalog_user-attribute_conditions_model-get:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-get'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Artikelverfügbarkeit im Katalog basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    personalized-catalog_user-attribute_conditions_model-post:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-post'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Artikelverfügbarkeit im Katalog basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    popup_header-two-letter-locale:
      description: >-
        Objekt mit lokalisierten Überschriften für das Tooltipp-Pop-up-Fenster
        einer Clan-Belohnungskette.
        [Sprachencode](https://developers.xsolla.com/de/doc/pay-station/features/localization/)
        bestehend aus zwei Kleinbuchstaben.
      nullable: true
      properties:
        ar:
          example: null
          nullable: true
          type: string
        bg:
          example: null
          nullable: true
          type: string
        cn:
          example: null
          nullable: true
          type: string
        cs:
          example: null
          nullable: true
          type: string
        de:
          example: Wie man Belohnungen freischaltet
          nullable: true
          type: string
        en:
          example: How to unlock rewards
          nullable: true
          type: string
        es:
          example: Cómo desbloquear recompensas
          nullable: true
          type: string
        fr:
          example: Comment débloquer des récompenses
          nullable: true
          type: string
        he:
          example: null
          nullable: true
          type: string
        it:
          example: Come sbloccare ricompense
          nullable: true
          type: string
        ja:
          example: 報酬をアンロックする方法
          nullable: true
          type: string
        ko:
          example: null
          nullable: true
          type: string
        pl:
          example: null
          nullable: true
          type: string
        pt:
          example: null
          nullable: true
          type: string
        ro:
          example: null
          nullable: true
          type: string
        ru:
          example: null
          nullable: true
          type: string
        th:
          example: null
          nullable: true
          type: string
        tr:
          example: null
          nullable: true
          type: string
        tw:
          example: null
          nullable: true
          type: string
        vi:
          example: null
          nullable: true
          type: string
      type: object
    popup_image_url:
      description: Bild für das Tooltipp-Pop-up-Fenster einer Clan-Belohnungskette.
      example: https://image.example.com
      format: uri
      nullable: true
      type: string
    popup_instruction-two-letter-locale:
      description: >-
        Objekt mit lokalisierten Anweisungen für das Tooltipp-Pop-up-Fenster
        einer Clan-Belohnungskette.
        [Sprachencode](https://developers.xsolla.com/de/doc/pay-station/features/localization/)
        bestehend aus zwei Kleinbuchstaben.
      nullable: true
      properties:
        ar:
          example: null
          nullable: true
          type: string
        bg:
          example: null
          nullable: true
          type: string
        cn:
          example: null
          nullable: true
          type: string
        cs:
          example: null
          nullable: true
          type: string
        de:
          example: >-
            Du musst ein Clanmitglied sein, um Clananreize zu erhalten. Du
            trittst einem Clan bei, wenn ein Clanmitglied dich einlädt, und du
            die Einladung annimmst. Du kannst auch deinen eigenen Clan
            erstellen.
          nullable: true
          type: string
        en:
          example: >-
            You must be a clan member to get clan rewards. You join a clan when
            a clan member invites you to the clan, and you accept the invite.
            You can also create your own clan.
          nullable: true
          type: string
        es:
          example: >-
            Debes ser miembro de un clan para obtener las recompensas del clan.
            Te unes a un clan cuando un miembro del clan te invita al clan y
            aceptas la invitación. También puedes crear tu propio clan.
          nullable: true
          type: string
        fr:
          example: >-
            Vous devez être membre d'un clan pour obtenir les récompenses du
            clan. Vous rejoignez un clan lorsque qu'un membre du clan vous
            invite au clan et que vous acceptez l'invitation. Vous pouvez
            également créer votre propre clan.
          nullable: true
          type: string
        he:
          example: null
          nullable: true
          type: string
        it:
          example: >-
            Devi essere un membro del clan per ottenere le ricompense del clan.
            Ti unisci a un clan quando un membro del clan ti invita al clan e
            accetti l'invito. Puoi anche creare il tuo clan.
          nullable: true
          type: string
        ja:
          example: >-
            クランリワードを受け取るには、クランメンバーでなければなりません。
            クランメンバーがあなたをクランに招待し、招待を受け入れると、クランに参加できます。 あなた自身のクランを作成することもできます。
          nullable: true
          type: string
        ko:
          example: null
          nullable: true
          type: string
        pl:
          example: null
          nullable: true
          type: string
        pt:
          example: null
          nullable: true
          type: string
        ro:
          example: null
          nullable: true
          type: string
        ru:
          example: null
          nullable: true
          type: string
        th:
          example: null
          nullable: true
          type: string
        tr:
          example: null
          nullable: true
          type: string
        tw:
          example: null
          nullable: true
          type: string
        vi:
          example: null
          nullable: true
          type: string
      type: object
    price_conditions_bonus:
      description: >-
        Objekt-Array mit Bedingungen für die Preisspanne, innerhalb der die
        Werbeaktion angewandt wird.<br> Die Aktion wird nur auf Artikel
        angewandt, deren Preis alle in dem Array aufgelisteten Bedingungen
        erfüllt. Wenn Sie dieses Array übermitteln, müssen Sie den Wert des
        Objekts
        [condition](/de/api/shop-builder/operation/create-bonus-promotion/#!path=condition&t=request)
        auf `null` setzen.
      items:
        $ref: '#/components/schemas/price_conditions_items'
      nullable: true
      type: array
    price_conditions_discount:
      description: >-
        Objekt-Array mit Bedingungen für die Preisspanne, innerhalb der die
        Werbeaktion angewandt wird.<br> Die Aktion wird nur auf Artikel
        angewandt, deren Preis alle in dem Array aufgelisteten Bedingungen
        erfüllt. Wenn Sie dieses Array übermitteln, müssen Sie den Wert des
        Objekts
        [items](/de/api/shop-builder/operation/create-item-promotion/#!path=items&t=request)
        auf `null` setzen.
      items:
        $ref: '#/components/schemas/price_conditions_items'
      nullable: true
      type: array
    price_conditions_items:
      description: Jedes Objekt beschreibt eine Regel, nach der der Preis festzulegen ist.
      properties:
        operator:
          description: >-
            Vergleichsoperator zum Festlegen der Preisspanne für die Anwendung
            der Werbeaktion.
          enum:
            - ge
            - gt
            - le
            - lt
            - eq
            - ne
          type: string
          x-enumDescriptions:
            eq: Gleich
            ge: Größer oder gleich
            gt: Größer als
            le: Kleiner oder gleich
            lt: Kleiner als
            ne: Ungleich
        value:
          description: >-
            Wert zur Bestimmung der Preisspanne für die Anwendung der
            Werbeaktion.
          pattern: ^\d+(\.\d{1,4})?$
          type: string
      required:
        - operator
        - value
      type: object
    price_conditions_promocode:
      description: >-
        Objekt-Array mit Bedingungen für die Preisspanne, innerhalb der die
        Werbeaktion auf den gesamten Warenkorb angewandt wird.<br>

        Der Gesamtpreis aller Artikel im Warenkorb des Nutzers wird mit der in
        der Bedingung angegebenen Preisspanne verglichen.
        [Boni](/de/api/shop-builder/operation/create-promo-code/#!path=bonus&t=request)
        und
        [Rabatte](/de/api/shop-builder/operation/create-promo-code/#!path=discount&t=request)
        werden auf alle Artikel im Warenkorb angewandt, wenn die Warenkorbsumme
        die festgelegte Bedingung erfüllt.<br>

        Wenn Sie dieses Array übermitteln, müssen Sie den Wert des Arrays
        [discounted_items](/de/api/shop-builder/operation/create-promo-code/#!path=discounted_items&t=request)
        auf `null` setzen.
      items:
        $ref: '#/components/schemas/price_conditions_items'
      nullable: true
      type: array
    promotion_periods:
      description: >-
        Gültigkeitszeitraum der Werbeaktion. Wenn mehrere Zeiträume angegeben
        sind, sind sowohl `date_from` als auch `date_until` erforderlich.
      items:
        properties:
          date_from:
            description: Startdatum für die angegebene Werbeaktion.
            example: '2020-08-11T10:00:00+03:00'
            format: date-time
            nullable: false
            type: string
          date_until:
            description: >-
              Enddatum für die angegebene Werbeaktion. Wenn `null` festgelegt
              ist, läuft die Werbeaktion unbefristet. Kann nur `null` sein, wenn
              ein einzelner Gültigkeitszeitraum angegeben ist.
            example: '2020-08-11T20:00:00+03:00'
            format: date-time
            nullable: true
            type: string
        required:
          - date_from
        type: object
      nullable: false
      type: array
    promotion_recurrent_schedule_response:
      description: Aktualisierungszeitraum begrenzen.
      nullable: true
      properties:
        per_user:
          description: Aktualisierungszeitraum für das Nutzerlimit.
          properties:
            day_of_month:
              description: >-
                Tag im Monat, an dem die Limits aktualisiert werden. Hat der
                Monat weniger Tage als der ausgewählte Tag, erfolgt die
                Aktualisierung am letzten Tag des Monats. `null` ist bei
                Limitaktualisierungszeiträumen vom Typ `monthly` unzulässig.
              maximum: 31
              minimum: 1
              nullable: true
              type: integer
            day_of_week:
              description: >-
                Wochentag, an dem die Limits aktualisiert werden. 1 seht für
                Montag, und 7 steht für Sonntag. `null` ist bei
                Limitaktualisierungszeiträumen vom Typ `weekly` unzulässig.
              maximum: 7
              minimum: 1
              nullable: true
              type: integer
            displayable_reset_next_date:
              description: >-
                Datum und Uhrzeit, zu der die Limits zurückgesetzt werden sollen
                (ISO 8601).
              example: '2023-02-28T11:00:00+08:00'
              format: date-time
              type: string
            displayable_reset_start_date:
              description: Datum und Uhrzeit der ersten Limitaktualisierung (ISO 8601).
              example: '2023-02-28T11:00:00+08:00'
              format: date-time
              type: string
            interval_type:
              description: Typ des wiederkehrenden Aktualisierungszeitraums.
              enum:
                - daily
                - weekly
                - monthly
              type: string
            reset_next_date:
              description: Datum und Uhrzeit der Limitaktualisierung (Unix-Zeitstempel).
              example: 1677553200
              type: integer
            time:
              description: >-
                Zeitpunkt der Limitaktualisierung in der gewünschten Zeitzone
                (auf Stunden gerundet).
              example: 11:00:00+03:00
              format: full-time
              type: string
          type: object
      type: object
    promotion_user-attribute_conditions_model-get:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-get'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit der Werbeaktion basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    promotion_user-attribute_conditions_model-post:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-post'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit der Werbeaktion basierend darauf, ob die
            Nutzerattribute alle angegebenen Bedingungen erfüllen.
    recurrent_schedule_client_side:
      description: Wiederkehrender Reset-Zeitraum der Belohnungskette.
      nullable: true
      properties:
        interval_type:
          oneOf:
            - $ref: '#/components/schemas/interval_type_weekly'
              title: interval_type = weekly
            - $ref: '#/components/schemas/interval_type_monthly'
              title: interval_type = monthly
            - $ref: '#/components/schemas/interval_type_hourly_rc'
              title: 'interval_type = hourly '
        reset_next_date:
          $ref: '#/components/schemas/reset_next_date'
      type: object
    recurrent_schedule_create_update:
      description: Wiederkehrender Reset-Zeitraum der Belohnungskette.
      nullable: true
      oneOf:
        - description: Belohnungskette wird wöchentlich zurückgesetzt.
          properties:
            day_of_week:
              $ref: '#/components/schemas/day_of_week'
            interval_type:
              $ref: '#/components/schemas/interval_type_weekly'
            time:
              $ref: '#/components/schemas/time'
          required:
            - interval_type
            - time
            - day_of_week
          title: interval_type = weekly
          type: object
        - description: Belohnungskette wird monatlich zurückgesetzt.
          properties:
            day_of_month:
              $ref: '#/components/schemas/day_of_month'
            interval_type:
              $ref: '#/components/schemas/interval_type_monthly'
            time:
              $ref: '#/components/schemas/time'
          required:
            - interval_type
            - time
            - day_of_month
          title: interval_type = monthly
          type: object
        - description: >-
            Die Belohnungskette wird gemäß dem in Stunden angegebenen
            Zeitintervall zurückgesetzt.
          properties:
            hours_interval:
              $ref: '#/components/schemas/reward_chain_hours_interval'
            interval_type:
              $ref: '#/components/schemas/interval_type_hourly_rc'
          required:
            - interval_type
            - hours_interval
          title: 'interval_type = hourly '
          type: object
      type: object
    reset_next_date:
      description: "Berechnetes Datum samt Uhrzeit, an dem die Belohnungskette das nächste Mal zurückgesetzt wird <a href=\"https://en.wikipedia.org/wiki/Unix_time\" target=\"_blank\">(Unix-Zeitstempel)</a>.<br><br> Beispiel: Die Belohnungskette wird monatlich zurückgesetzt, beginnend ab dem 1. März 2024 um 01:00\_Uhr Kuala-Lumpur-Zeit (GMT+8). Das Datum samt Uhrzeit, an dem die Belohnungskette das nächste Mal zurückgesetzt wird, ist der 1. April 2024 um 01:00 Uhr Kuala-Lumpur-Zeit (GMT+8), was dem 31. März 2024 um 17:00\_Uhr (GMT+0) bzw. „1711904400000“ im Unix-Zeitstempelformat entspricht.<br><br> Beispiel: „1711904400000“"
      type: integer
    reward-chain-step-reward_user-attribute_conditions_model-get:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-get'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit von Belohnungskettenschritten basierend
            darauf, ob die Nutzerattribute alle angegebenen Bedingungen
            erfüllen.
    reward-chain-step-reward_user-attribute_conditions_model-post:
      allOf:
        - $ref: '#/components/schemas/user-attribute_conditions_model-post'
        - description: >-
            Bedingungen für die Validierung von Nutzerattributen.

            Steuert die Verfügbarkeit von Belohnungskettenschritten basierend
            darauf, ob die Nutzerattribute alle angegebenen Bedingungen
            erfüllen.
    reward_chain_hours_interval:
      description: >-
        Intervall in Stunden, nach dem die Belohnungskette zurückgesetzt wird.
        <br><br> Der Countdown beginnt gemäß dem Parameter <a
        href="https://developers.xsolla.com/de/api/shop-builder/operation/admin-create-reward-chain/#!path=0/date_start&t=request">date_start</a>.
        <br><br> Sind beispielsweise `date_start = "2025-11-15T18:15:00+05:00"`
        und `hours_interval = 2`angegeben, wird die Belohnungskette alle alle
        zwei Stunden ab dem `"2025-11-15T20:15:00+05:00"` zurückgesetzt.
      maximum: 10000
      minimum: 1
      type: integer
    reward_chain_id:
      description: Eindeutige ID der Belohnungskette.
      example: 9
      type: integer
    reward_item_quantity:
      description: Artikelmenge.
      example: 2
      type: integer
    reward_step_price:
      properties:
        amount:
          $ref: '#/components/schemas/step_price_amount'
      required:
        - amount
      type: object
    reward_step_short:
      description: Belohnungskettenschritt.
      properties:
        image_url:
          $ref: '#/components/schemas/image_url'
        name:
          $ref: '#/components/schemas/name-localization-object'
        price:
          $ref: '#/components/schemas/reward_step_price'
        reward:
          items:
            properties:
              attribute_conditions:
                $ref: >-
                  #/components/schemas/reward-chain-step-reward_user-attribute_conditions_model-get
              quantity:
                $ref: '#/components/schemas/reward_item_quantity'
              sku:
                $ref: '#/components/schemas/sku'
            type: object
          type: array
        step_id:
          $ref: '#/components/schemas/step_id'
      type: object
    rolling-skippable-daily-chain-base:
      description: >-
        Grundlegende Eigenschaften für tägliche Belohnungen vom Typ
        `rolling_skippable`.
      properties:
        date_end:
          $ref: '#/components/schemas/rolling_date_end'
        date_start:
          $ref: '#/components/schemas/daily_rolling_chain_date_start'
        is_recurrent:
          $ref: '#/components/schemas/rolling_is_recurrent'
        type:
          allOf:
            - $ref: '#/components/schemas/daily_chain_type'
            - enum:
                - rolling_skippable
      type: object
    rolling-unskippable-daily-chain-base:
      description: >-
        Grundlegende Eigenschaften für tägliche Belohnungen vom Typ
        `rolling_unskippable`.
      properties:
        date_end:
          $ref: '#/components/schemas/rolling_date_end'
        date_start:
          $ref: '#/components/schemas/daily_rolling_chain_date_start'
        is_recurrent:
          $ref: '#/components/schemas/rolling_is_recurrent'
        type:
          allOf:
            - $ref: '#/components/schemas/daily_chain_type'
            - enum:
                - rolling_unskippable
      type: object
    rolling_date_end:
      description: Datum, an dem die tägliche Belohnung endet.
      example: '2020-04-15T18:16:00+05:00'
      format: date-time
      nullable: true
      type: string
    rolling_is_recurrent:
      default: false
      description: >-
        Ob die tägliche Belohnung wiederkehrend ist. Ist `true` festgelegt, wird
        die tägliche Belohnung zurückgesetzt, sobald der Nutzer alle Schritte
        abgeschlossen hat, sodass er wieder bei Schritt 1 beginnen kann. Die
        Zurücksetzung erfolgt nur innerhalb des aktiven Belohnungszeitraums,
        festgelegt durch die beiden Parameter `date_start` und `date_end`.
      example: true
      type: boolean
    sku:
      description: >-
        Eindeutige Artikel-ID. Die SKU darf nur lateinische Klein- und
        Großbuchstaben, Ziffern, Punkte, Bindestriche und Unterstriche
        enthalten.
      example: booster_mega_1
      maxLength: 255
      minLength: 1
      pattern: ^[a-zA-Z0-9_\-–.]*$
      type: string
    step_id:
      description: ID des eindeutigen Schritts.
      example: 10
      nullable: true
      type: integer
    step_price_amount:
      description: Stufenpreis in Wertpunkten.
      example: 100
      type: integer
    time:
      description: "Zu welcher Uhrzeit die Belohnungskette in der gewünschten Zeitzone zurückgesetzt wird (auf volle Stunden gerundet). <br><br>Beispiel: Es ist festgelegt, dass in der Zeitzone Kuala Lumpur (GMT+8) die Belohungskette um 01:00\_Uhr zurückgesetzt wird. In diesem Fall lautet der Wert des Parameters `time`: \"01:00:00+08:00\"."
      example: 01:00:00+08:00
      pattern: ((0[0-9]|1[0-9]|2[0-3]):00:00)(\+|-)(0[0-9]|1[0-9]|2[0-3]):([0-5][0-9])
      type: string
    top_contributors:
      nullable: true
      properties:
        contributed_amount:
          description: Anzahl der vom Nutzer gesammelten Wertpunkte.
          example: 100
          type: integer
        name:
          description: >-
            Benutzer-ID, die während des Autorisierungsvorgangs an Xsolla
            gesendet wird. Die Benutzer-ID wird als Nickname angezeigt und dient
            dazu, den Nutzer mit Ihrem Xsolla-Login-Projekt zu verknüpfen. Wenn
            Sie die Nutzer per
            [Benutzer-ID](https://developers.xsolla.com/de/solutions/web-shop/create-web-shop/set-up-authentication/?tabs=100-UserIDAuth&link=100-UserIDAuth)
            autorisieren, empfehlen wir, den <code>name</code> Parameter in [der
            Webhook-Antwort](https://developers.xsolla.com/de/webhooks/operation/user-validation-in-webshop/)
            zu übermitteln. Dieser Parameter enthält den Nutzernamen, der als
            Nickname verwendet wird.
          example: Rocket
          type: string
      type: object
    total_promotions_count:
      description: Gesamtzahl der Werbeaktionen.
      type: integer
    two-letter-locale:
      description: Sprachencodes bestehend aus zwei Kleinbuchstaben.
      nullable: true
      properties:
        ar:
          description: Arabisch
          nullable: true
          type: string
        bg:
          description: Bulgarisch
          nullable: true
          type: string
        cn:
          description: Chinesisch (vereinfacht)
          nullable: true
          type: string
        cs:
          description: Tschechisch
          nullable: true
          type: string
        de:
          description: Deutsch
          nullable: true
          type: string
        en:
          description: Englisch
          nullable: true
          type: string
        es:
          description: Spanisch (Spanien)
          nullable: true
          type: string
        fr:
          description: Französisch
          nullable: true
          type: string
        he:
          description: Hebräisch
          nullable: true
          type: string
        id:
          description: Indonesisch
          nullable: true
          type: string
        it:
          description: Italienisch
          nullable: true
          type: string
        ja:
          description: Japanisch
          nullable: true
          type: string
        km:
          description: Khmer
          nullable: true
          type: string
        ko:
          description: Koreanisch
          nullable: true
          type: string
        lo:
          description: Laotisch
          nullable: true
          type: string
        my:
          description: Birmanisch
          nullable: true
          type: string
        ne:
          description: Nepalesisch
          nullable: true
          type: string
        ph:
          description: Filipino
          nullable: true
          type: string
        pl:
          description: Polnisch
          nullable: true
          type: string
        pt:
          description: Portugiesisch
          nullable: true
          type: string
        ro:
          description: Rumänisch
          nullable: true
          type: string
        ru:
          description: Russisch
          nullable: true
          type: string
        th:
          description: Thai
          nullable: true
          type: string
        tr:
          description: Türkisch
          nullable: true
          type: string
        tw:
          description: Chinesisch (traditionell)
          nullable: true
          type: string
        vi:
          description: Vietnamesisch
          nullable: true
          type: string
      title: two-letter
      type: object
    unit_type:
      description: 'Einheitstyp: `game`.'
      example: game
      type: string
    update-calendar-hard-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/calendar-hard-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `calendar_hard`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/modify-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    update-clan-reward-chain-model:
      allOf:
        - $ref: '#/components/schemas/create-reward-chain-model'
        - description: Clan-Belohnungskette.
          properties:
            clan_type:
              $ref: '#/components/schemas/clan_type'
            popup_header:
              $ref: '#/components/schemas/popup_header-two-letter-locale'
            popup_image_url:
              $ref: '#/components/schemas/popup_image_url'
            popup_instruction:
              $ref: '#/components/schemas/popup_instruction-two-letter-locale'
          required:
            - name
            - periods
            - steps
            - is_enabled
            - popup_header
            - popup_instruction
          type: object
    update-reward-chain-model:
      description: Eine Belohnungskette.
      properties:
        attribute_conditions:
          $ref: '#/components/schemas/chain_user-attribute_conditions_model-post'
        description:
          $ref: '#/components/schemas/description-localization-object'
        image_url:
          $ref: '#/components/schemas/image_url'
        is_always_visible:
          $ref: '#/components/schemas/chain_is_always_visible'
        is_enabled:
          $ref: '#/components/schemas/is_enabled'
        is_reset_after_end:
          $ref: '#/components/schemas/is_reset_after_end'
        long_description:
          $ref: '#/components/schemas/long-description-localization-object'
        name:
          $ref: '#/components/schemas/name-localization-object'
        order:
          $ref: '#/components/schemas/order'
        periods:
          $ref: '#/components/schemas/periods'
        recurrent_schedule:
          $ref: '#/components/schemas/recurrent_schedule_create_update'
        steps:
          items:
            $ref: '#/components/schemas/modify_reward_step'
          type: array
      required:
        - name
        - periods
        - steps
        - is_enabled
      type: object
    update-rolling-skippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-skippable-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `rolling_skippable`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/modify-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    update-rolling-unskippable-daily-chain-model:
      allOf:
        - $ref: '#/components/schemas/rolling-unskippable-daily-chain-base'
        - description: Eine tägliche Belohnung für den Typ `rolling_unskippable`.
          properties:
            description:
              $ref: '#/components/schemas/description-localization-object'
            id:
              $ref: '#/components/schemas/daily_chain_id'
            is_enabled:
              $ref: '#/components/schemas/is_enabled'
            name:
              $ref: '#/components/schemas/name-localization-object'
            order:
              $ref: '#/components/schemas/order'
            steps:
              items:
                $ref: '#/components/schemas/modify-daily-chain-step-model'
              type: array
          required:
            - name
            - date_start
            - steps
            - is_enabled
            - type
          type: object
    update_step_id:
      description: >-
        Eindeutige Kettenschritt-ID. Geben Sie die ID während der Aktualisierung
        an, damit der Nutzerfortschritt für diesen Schritt nicht verloren geht.
      example: 10
      minimum: 1
      nullable: true
      type: integer
    user-attribute_condition_date_model-get:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_date
        type:
          $ref: '#/components/schemas/user-attribute_conditions_properties_type-date'
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      title: type = date
      type: object
    user-attribute_condition_date_model-post:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_date
        type:
          $ref: '#/components/schemas/user-attribute_conditions_properties_type-date'
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      required:
        - attribute
        - operator
        - value
        - type
      title: type = date
      type: object
    user-attribute_condition_number_model-get:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_number
        type:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_type-number
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      title: type = number
      type: object
    user-attribute_condition_number_model-post:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_number
        type:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_type-number
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      required:
        - attribute
        - operator
        - value
        - type
      title: type = number
      type: object
    user-attribute_condition_string_model-get:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_string
        type:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_type-string
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      title: type = string
      type: object
    user-attribute_condition_string_model-post:
      properties:
        attribute:
          $ref: '#/components/schemas/user-attribute_conditions_properties_attribute'
        can_be_missing:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_can_be_missing
        operator:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_operator_string
        type:
          $ref: >-
            #/components/schemas/user-attribute_conditions_properties_type-string
        value:
          $ref: '#/components/schemas/user-attribute_conditions_properties_value'
      required:
        - attribute
        - operator
        - value
        - type
      title: type = string
      type: object
    user-attribute_conditions_model-get:
      items:
        oneOf:
          - $ref: '#/components/schemas/user-attribute_condition_string_model-get'
          - $ref: '#/components/schemas/user-attribute_condition_number_model-get'
          - $ref: '#/components/schemas/user-attribute_condition_date_model-get'
      maxItems: 100
      minItems: 1
      type: array
    user-attribute_conditions_model-post:
      items:
        oneOf:
          - $ref: '#/components/schemas/user-attribute_condition_string_model-post'
          - $ref: '#/components/schemas/user-attribute_condition_number_model-post'
          - $ref: '#/components/schemas/user-attribute_condition_date_model-post'
      maxItems: 100
      minItems: 1
      type: array
    user-attribute_conditions_properties_attribute:
      description: Benutzerattributcode.
      maxLength: 255
      minLength: 1
      pattern: ^[-_.\d\w]+$
      type: string
    user-attribute_conditions_properties_can_be_missing:
      description: >-
        Gibt an, dass die Bedingung erfüllt ist, auch wenn das Attribut in den
        Benutzerattributen fehlt. Übermitteln Sie `true`, um den Artikel den
        Nutzern anzuzeigen, die dieses Attribut nicht haben. Nutzer, die das
        Attribut haben, dessen Wert jedoch nicht mit dem in der Bedingung
        angegebenen Wert übereinstimmt, sehen den Artikel nicht. `false` –
        Nutzer, die das Attribut haben, dessen Wert jedoch nicht mit dem in der
        Bedingung angegebenen Wert übereinstimmt oder bei denen das Attribut
        fehlt, sehen den Artikel nicht.
      type: boolean
    user-attribute_conditions_properties_operator_date:
      description: >-
        Art der durchgeführten Operation nach Bedingung. Für den Attributtyp
        <code>date</code>.
      enum:
        - eq
        - ne
        - lt
        - gt
        - le
        - ge
      type: string
      x-enumDescriptions:
        eq: Gleich
        ge: Später oder gleich
        gt: Später
        le: Früher oder gleich
        lt: Früher
        ne: Ungleich
    user-attribute_conditions_properties_operator_number:
      description: >-
        Art der durchgeführten Operation nach Bedingung. Für den Attributtyp
        <code>number</code>.
      enum:
        - eq
        - ne
        - gt
        - ge
        - lt
        - le
      type: string
      x-enumDescriptions:
        eq: Gleich
        ge: Größer oder gleich
        gt: Größer
        le: Kleiner oder gleich
        lt: Kleiner
        ne: Ungleich
    user-attribute_conditions_properties_operator_string:
      description: >-
        Art der durchgeführten Operation nach Bedingung. Für den Attributtyp
        <code>string</code>.
      enum:
        - eq
        - ne
      type: string
      x-enumDescriptions:
        eq: Gleich
        ne: Ungleich
    user-attribute_conditions_properties_type-date:
      description: Benutzerattributtyp.
      enum:
        - date
      type: string
    user-attribute_conditions_properties_type-number:
      description: Benutzerattributtyp.
      enum:
        - number
      type: string
    user-attribute_conditions_properties_type-string:
      description: Benutzerattributtyp.
      enum:
        - string
      type: string
    user-attribute_conditions_properties_value:
      description: >-
        Bedingungswert, mit dem der Benutzerattributwert verglichen wird. Der
        Typ hängt vom Attributtyp ab.
      maxLength: 255
      type: string
    user-attribute_personalized-catalog:
      properties:
        attribute_conditions:
          $ref: >-
            #/components/schemas/personalized-catalog_user-attribute_conditions_model-get
        is_enabled:
          description: Wenn die Regel aktiviert ist.
          type: boolean
        is_satisfied_for_unauth:
          description: >-
            Ob der Artikel nicht autorisierten Nutzern angezeigt wird. Ist
            `true` festgelgt, wird der Artikel dem nicht autorisierten Nutzer
            unabhängig von den Kataloganzeigeregeln angezeigt. Standardmäßig ist
            `false` festgelgt.
          type: boolean
        items:
          items:
            description: >-
              Artikel, die dem Nutzer angezeigt werden, sofern seine
              Attributwerte die Bedingungen erfüllen.
            properties:
              bundle_type:
                description: >-
                  Bündeltyp. Wird zurückgegeben, wenn der Artikeltyp ein Bündel
                  ist.
                enum:
                  - standard
                  - virtual_currency_package
                type: string
              item_id:
                description: Artikel-ID.
                type: number
              name:
                description: Artikelname.
                type: string
              sku:
                description: Artikel-SKU.
                type: string
              type:
                description: Artikeltyp.
                enum:
                  - virtual_good
                  - virtual_currency
                  - bundle
                  - physical_good
                  - unit
                type: string
            type: object
          type: array
        name:
          description: >-
            Verständlicher Name einer Regel. Dient dazu, eine Regel im
            Kundenportal anzuzeigen.
          type: string
        rule_id:
          description: Regel-ID.
          type: number
      required:
        - rule_id
        - name
        - is_enabled
        - attribute_conditions
        - items
      type: object
    user-attribute_personalized-catalog-body:
      properties:
        attribute_conditions:
          $ref: >-
            #/components/schemas/personalized-catalog_user-attribute_conditions_model-post
        is_enabled:
          description: Wenn die Regel aktiviert ist.
          type: boolean
        is_satisfied_for_unauth:
          description: >-
            Ob der Artikel nicht autorisierten Nutzern angezeigt wird. Ist
            `true` festgelgt, wird der Artikel dem nicht autorisierten Nutzer
            unabhängig von den Kataloganzeigeregeln angezeigt. Standardmäßig ist
            `false` festgelgt.
          type: boolean
        items:
          items:
            oneOf:
              - description: >-
                  Artikel, die einem Nutzer angezeigt werden, sofern ihre
                  Attributwerte Bedingungen erfüllen.
                properties:
                  item_id:
                    description: Artikel-ID.
                    type: number
                required:
                  - item_id
                type: object
              - description: >-
                  Artikel, die einem Nutzer angezeigt werden, sofern ihre
                  Attributwerte Bedingungen erfüllen.
                properties:
                  sku:
                    description: Artikel-SKU.
                    type: string
                required:
                  - sku
                type: object
          maxItems: 100
          minItems: 1
          type: array
        name:
          description: >-
            Verständlicher Name einer Regel. Dient dazu, eine Regel im
            Kundenportal anzuzeigen.
          maxLength: 255
          minLength: 1
          pattern: ^\S
          type: string
      type: object
    user-attribute_personalized-catalog-body-required:
      properties:
        attribute_conditions:
          $ref: >-
            #/components/schemas/personalized-catalog_user-attribute_conditions_model-post
        is_enabled:
          description: Wenn die Regel aktiviert ist.
          type: boolean
        is_satisfied_for_unauth:
          description: >-
            Ob der Artikel nicht autorisierten Nutzern angezeigt wird. Ist
            `true` festgelgt, wird der Artikel dem nicht autorisierten Nutzer
            unabhängig von den Kataloganzeigeregeln angezeigt. Standardmäßig ist
            `false` festgelgt.
          type: boolean
        items:
          items:
            oneOf:
              - description: >-
                  Artikel, die einem Nutzer angezeigt werden, sofern ihre
                  Attributwerte Bedingungen erfüllen.
                properties:
                  item_id:
                    description: Artikel-ID.
                    type: number
                required:
                  - item_id
                type: object
              - description: >-
                  Artikel, die einem Nutzer angezeigt werden, sofern ihre
                  Attributwerte Bedingungen erfüllen.
                properties:
                  sku:
                    description: Artikel-SKU.
                    type: string
                required:
                  - sku
                type: object
          maxItems: 100
          minItems: 1
          type: array
        name:
          description: >-
            Verständlicher Name einer Regel. Dient dazu, eine Regel im
            Kundenportal anzuzeigen.
          maxLength: 255
          minLength: 1
          pattern: ^\S
          type: string
      required:
        - name
        - is_enabled
        - attribute_conditions
        - items
      type: object
    user-attribute_personalized-catalog_all:
      properties:
        is_enabled:
          description: Wenn die Regel aktiviert ist.
          type: boolean
        is_satisfied_for_unauth:
          description: >-
            Ob der Artikel nicht autorisierten Nutzern angezeigt wird. Ist
            `true` festgelgt, wird der Artikel dem nicht autorisierten Nutzer
            unabhängig von den Kataloganzeigeregeln angezeigt. Standardmäßig ist
            `false` festgelgt.
          type: boolean
        name:
          description: >-
            Verständlicher Name einer Regel. Dient dazu, eine Regel im
            Kundenportal anzuzeigen.
          type: string
        rule_id:
          description: Regel-ID.
          type: number
      required:
        - rule_id
        - name
        - is_enabled
      type: object
    value-external_id:
      description: >-
        Eindeutige Wert-ID für ein Attribut. Die `external_id` darf nur
        lateinische Kleinbuchstaben, alphanumerische Zeichen, Binde- und
        Unterstriche enthalten.
      example: attribute_value
      maxLength: 255
      minLength: 1
      pattern: ^[-_.\d\w]+$
      type: string
    value-is_free:
      default: false
      description: Ist `true` eingestellt, ist der Artikel kostenlos.
      example: false
      type: boolean
    value-point-amount:
      description: Anzahl der Wertpunkte.
      type: integer
    value-point-description:
      description: Beschreibung des Wertpunktes.
      nullable: true
      type: string
    value-point-long-description:
      description: Lange Beschreibung des Wertpunkts.
      nullable: true
      type: string
    value-point-name:
      description: Wertpunktname.
      type: string
    value-point-sku:
      description: Eindeutige ID des Wertpunkts.
      type: string
  securitySchemes:
    AuthForCart:
      description: >-
        Wenn Sie einen Warenkorb mit Spielen verkaufen, können Sie [den Endpunkt
        ohne Autorisierung
        aufrufen](/de/doc/buy-button/how-to/set-up-authentication/#guides_buy_button_selling_items_not_authenticated_users).


        So geht's:


        * Fügen Sie eine eindeutige Kennung zum Parameter `x-unauthorized-id` im
        Header für Spiele hinzu.

        * Ergänzen Sie den Parameter `x-user` (Base64-codiert) im Header um die
        E-Mail-Adresse des Nutzers.


        Standardmäßig wird der Xsolla-Login-Benutzer-JWT (Trägertoken) zur
        Autorisierung verwendet. Sie können versuchen, diesen Endpunkt mit einem
        speziell für Testzwecke bestehenden Xsolla-Login-Benutzer-JWT
        aufzurufen: `Bearer
        eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE5NjIyMzQwNDgsImlzcyI6Imh0dHBzOi8vbG9naW4ueHNvbGxhLmNvbSIsImlhdCI6MTU2MjE0NzY0OCwidXNlcm5hbWUiOiJ4c29sbGEiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6IjA2SWF2ZHpDeEVHbm5aMTlpLUc5TmMxVWFfTWFZOXhTR3ZEVEY4OFE3RnMiLCJzdWIiOiJkMzQyZGFkMi05ZDU5LTExZTktYTM4NC00MjAxMGFhODAwM2YiLCJlbWFpbCI6InN1cHBvcnRAeHNvbGxhLmNvbSIsInR5cGUiOiJ4c29sbGFfbG9naW4iLCJ4c29sbGFfbG9naW5fcHJvamVjdF9pZCI6ImU2ZGZhYWM2LTc4YTgtMTFlOS05MjQ0LTQyMDEwYWE4MDAwNCIsInB1Ymxpc2hlcl9pZCI6MTU5MjR9.GCrW42OguZbLZTaoixCZgAeNLGH2xCeJHxl8u8Xn2aI`.


        Alternativ können Sie den [Zugriffstoken der
        Bezahlstation](https://developers.xsolla.com/de/api/pay-station/operation/create-token/)
        verwenden.
      scheme: bearer
      type: http
    XsollaLoginUserJWT:
      bearerFormat: JWT
      description: >-
        Standardmäßig wird der Xsolla-Login-Benutzer-JWT (Trägertoken) bei der
        Autorisierung verwendet. Sie können versuchen, diesen Endpunkt mit einem
        speziell für Testzwecke bestehenden Xsolla-Login-Benutzer-JWT
        aufzurufen: `Bearer
        eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE5NjIyMzQwNDgsImlzcyI6Imh0dHBzOi8vbG9naW4ueHNvbGxhLmNvbSIsImlhdCI6MTU2MjE0NzY0OCwidXNlcm5hbWUiOiJ4c29sbGEiLCJ4c29sbGFfbG9naW5fYWNjZXNzX2tleSI6IjA2SWF2ZHpDeEVHbm5aMTlpLUc5TmMxVWFfTWFZOXhTR3ZEVEY4OFE3RnMiLCJzdWIiOiJkMzQyZGFkMi05ZDU5LTExZTktYTM4NC00MjAxMGFhODAwM2YiLCJlbWFpbCI6InN1cHBvcnRAeHNvbGxhLmNvbSIsInR5cGUiOiJ4c29sbGFfbG9naW4iLCJ4c29sbGFfbG9naW5fcHJvamVjdF9pZCI6ImU2ZGZhYWM2LTc4YTgtMTFlOS05MjQ0LTQyMDEwYWE4MDAwNCIsInB1Ymxpc2hlcl9pZCI6MTU5MjR9.GCrW42OguZbLZTaoixCZgAeNLGH2xCeJHxl8u8Xn2aI`.


        Alternativ können Sie den [Zugriffstoken der
        Bezahlstation](https://developers.xsolla.com/de/api/pay-station/operation/create-token/)
        verwenden.
      scheme: bearer
      type: http
    basicAuth:
      description: >-
        Die Xsolla-API nutzt die Basisauthentifizierung. Alle Anfragen an die
        API müssen den Header `Authorization: Basic
        <your_authorization_basic_key>` enthalten, wobei
        `your_authorization_basic_key` das gemäß Base64-Standard kodierte
        `project_id:api_key`-Paar ist.


        Sie können bei Bedarf `merchant_id` anstelle von `project_id` verwenden.
        Dies hat keine Auswirkungen auf die Funktionalität.


        Wechseln Sie ins [Kundenportal](https://publisher.xsolla.com/), um die
        Werte der Parameter zu erhalten:


        * Die `merchant_id` wird an folgenden Orten angezeigt:
          * unter **Firmeneinstellungen > Firma**
          * In der URL in der Adressleiste des Browsers auf einer beliebigen Seite im Kundenportal. Die URL hat das folgende Format: `https://publisher.xsolla.com/<merchant_id>`.
        * Der `api_key` wird im Kundenportal nur einmal angezeigt, nämlich dann,
        wenn er erstellt wird. Sie sind selbst dafür verantwortlich, den
        Schlüssel zu speichern. Einen neuen Schlüssel können Sie in den
        folgenden Abschnitten erstellen:
          * **Firmeneinstellungen > API-Schlüssel**
          * **Projekteinstellungen > API-Schlüssel**
        * Die `project_id` wird an folgenden Orten angezeigt:
          * Im Kundenportal neben dem Projektnamen.
          * In der URL in der Adressleiste des Browsers, wenn Sie im Kundenportal an einem Projekt arbeiten. Die URL hat das folgende Format: `https://publisher.xsolla.com/<merchant_id>/Projekte/<project_id>`.

        Weitere Informationen zur Handhabung von API-Schlüsseln finden Sie in
        der
        [API-Referenz](https://developers.xsolla.com/de/api/getting-started/#api_keys_overview).
      scheme: basic
      type: http
    basicMerchantAuth:
      description: >-
        Die Xsolla-API nutzt die Basisauthentifizierung. Alle Anfragen an die
        API müssen den Header `Authorization: Basic
        <your_authorization_basic_key>` enthalten, wobei
        `your_authorization_basic_key` das gemäß Base64-Standard kodierte
        `merchant_id:api_key`-Paar ist.


        Wechseln Sie ins [Kundenportal](https://publisher.xsolla.com/), um die
        Werte der Parameter zu erhalten:


        * Die `merchant_id` wird an folgenden Orten angezeigt:
          * unter **Firmeneinstellungen > Firma**
          * In der URL in der Adressleiste des Browsers auf einer beliebigen Seite im Kundenportal. Die URL hat das folgende Format: `https://publisher.xsolla.com/<merchant_id >`
        * Der `api_key` wird im Kundenportal nur einmal angezeigt, nämlich dann,
        wenn er erstellt wird. Sie sind selbst dafür verantwortlich, den
        Schlüssel zu speichern. Einen neuen Schlüssel können Sie in den
        folgenden Abschnitten erstellen:
          * **Firmeneinstellungen > API-Schlüssel**
          * **Projekteinstellungen > API-Schlüssel**

        Weitere Informationen zur Handhabung von API-Schlüsseln finden Sie in
        der
        [API-Referenz](https://developers.xsolla.com/de/api/getting-started/#api_keys_overview).
      scheme: basic
      type: http
info:
  description: |-
    # Overview

    * **Version:** 2.0.0
    * **Servers**: `https://store.xsolla.com/api`
    * **[Contact Us by Email](mailto:integration@xsolla.com)**
    * **Contact URL:** https://xsolla.com/
    * **Required TLS version:** 1.2

    LiveOps API bietet Endpunkte zur Förderung des Spieler-Engagements. 
  title: LiveOps API
  version: 2.0.0
openapi: 3.0.0
paths:
  /v2/project/{project_id}/admin/code/limit/coupon/external_id/{external_id}:
    get:
      description: >-
        Ruft ab, wie oft die Codes noch eingelöst werden dürfen. Verwenden Sie
        zum Filtern der Codes den Abfrageparameter `codes`.


        Im Abschnitt "Verwaltung" können Sie das Code-Limit selbst festlegen:

        *
        [Gutscheine](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-coupons/)
      operationId: get-coupon-code-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/codes-query-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-code-coupon-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Coupon not found:
                  $ref: '#/components/examples/404-coupon-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Limits eindeutiger Gutscheincodes abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/code/limit/promocode/external_id/{external_id}:
    get:
      description: >-
        Ruft ab, wie oft die Codes noch eingelöst werden dürfen. Verwenden Sie
        zum Filtern der Codes den Abfrageparameter `codes`.


        Im Abschnitt "Verwaltung" können Sie das Code-Limit selbst festlegen:

        *
        [Promocodes](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-promo-codes/)
      operationId: get-promo-code-code-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/codes-query-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-code-promo-code-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Promo code not found:
                  $ref: '#/components/examples/404-coupon-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Promocode-Limit für Codes abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/coupon/{external_id}/activate:
    put:
      description: >-
        Aktiviert eine Gutscheinaktion.

        Die erstellte Gutscheinaktion ist standardmäßig deaktiviert.

        Gutscheine lassen sich erst einlösen, wenn Sie die zugehörige
        Werbeaktion aktivieren.

        Verwenden Sie diesen Endpunkt, um eine Gutscheinaktion zu aktivieren.
      operationId: activate-coupon
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Gutschein wurde erfolgreich aktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Gutscheinaktion aktivieren
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/coupon/{external_id}/code:
    get:
      description: Ruft Gutscheincodes ab.
      operationId: get-coupon-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-coupon-code-list'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Gutscheincodes abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt einen Gutscheincode.
      operationId: create-coupon-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-coupon-promocode-code'
      responses:
        '201':
          $ref: '#/components/responses/Promotions_201-coupon-promocode-code-created'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-coupon-promocode-same-code-exists
      security:
        - basicAuth: []
      summary: Gutscheincode erstellen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/coupon/{external_id}/code/generate:
    put:
      description: Generiert Gutscheincodes.
      operationId: generate-coupon-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  $ref: '#/components/schemas/Promotions_coupon-generate-count'
              required:
                - count
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    count: 10
              schema:
                properties:
                  count:
                    $ref: '#/components/schemas/Promotions_coupon-generate-count'
                type: object
          description: Codes wurden erfolgreich generiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Gutscheincodes generieren
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/coupon/{external_id}/deactivate:
    put:
      description: >-
        Deaktiviert eine Gutscheinaktion.

        Die erstellte Gutscheinaktion ist standardmäßig deaktiviert.

        Gutscheine lassen sich erst einlösen, wenn Sie die zugehörige
        Werbeaktion aktivieren.

        Verwenden Sie diesen Endpunkt, um eine Gutscheinaktion zu deaktivieren.
      operationId: deactivate-coupon
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Gutschein wurde erfolgreich deaktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Gutscheinaktion deaktivieren
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/daily_chain:
    get:
      description: >-
        Ruft eine Liste der täglichen Belohnungen zur Verwaltung ab.

        <div class="notice"><strong>Hinweis</strong><br><br>Die Methode gibt
        eine paginierte Artikelliste zurück. Der Maximal- und Standardwert
        beträgt <strong>50 Artikel pro Antwort</strong>. Verwenden Sie die
        Parameter `limit` und `offset`, um weitere Seiten bzw. Artikel aus der
        Liste abzurufen. Wenn Sie beispielsweise die Methode mit den
        Parameterwerten "limit = 25" und "offset = 100" aufrufen, sind in der
        Antwort 25 Artikel aufgeführt, beginnend mit dem 101. Artikel in der
        Gesamtliste.</div>
      operationId: admin-get-daily-chains
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
        - $ref: '#/components/parameters/enabled-query-param'
        - $ref: '#/components/parameters/is_expired-daily-chain-query-param'
        - $ref: '#/components/parameters/type-daily-chain-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-list-daily-chains'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der täglichen Belohnungen abrufen
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt eine tägliche Belohnung
      operationId: admin-create-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-daily-chain'
      responses:
        '201':
          $ref: '#/components/responses/201-admin-create-daily-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/422-admin-create-error-list'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung erstellen
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/daily_chain/id/{daily_chain_id}:
    delete:
      description: Löscht eine bestimmte tägliche Belohnung.
      operationId: admin-delete-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      responses:
        '204':
          content: {}
          description: Tägliche Belohnung wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung löschen
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft eine bestimmte tägliche Belohnung zur Verwaltung ab.
      operationId: admin-get-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-daily-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung abrufen
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert eine bestimmte tägliche Belohnung.
      operationId: admin-update-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-daily-chain'
      responses:
        '204':
          content: {}
          description: Tägliche Belohnung wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
        '422':
          $ref: '#/components/responses/422-admin-update-error-list'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung aktualisieren
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/daily_chain/id/{daily_chain_id}/reset:
    post:
      description: >-
        Setzt den Fortschritt aller Nutzer bei der täglichen Belohnung zurück.
        Gilt nur für tägliche Belohnungen vom Typ `rolling`.
      operationId: admin-reset-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      responses:
        '204':
          content: {}
          description: Die tägliche Belohnung wurde zurückgesetzt.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung zurücksetzen
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/daily_chain/id/{daily_chain_id}/toggle:
    put:
      description: Aktiviert oder deaktiviert eine tägliche Belohnung.
      operationId: admin-toggle-daily-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      responses:
        '204':
          content: {}
          description: Die tägliche Belohnung wurde deaktiviert oder aktiviert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
      security:
        - basicAuth: []
      summary: Tägliche Belohnung aktivieren/deaktivieren
      tags:
        - daily-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/items/upsell:
    get:
      description: >-
        Ruft die Informationen zum Upselling im Projekt ab: ob es aktiviert ist,
        die Art des Upsellings und die SKU-Liste der Artikel, die Teil dieses
        Upsellings sind.
      operationId: get-upsell-configurations-for-project-admin
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                upsell:
                  summary: Projekt beinhaltet Upselling
                  value:
                    - is_enabled: true
                      items:
                        - item_id: 1
                          name:
                            de: Name des Artikels
                            en: Item's name
                          sku: com.xsolla.booster_mega_1
                          type: virtual_good
                        - bundle_type: standard
                          item_id: 2
                          name:
                            de: Name des Artikels
                            en: Item's name
                          sku: com.xsolla.booster_mega_2
                          type: bundle
                        - item_id: 3
                          name:
                            en: Mega game
                          sku: com.xsolla.mega_game_1
                          type: unit
                          unit_items:
                            - drm_name: Steam
                              drm_sku: steam_key_1
                              item_id: 4
                              name:
                                en: Mega game steam
                              sku: com.xsolla.mega_game_steam_1
                          unit_type: game
                      type: fixed_list
              schema:
                items:
                  properties:
                    is_enabled:
                      description: Ob Upselling für das Projekt aktiviert ist.
                      example: true
                      type: boolean
                    items:
                      description: >-
                        Die Liste der Artikel-SKU, die Teil des Upsellings im
                        Projekt sind.
                      example:
                        - item_id: 1
                          name:
                            de: Name des Artikels
                            en: Item's name
                          sku: com.xsolla.booster_mega_1
                          type: virtual_good
                      items:
                        properties:
                          bundle_type:
                            $ref: '#/components/schemas/bundle_type'
                          item_id:
                            $ref: '#/components/schemas/item_id'
                          name:
                            $ref: '#/components/schemas/name-localization-object'
                          sku:
                            $ref: '#/components/schemas/sku'
                          type:
                            $ref: '#/components/schemas/item_type'
                          unit_items:
                            description: Spielschlüssel für verschiedene DRMs.
                            items:
                              description: >-
                                Spielschlüssel-Artikel. Repräsentiert ein Spiel
                                auf einer bestimmten Plattform (Steam, GOG
                                usw.).
                              properties:
                                drm_name:
                                  $ref: '#/components/schemas/drm_name'
                                drm_sku:
                                  $ref: '#/components/schemas/drm_sku'
                                item_id:
                                  $ref: '#/components/schemas/item_id'
                                name:
                                  $ref: >-
                                    #/components/schemas/name-localization-object
                                sku:
                                  $ref: '#/components/schemas/sku'
                                type:
                                  $ref: '#/components/schemas/item_type'
                              type: object
                            type: array
                          unit_type:
                            $ref: '#/components/schemas/unit_type'
                        type: object
                      type: array
                    type:
                      description: Die Art des Upsellings.
                      enum:
                        - fixed_list
                        - most_sellable
                        - only_promotions
                      example: fixed_list
                      type: string
                  type: object
                type: array
          description: >-
            Die Liste der Konfigurationsdetails und Elemente, die im Projekt für
            Upselling verwendet werden.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
      security:
        - XsollaLoginUserJWT: []
      summary: Informationen zum Upselling im Projekt abrufen
      tags:
        - upsell-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt Upselling für ein Projekt.
      operationId: post-upsell
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-upsell'
      responses:
        '202':
          description: Für das Projekt wurde Upselling erstellt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '404':
          $ref: '#/components/responses/Upsell-404-item-not-found'
        '422':
          $ref: '#/components/responses/Upsell-422-invalid-request'
      security:
        - XsollaLoginUserJWT: []
      summary: Upselling erstellen
      tags:
        - upsell-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisieren Sie Upselling für ein Projekt.
      operationId: put-upsell
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-upsell'
      responses:
        '202':
          description: Upselling wurde für das Projekt aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '404':
          $ref: '#/components/responses/Upsell-404-item-not-found'
        '422':
          $ref: '#/components/responses/Upsell-422-invalid-request'
      security:
        - XsollaLoginUserJWT: []
      summary: Upselling aktualisieren
      tags:
        - upsell-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/items/upsell/{toggle}:
    put:
      description: >-
        Ändert den Status von Upselling-Artikeln in einem Projekt auf „aktiv“
        oder „inaktiv“.
      operationId: put-upsell-toggle-active-inactive
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - description: Aktivierungsstatus.
          in: path
          name: toggle
          required: true
          schema:
            example: activate
            type: string
      responses:
        '202':
          description: >-
            Ein Upselling-Artikel in einem Projekt wurde aktiviert oder
            deaktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
      security:
        - XsollaLoginUserJWT: []
      summary: Upselling-Artikel des Projekts aktivieren/deaktivieren
      tags:
        - upsell-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/items/value_points:
    get:
      description: >-
        Ruft die Liste der Wertpunkte innerhalb eines Projekts zu
        Verwaltungszwecken ab.
      operationId: admin-get-value-points-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-value-points'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Wertpunkte abrufen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt einen Wertpunkt.
      operationId: admin-create-value-points
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-value-point'
      responses:
        '201':
          $ref: '#/components/responses/201-admin-create-value-point'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/422-admin-create-update-rc-vp-invalid-request'
      security:
        - basicAuth: []
      summary: Wertpunkt erstellen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/items/value_points/sku/{item_sku}:
    delete:
      description: Löscht einen durch Angabe der SKU festgelegten Wertpunkt.
      operationId: admin-delete-value-point
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/item_sku-path-param'
      responses:
        '204':
          content: {}
          description: Der Wertpunkt wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Wertpunkte löschen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: >-
        Ruft einen durch Angabe der SKU festgelegten Wertpunkt innerhalb eines
        Projekts zu Verwaltungszwecken ab.
      operationId: admin-get-value-point
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/item_sku-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-value-point'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Wertpunkt abrufen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert einen durch Angabe der SKU festgelegten Wertpunkt.
      operationId: admin-update-value-point
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/item_sku-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-value-point'
      responses:
        '204':
          content: {}
          description: Der Wertpunkt wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/422-admin-create-update-rc-vp-invalid-request'
      security:
        - basicAuth: []
      summary: Wertpunkt aktualisieren
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/items/{value_point_sku}/value_points/rewards:
    delete:
      description: Entfernt Wertpunktbelohnungen von ALLEN Artikeln.
      operationId: admin-delete-items-value-point-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/value_point_sku-path-param'
      responses:
        '204':
          content: {}
          description: Wertpunktbelohnungen für Artikel wurden erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Wertpunkte von Artikeln löschen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: >-
        Ruft eine Liste aller Artikel mit Wertpunkten innerhalb eines Projekts
        zu Verwaltungszwecken ab.
      operationId: admin-get-items-value-point-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/value_point_sku-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-list-value-point-rewards'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Artikel mit Wertpunkten abrufen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    patch:
      description: >-
        Aktualisiert die Anzahl der Wertpunkte für einen oder mehrere Artikel
        teilweise anhand der SKU des Artikels. Nutzer erhalten Wertpunkte nach
        dem Kauf der angegebenen Artikel.


        Grundregeln für die Aktualisierung von Wertpunkten:
          * Wenn einem Artikel noch keine Wertpunkte zugewiesen sind, werden diese durch das Senden eines Wertes ungleich Null in das Feld `amount` eingetragen.
          * Wenn einem Artikel bereits Wertpunkte zugewiesen sind, werden die im Feld `amount` angegebenen Wertpunkte durch das Senden eines Wertes ungleich Null überschrieben.
          * Wenn`amount` auf 0 festgelgt wird, werden die vorhandenen Wertpunkte für diesen Artikel gelöscht.

        Im Gegensatz zur `PUT`-Methode ([Wertpunkte für Artikel
        festlegen](https://developers.xsolla.com/de/api/shop-builder/operation/admin-set-items-value-point-reward/)),
        werden bei dieser `PATCH`-Methode nicht alle vorhandenen
        Artikel-Wertpunkte im Projekt überschrieben, sondern nur die Wertpunkte
        der angegebenen Artikel aktualisiert.


        Mit einer einzelnen Anfrage können bis zu 100 Artikel aktualisiert
        werden. Doppelt vorhandene Artikel-SKUs dürfen nicht in derselben
        Anfrage enthalten sein.
      operationId: admin-patch-items-value-point-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/value_point_sku-path-param'
      requestBody:
        $ref: '#/components/requestBodies/set-item-value-point-reward-for-patch'
      responses:
        '204':
          content: {}
          description: Wertpunktbelohnungen für Artikel wurden erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/sellable-item-by-sku_404'
      security:
        - basicAuth: []
      summary: Wertpunkte für Artikel teilweise aktualisieren
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: >-
        Weist einem oder mehreren Artikeln durch Angabe der entsprechenden SKU
        Wertpunkte zu. Nutzer erhalten Wertpunkte, nachdem sie diese Artikel
        gekauft haben.

         Beachten Sie, dass diese PUT-Anfrage alle zuvor festgelegten Wertpunkte für Artikel im Projekt überschreibt.

        Um ein unbeabsichtigtes Löschen von Wertpunkten zu vermeiden, müssen
        alle Artikel und ihre jeweiligen Wertpunkte in jeder PUT-Anfrage
        angegeben sein.


        Wenn Sie nur die Wertpunkte für einen bestimmten Artikel aktualisieren
        und die Wertpunkte anderer Artikel unverändert lassen möchten, sollten
        Sie den aktuellen Satz Wertpunkte mithilfe einer GET-Anfrage abrufen,
        die Wertpunkte des gewünschten Artikels ändern und dann den geänderten
        Satz mit den aktualisierten Wertpunkten für den entsprechenden Artikel
        zurücksenden.
      operationId: admin-set-items-value-point-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/value_point_sku-path-param'
      requestBody:
        $ref: '#/components/requestBodies/set-item-value-point-reward'
      responses:
        '204':
          content: {}
          description: Wertpunktbelohnungen für Artikel wurden erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/sellable-item-by-sku_404'
      security:
        - basicAuth: []
      summary: Wertpunkte für Artikel festlegen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/offer_chain:
    get:
      description: >-
        Ruft eine Liste der Angebotsketten zur Verwaltung ab.

        <div class="notice"><strong>Hinweis</strong><br><br>In allen Projekten
        ist die Anzahl der Artikel, die in einer einzigen Antwort zurückgegeben
        werden können, begrenzt. Der Standard- und Maximalwert beträgt
        <strong>10 Artikel pro Antwort</strong>. Verwenden Sie die
        Abfrageparameter <code>limit</code> und <code>offset</code> für die
        Paginierung, um weitere Daten abzurufen.</div>
      operationId: admin-get-offer-chains
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
        - $ref: '#/components/parameters/enabled-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-list-offer-chains'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Angebotsketten abrufen
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt eine Angebotskette.
      operationId: admin-create-offer-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-offer-chain'
      responses:
        '201':
          $ref: '#/components/responses/201-admin-create-offer-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/422-create-error-list'
      security:
        - basicAuth: []
      summary: Angebotskette erstellen
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}:
    delete:
      description: |-
        Löscht eine bestimmte Angebotskette.

         Nach dem Löschen:<ul><li> verbleiben alle bereits von den Nutzern erhaltenen Belohnungen in deren Besitz.</li><li>sind unvollendete Schritte nicht mehr verfügbar und zugehörige Belohnungen können nicht mehr erhalten werden.</li></ul>

         Im Gegensatz zur Deaktivierung der Angebotskette über den Aufruf <a href="/api/shop-builder/operation/admin-toggle-offer-chain"> Angebotskette aktivieren/deaktivieren</a>, ist die Löschung ist unumkehrbar und der Nutzerfortschritt wird nicht gespeichert.
      operationId: admin-delete-offer-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
      responses:
        '204':
          content: {}
          description: Angebotskette wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-not-found'
      security:
        - basicAuth: []
      summary: Angebotskette löschen
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft eine bestimmte Angebotskette zur Verwaltung ab.
      operationId: admin-get-offer-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-offer-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-not-found'
      security:
        - basicAuth: []
      summary: Angebotskette abrufen
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert eine bestimmte Angebotskette.
      operationId: admin-update-offer-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-offer-chain'
      responses:
        '204':
          content: {}
          description: Angebotskette wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-not-found'
        '422':
          $ref: '#/components/responses/422-update-error-list'
      security:
        - basicAuth: []
      summary: Angebotskette aktualisieren
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}/toggle:
    put:
      description: >-
        Aktiviert oder deaktiviert eine Angebotskette.


        Wenn die Angebotskette deaktiviert ist, verlieren Nutzer vorübergehend
        den Zugriff darauf, ihr Fortschritt bleibt jedoch erhalten.


        Nachdem die Angebotskette erneut aktiviert wurde, können Nutzer an der
        Stelle fortfahren, an der sie aufgehört haben.
      operationId: admin-toggle-offer-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
      responses:
        '204':
          content: {}
          description: Die Angebotskette wurde deaktiviert/aktiviert.
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-not-found'
      security:
        - basicAuth: []
      summary: Angebotskette aktivieren/deaktivieren
      tags:
        - offer-chain-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promocode/{external_id}/activate:
    put:
      description: >-
        Aktiviert eine Promocode-Aktion.


        Die erstellte Promocode-Aktion ist standardmäßig deaktiviert.

        Promocodes lassen sich erst einlösen, wenn Sie die zugehörige
        Werbeaktion aktivieren.

        Verwenden Sie diesen Endpunkt, um eine Promocode-Aktion zu aktivieren.
      operationId: activate-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Promocode wurde erfolgreich aktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Promocode-Aktion aktivieren
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promocode/{external_id}/code:
    get:
      description: Ruft Codes einer Promocode-Aktion ab.
      operationId: get-promocode-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-promocode-code-list'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Codes von Promocode-Aktion abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt Code für eine Promocode-Aktion.
      operationId: create-promo-code-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-coupon-promocode-code'
      responses:
        '201':
          $ref: '#/components/responses/Promotions_201-coupon-promocode-code-created'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-coupon-promocode-same-code-exists
      security:
        - basicAuth: []
      summary: Code für Promocode-Aktion erstellen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promocode/{external_id}/code/generate:
    put:
      description: Generiert Codes für eine Promocode-Aktion.
      operationId: generate-promo-code-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  $ref: '#/components/schemas/Promotions_coupon-generate-count'
              required:
                - count
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    count: 10
              schema:
                properties:
                  count:
                    $ref: '#/components/schemas/Promotions_coupon-generate-count'
                type: object
          description: Codes wurden erfolgreich generiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Codes für eine Promocode-Aktion generieren
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promocode/{external_id}/deactivate:
    put:
      description: >-
        Deaktiviert eine Promocode-Aktion.


        Die erstellte Promocode-Aktion ist standardmäßig deaktiviert.

        Promocodes lassen sich erst einlösen, wenn Sie die zugehörige
        Werbeaktion aktivieren.

        Verwenden Sie diesen Endpunkt, um eine Promocode-Aktion zu deaktivieren.
      operationId: deactivate-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Gutschein wurde erfolgreich deaktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Promocode-Aktion deaktivieren
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promotion/{promotion_id}/activate:
    put:
      description: Aktiviert eine Werbeaktion.
      operationId: activate-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '204':
          description: Werbeaktion wurde erfolgreich aktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/Promotions_422-activate-deactivate-promotion'
      security:
        - basicAuth: []
      summary: Werbeaktion aktivieren
      tags:
        - promotions-common
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/promotion/{promotion_id}/deactivate:
    put:
      description: Deaktiviert eine Werbeaktion.
      operationId: deactivate-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '204':
          description: Werbeaktion wurde erfolgreich deaktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/Promotions_422-activate-deactivate-promotion'
      security:
        - basicAuth: []
      summary: Werbeaktion deaktivieren
      tags:
        - promotions-common
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/unique_catalog_offer/{external_id}/activate:
    put:
      description: >-
        Aktiviert ein Katalogsonderangebot.
         Das erstellte Katalogsonderangebot ist standardmäßig deaktiviert.
        Das Angebot kann erst eingelöst werden, nachdem Sie es aktiviert haben.

        Verwenden Sie diesen Endpunkt, um eine Gutscheinaktion freizuschalten
        und zu aktivieren.
      operationId: activate-unique-catalog-offer
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Das Katalogsonderangebot wurde erfolgreich aktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Katalogsonderangebot aktivieren
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/unique_catalog_offer/{external_id}/code:
    get:
      description: Ruft Codes für Katalogsonderangebote ab.
      operationId: get-unique-catalog-offer-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-unique-catalog-offer-code-list'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Codes für Katalogsonderangebote abrufen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt einen Code für Katalogsonderangebote.
      operationId: create-unique-catalog-offer-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-coupon-promocode-code'
      responses:
        '201':
          $ref: '#/components/responses/Promotions_201-coupon-promocode-code-created'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-coupon-promocode-same-code-exists
      security:
        - basicAuth: []
      summary: Code für Katalogsonderangebote erstellen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/unique_catalog_offer/{external_id}/code/generate:
    put:
      description: Generiert Codes für Katalogsonderangebote.
      operationId: generate-unique-catalog-offer-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        content:
          application/json:
            schema:
              properties:
                count:
                  $ref: '#/components/schemas/Promotions_coupon-generate-count'
              required:
                - count
              type: object
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    count: 10
              schema:
                properties:
                  count:
                    $ref: '#/components/schemas/Promotions_coupon-generate-count'
                type: object
          description: Die Codes wurden erfolgreich generiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Codes für Katalogsonderangebote generieren
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/unique_catalog_offer/{external_id}/deactivate:
    put:
      description: |-
        Deaktiviert ein Katalogsonderangebot.
         Das erstellte Katalogsonderangebot ist standardmäßig deaktiviert.
        Das Angebot kann erst eingelöst werden, nachdem Sie es aktiviert haben.
        Verwenden Sie diesen Endpunkt, um eine Gutscheinaktion zu deaktivieren.
      operationId: deactivate-unique-catalog-offer
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Katalogsonderangebot wurde erfolgreich deaktiviert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-admin-promotion-error'
      security:
        - basicAuth: []
      summary: Katalogsonderangebot deaktivieren
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/attribute/rule:
    get:
      description: Ruft alle Regeln ab, die für Benutzerattribute gelten.
      operationId: get-filter-rules
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
        - $ref: '#/components/parameters/is_enabled-query-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    has_more: true
                    items:
                      - attribute_conditions:
                          - attribute: race
                            can_be_missing: false
                            operator: eq
                            type: string
                            value: ork
                        is_enabled: true
                        is_satisfied_for_unauth: false
                        items:
                          - item_id: 1
                            name: Ork Armor
                            sku: com.xsolla.ork_armor_1
                            type: virtual_good
                          - bundle_type: standard
                            item_id: 2
                            name: Potion pack
                            sku: com.xsolla.potion_pack_1
                            type: bundle
                        name: Ork race armor rule
                        rule_id: 1
                    total_items_count: 20
              schema:
                properties:
                  has_more:
                    description: Wenn eine andere Seite mit Regeln existiert.
                    type: boolean
                  items:
                    items:
                      $ref: '#/components/schemas/user-attribute_personalized-catalog'
                    type: array
                  total_items_count:
                    description: Gesamtzahl der Regeln.
                    type: number
                type: object
          description: Regeln wurden erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Common_401-complex'
        '403':
          $ref: '#/components/responses/403-auth-header-not-sent'
      security:
        - basicAuth: []
      summary: Liste der Katalogfilterregeln abrufen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt Regeln für Benutzerattribute.
      operationId: create-filter-rule
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/personalized-catalog_create-update-body'
      responses:
        '201':
          content:
            application/json:
              examples:
                response:
                  value:
                    rule_id: 1
              schema:
                properties:
                  rule_id:
                    description: Regel-ID.
                    type: number
                type: object
          description: Regel wurde erfolgreich erstellt.
        '401':
          $ref: '#/components/responses/Common_401-complex'
        '422':
          $ref: '#/components/responses/Common_422-body-validation'
      security:
        - basicAuth: []
      summary: Katalogfilterregel erstellen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/attribute/rule/all:
    get:
      description: >-
        Ruft eine Liste aller Katalogregeln zum clientseitigen Durchsuchen ab.

        <div class="notice"><strong>Achtung</strong><br><br>Gibt nur die
        Regel-ID, den Namen und is_enabled zurück</div>
      operationId: get-all-filter-rules
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    items:
                      - is_enabled: true
                        is_satisfied_for_unauth: false
                        name: Ork race armor rule
                        rule_id: 1
                      - is_enabled: false
                        is_satisfied_for_unauth: false
                        name: Age
                        rule_id: 2
              schema:
                properties:
                  items:
                    items:
                      $ref: >-
                        #/components/schemas/user-attribute_personalized-catalog_all
                    type: array
                type: object
          description: Regeln wurden erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Common_401-complex'
        '403':
          $ref: '#/components/responses/403-auth-header-not-sent'
      security:
        - basicAuth: []
      summary: Alle Katalogregeln zum clientseitigen Durchsuchen abrufen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/attribute/rule/{rule_id}:
    delete:
      description: Löscht eine bestimmte Regel.
      operationId: delete-filter-rule-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/personalized-catalog-rule_id-path-param'
      responses:
        '204':
          description: Löschen war erfolgreich.
        '401':
          $ref: '#/components/responses/Common_401-complex'
      security:
        - basicAuth: []
      summary: Katalogfilterregel löschen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Bestimmte für Benutzerattribute geltende Regel abrufen
      operationId: get-filter-rule-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/personalized-catalog-rule_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    attribute_conditions:
                      - attribute: race
                        can_be_missing: false
                        operator: eq
                        type: string
                        value: ork
                    is_enabled: true
                    is_satisfied_for_unauth: true
                    items:
                      - item_id: 1
                        name: Ork Armor
                        sku: com.xsolla.ork_armor_1
                    name: Ork race armor rule
                    rule_id: 1
              schema:
                $ref: '#/components/schemas/user-attribute_personalized-catalog'
          description: Die Regel wurde erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Common_401-complex'
      security:
        - basicAuth: []
      summary: Katalogfilterregel abrufen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    patch:
      description: >-
        Aktualisiert eine bestimmte Regel, die für Benutzerattribute gilt. Bei
        einer unbestimmten Eigenschaft wird der aktuelle Wert verwendet.
      operationId: patch-filter-rule-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/personalized-catalog-rule_id-path-param'
      requestBody:
        content:
          application/json:
            example:
              is_enabled: false
            schema:
              $ref: '#/components/schemas/user-attribute_personalized-catalog-body'
      responses:
        '204':
          description: Update war erfolgreich.
        '401':
          $ref: '#/components/responses/Common_401-complex'
        '422':
          $ref: '#/components/responses/Common_422-body-validation'
      security:
        - basicAuth: []
      summary: Katalogfilterregel patchen
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: >-
        Aktualisiert eine bestimmte Regel, die für Benutzerattribute gilt. Bei
        einer unbestimmten Eigenschaft wird der Standardwert verwendet (wenn die
        Eigenschaft nicht erforderlich ist).
      operationId: update-filter-rule-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/personalized-catalog-rule_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/personalized-catalog_create-update-body'
      responses:
        '204':
          description: Erfolgreiche Aktualisierung.
        '401':
          $ref: '#/components/responses/Common_401-complex'
        '422':
          $ref: '#/components/responses/Common_422-body-validation'
      security:
        - basicAuth: []
      summary: Katalogfilterregel aktualisieren
      tags:
        - personalized-catalog
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/limit/coupon/external_id/{external_id}:
    get:
      description: >-
        Ruft ab, wie oft der angegebene Nutzer den Gutschein noch in Anspruch
        nehmen kann.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer einen Gutschein in Anspruch nehmen kann. Das Nutzerlimit
        können Sie im Abschnitt "Verwaltung" festlegen:

        *
        [Gutscheine](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-coupons/)
      operationId: get-coupon-user-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/user_external_id-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-coupon-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Coupon not found:
                  $ref: '#/components/examples/404-coupon-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/Promotions_422-invalid-coupon'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Gutschein-Limit für den angegebenen Benutzer abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/limit/promocode/external_id/{external_id}:
    get:
      description: >-
        Ruft ab, wie oft der angegebene Nutzer den Promocode in Anspruch nehmen
        kann.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer einen Promocode in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Abschnitt "Verwaltung":

        *
        [Promocodes](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-promo-codes/)
      operationId: get-promo-code-user-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
        - $ref: '#/components/parameters/user_external_id-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-promo-code-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Promo code not found:
                  $ref: '#/components/examples/404-coupon-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/Promotions_422-invalid-coupon'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Promo-Code-Limit für den angegebenen Benutzer abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/limit/promotion/all:
    delete:
      description: >-
        Aktualisiert alle für den angegebenen Nutzer geltenden
        Werbeaktionslimits, sodass er diese Werbeaktionen wieder in Anspruch
        nehmen kann.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Abschnitt "Verwaltung"
        der gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: reset-all-user-promotions-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/reset-user-limits'
      responses:
        '200':
          description: Das Werbeaktionslimit wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Alle Werbeaktionslimits für den angegebenen Benutzer aktualisieren
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/limit/promotion/id/{promotion_id}:
    delete:
      description: >-
        Verringert die Anzahl der verbleibenden Male, die der angegebene Nutzer
        eine Werbeaktion innerhalb des geltenden Limits in Anspruch nehmen darf.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Bereich "Verwaltung" der
        gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: remove-user-promotion-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-user-limits-strict'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-promotion-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Item not found:
                  $ref: '#/components/examples/404-promotion-by-id-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Available promotion limit is out of range:
                  $ref: >-
                    #/components/examples/422-promotion-out-of-range-available-user-limit
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
                Promotion does not have configured user limits:
                  $ref: '#/components/examples/422-promotion-without-user-limit'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Werbeaktionslimit für angegebenen Benutzer herabsetzen
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: >-
        Ruft ab, wie oft die der angegebene Nutzer die Werbeaktion innerhalb des
        geltenden Limits noch in Anspruch nehmen darf.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Bereich "Verwaltung" der
        gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: get-user-promotion-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
        - $ref: '#/components/parameters/user_external_id-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-promotion-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Item not found:
                  $ref: '#/components/examples/404-promotion-by-id-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
                Promotion does not have configured user limits:
                  $ref: '#/components/examples/422-promotion-without-user-limit'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Werbeaktionslimit für angegebenen Benutzer abrufen
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: >-
        Erhöht die Anzahl der verbleibenden Male, die der angegebene Nutzer die
        Werbeaktion innerhalb des geltenden Limits in Anspruch nehmen darf.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Bereich "Verwaltung" der
        gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: add-user-promotion-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-user-limits-strict'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-promotion-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Item not found:
                  $ref: '#/components/examples/404-promotion-by-id-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Available promotion limit is out of range:
                  $ref: >-
                    #/components/examples/422-promotion-out-of-range-available-user-limit
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
                Promotion does not have configured user limits:
                  $ref: '#/components/examples/422-promotion-without-user-limit'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Werbeaktionslimit für angegebenen Benutzer erhöhen
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: >-
        Legt fest, wie oft der angegebene Nutzer eine Werbeaktion innerhalb des
        geltenden Limits in Anspruch nehmen darf, nachdem das Limit erhöht oder
        herabgesetzt wurde.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Abschnitt "Verwaltung"
        der gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: set-user-promotion-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-user-limits-flexible'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-user-promotion-limits'
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Item not found:
                  $ref: '#/components/examples/404-promotion-by-id-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
                Promotion does not have configured user limits:
                  $ref: '#/components/examples/422-promotion-without-user-limit'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Werbeaktionslimit für angegebenen Benutzer festlegen
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/admin/user/limit/promotion/id/{promotion_id}/all:
    delete:
      description: >-
        Aktualisiert das Werbaaktionslimit, damit ein Nutzer diese Aktion erneut
        in Anspruch nehmen kann. Ist dem Parameter *user* der Wert `null`
        zugewiesen, wird das Limit für alle Nutzer aktualisiert.


        Mit der entsprechenden API (User limit API) können Sie begrenzen, wie
        oft ein Nutzer eine Werbeaktion in Anspruch nehmen kann. Um das
        Nutzerlimit zu konfigurieren, wechseln Sie zum Abschnitt "Verwaltung"
        der gewünschten Werbeaktionsart:

        *
        [Rabattaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-discounts/)

        *
        [Bonusaktionen](https://developers.xsolla.com/de/api/shop-builder/tag/promotions-bonuses/)
      operationId: reset-user-promotion-limit
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/reset-user-limits-flexible'
      responses:
        '200':
          description: Das Werbeaktionslimit wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Common_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                Item not found:
                  $ref: '#/components/examples/404-promotion-by-id-not-found'
                User not found:
                  $ref: '#/components/examples/404-user-not-found'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Artikel nicht gefunden.
        '422':
          content:
            application/json:
              examples:
                Invalid user_external_id:
                  $ref: '#/components/examples/422-user_external_id_invalid'
                Promotion does not have configured user limits:
                  $ref: '#/components/examples/422-promotion-without-user-limit'
              schema:
                properties:
                  errorCode:
                    type: integer
                  errorMessage:
                    type: string
                  errorMessageExtended:
                    type: array
                  statusCode:
                    type: integer
                  transactionId:
                    type: string
                type: object
          description: Ungültige Anfrage.
      security:
        - basicAuth: []
      summary: Werbeaktionslimit für Benutzer aktualisieren
      tags:
        - user-limits-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v2/project/{project_id}/coupon/code/{coupon_code}/rewards:
    get:
      description: >-
        Ruft Gutscheinbelohnungen anhand des Codes ab.

        Dadurch können Nutzer aus mehreren Bonusartikeln wählen.

        Als Normalfall gilt die Wahl eines DRM-Systems, wenn der Gutschein ein
        Spiel als Bonus enthält (`type=unit`).
      operationId: get-coupon-rewards-by-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/coupon_code-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-coupon-rewards'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '404':
          $ref: '#/components/responses/Promotions_404-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-rewards'
      security:
        - XsollaLoginUserJWT: []
      summary: Gutscheinbelohnung abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/coupon/redeem:
    post:
      description: >-
        Löst einen Gutscheincode ein. Der Nutzer erhält nach dem Einlösen eines
        Gutscheins einen Bonus.
      operationId: redeem-coupon
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_redeem-coupon-model'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-coupon-redeemed'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '404':
          $ref: '#/components/responses/Promotions_404-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-redeem-coupon'
      security:
        - XsollaLoginUserJWT: []
      summary: Gutscheincode einlösen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/items/upsell:
    get:
      description: >-
        Ruft eine Liste der Upselling-Artikel in einem Projekt ab, wenn diese
        bereits eingerichtet wurden.
      operationId: get-upsell-for-project-client
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Upsell-200-get-client-list'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
      security:
        - XsollaLoginUserJWT: []
      summary: Liste der Upselling-Artikel im Projekt abrufen
      tags:
        - upsell-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/promocode/code/{promocode_code}/rewards:
    get:
      description: >-
        Ruft Promocode-Belohnungen anhand des Codes ab.

        Dadurch können Nutzer aus mehreren Bonusartikeln wählen.

        Als Normalfall gilt die Wahl eines DRM-Systems, wenn der Promocode ein
        Spiel als Bonus enthält (`type=unit`).
      operationId: get-promo-code-rewards-by-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promocode_code-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-promocode-rewards'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '404':
          $ref: '#/components/responses/Promotions_404-promo-code'
        '422':
          $ref: '#/components/responses/Promotions_422-rewards'
      security:
        - XsollaLoginUserJWT: []
      summary: Promocode-Belohnungen abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/promocode/redeem:
    post:
      description: >-
        Löst einen Promocode aus einer Werbeaktion ein.

        Nach dem Einlösen eines Promocodes erhält der Nutzer kostenlose Artikel
        und/oder der Preis des Warenkorbs und/oder bestimmter Artikel wird
        reduziert.
      operationId: redeem-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_redeem-promo-code-model'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-promo-code-redeemed'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '404':
          $ref: '#/components/responses/Promotions_404-promo-code'
        '422':
          $ref: '#/components/responses/Promotions_422-redeem-coupon'
      security:
        - AuthForCart: []
      summary: Promocode einlösen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/promocode/remove:
    put:
      description: >-
        Entfernt einen Promocode aus einem Warenkorb.

        Nachdem der Promocode entfernt wurde, wird der Gesamtpreis aller Artikel
        im Warenkorb neu berechnet, ohne die durch einen Promocode sich
        ergebenden Boni und Rabatte.
      operationId: remove-cart-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_cancel-promo-code-model'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-promo-code-canceled'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '422':
          $ref: '#/components/responses/Promotions_422-cancel-promo-code'
      security:
        - AuthForCart: []
      summary: Promocode aus Warenkorb entfernen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/promotion/code/{code}/verify:
    get:
      description: >-
        Prüft, ob es sich bei dem Code um einen Promocode oder einen
        Gutscheincode handelt und ob der Nutzer ihn anwenden kann.
      operationId: verify-promotion-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/code-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-verify-promo-code'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '403':
          $ref: '#/components/responses/Promotions_403-auth-header'
        '404':
          $ref: '#/components/responses/Promotions_404-verify-promo-code'
        '422':
          $ref: '#/components/responses/Promotions_422-verify-promo-code'
      security:
        - XsollaLoginUserJWT: []
      summary: Aktionscode überprüfen
      tags:
        - promotions-common
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/clan/contributors/{reward_chain_id}/top:
    get:
      description: >-
        Ruft die Top-10-Liste der Personen ab, die am meisten zur angegebenen
        Belohnungskette des Clans des aktuellen Nutzers beigetragen haben. Wenn
        ein Nutzer keinem Clan angehört, gibt der Aufruf ein leeres Array
        zurück.
      operationId: get-user-clan-top-contributors
      parameters:
        - description: Projekt-ID.
          in: path
          name: project_id
          required: true
          schema:
            example: 44056
            type: integer
        - description: Belohnungsketten-ID.
          in: path
          name: reward_chain_id
          required: true
          schema:
            example: 101
            type: integer
      responses:
        '200':
          content:
            application/json:
              examples:
                clan:
                  summary: Der Nutzer gehört einem Clan an
                  value:
                    - contributed_amount: 555
                      name: winner
                    - contributed_amount: 398
                      name: Rocket
                    - contributed_amount: 201
                      name: MrJoe
                    - contributed_amount: 1
                      name: beginner
                without-clan:
                  summary: Der Nutzer gehört keinem Clan an
                  value: []
              schema:
                items:
                  properties:
                    contributed_amount:
                      description: Die Anzahl der vom Nutzer beigesteuerten Wertpunkte.
                      example: 100
                      type: integer
                    name:
                      description: >-
                        Benutzer-ID. Die ID, die während der Autorisierung an
                        Xsolla gesendet wird und über die der Nutzer Ihrem
                        Xsolla-Login-Projekt zugeordnet ist.
                      example: Rocket
                      type: string
                  type: object
                type: array
          description: >-
            Die Top-10-Liste der Personen, die am meisten zur
            Clan-Belohnungskette beigetragen haben.
      security:
        - XsollaLoginUserJWT: []
      summary: >-
        Top-10-Liste der Personen abrufen, die am meisten zur
        Clan-Belohnungskette beigetragen haben
      tags:
        - clan-reward-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/clan/update:
    put:
      description: >-
        Aktualisiert den Clan eines aktuellen Nutzers über Benutzerattribute.
        Sichert alle Belohnungen aus Belohnungsketten, solange diese nicht für
        einen vorherigen Clan gesichert wurden, und gibt sie in der Antwort
        zurück. Wenn der Nutzer früher einem Clan angehörte und jetzt nicht
        mehr, wird seine Zugehörigkeit zu diesem Clan widerrufen. Wenn der
        Nutzer den Clan gewechselt hat, wird der Clan geändert.
      operationId: user-clan-update
      parameters:
        - description: Projekt-ID.
          in: path
          name: project_id
          required: true
          schema:
            default: 44056
            type: integer
      responses:
        '200':
          $ref: '#/components/responses/200-client-update-user-clan'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
      security:
        - XsollaLoginUserJWT: []
      summary: Den Clan des aktuellen Nutzers aktualisieren
      tags:
        - clan-reward-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/daily_chain:
    get:
      description: >-
        Client-Endpunkt. Ruft die täglichen Belohnungen des aktuellen Nutzers
        ab.

        <div class="notice"><strong>Hinweis</strong><br><br>Die Methode gibt
        eine paginierte Artikelliste zurück. Der Maximal- und Standardwert
        beträgt <strong>50 Artikel pro Antwort</strong>. Verwenden Sie die
        Parameter `limit` und `offset`, um weitere Seiten bzw. Artikel aus der
        Liste abzurufen. Wenn Sie beispielsweise die Methode mit den
        Parameterwerten "limit = 25" und "offset = 100" aufrufen, sind in der
        Antwort 25 Artikel aufgeführt, beginnend mit dem 101. Artikel in der
        Gesamtliste.</div>
      operationId: get-daily-chains-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-client-get-daily-chains-list'
        '401':
          $ref: '#/components/responses/401-client-auth-error'
      security:
        - XsollaLoginUserJWT: []
      summary: Tägliche Belohnungen des aktuellen Nutzers abrufen
      tags:
        - daily-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/daily_chain/{daily_chain_id}:
    get:
      description: >-
        Client-Endpunkt. Ruft die tägliche Belohnung des aktuellen Nutzers
        anhand der Belohnungs-ID ab.
      operationId: get-user-daily-chain-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  $ref: '#/components/examples/200-client-daily-chain'
              schema:
                $ref: '#/components/schemas/client-daily-chain-model'
          description: Die tägliche Belohnung des Nutzers wurde erfolgreich abgerufen.
        '404':
          $ref: '#/components/responses/404-daily-chain-not-found'
      security:
        - XsollaLoginUserJWT: []
      summary: >-
        Tägliche Belohnung des aktuellen Nutzers anhand der Belohnungs-ID
        abrufen
      tags:
        - daily-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/daily_chain/{daily_chain_id}/step/number/{step_number}/claim:
    post:
      description: >-
        Client-Endpunkt. Beansprucht die Schrittbelohnung aus einer täglichen
        Belohnung für den aktuellen Nutzer. Alle Schritte können nur in
        fortlaufender Reihenfolge beansprucht werden. Die Belohnung für einen
        verpassten Schritt kann nicht gegen virtuelle oder reale Währung oder
        durch das Ansehen einer Werbeanzeige erlangt werden.
      operationId: claim-user-daily-chain-step-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/daily_chain_id-path-param'
        - $ref: '#/components/parameters/daily_chain_step_number-path-param'
      responses:
        '204':
          description: >-
            Schrittbelohnung des täglichen Belohnungsschritt wurde erfolgreich
            für den aktuellen Nutzer beansprucht.
        '401':
          $ref: '#/components/responses/401-client-auth-error'
        '404':
          $ref: '#/components/responses/404-daily-chain-step-not-found'
        '422':
          content:
            application/json:
              examples:
                invalid-step:
                  $ref: >-
                    #/components/examples/422-daily-chain-claim-error-invalid-step
              schema:
                $ref: '#/components/schemas/daily-chain-error-model'
          description: Der Schritt kann nicht beansprucht werden.
      security:
        - XsollaLoginUserJWT: []
      summary: Täglichen Belohnungsschritt beanspruchen
      tags:
        - daily-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/offer_chain:
    get:
      description: >-
        Ruft die aktuellen Angebotsketten des Nutzers ab.

        <div class="notice"><strong>Hinweis</strong><br><br>In allen Projekten
        ist die Anzahl der Artikel, die in einer einzigen Antwort zurückgegeben
        werden können, begrenzt. Der Standard- und Maximalwert beträgt
        <strong>30 Artikel pro Antwort</strong>. Verwenden Sie die
        Abfrageparameter <code>limit</code> und <code>offset</code> für die
        Paginierung, um weitere Daten abzurufen.</div>
      operationId: get-offer-chains-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-client-get-offer-chains-list'
      security:
        - XsollaLoginUserJWT: []
      summary: Angebotsketten des aktuellen Nutzers abrufen
      tags:
        - offer-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/offer_chain/{offer_chain_id}:
    get:
      description: >-
        Ruft die Angebotskette des aktuellen Nutzers anhand der
        Angebotsketten-ID ab.
      operationId: get-user-offer-chain-by-id
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  $ref: '#/components/examples/200-client-offer-chain'
              schema:
                $ref: '#/components/schemas/client-offer-chain-model'
          description: Die Angebotskette des Nutzers wurde erfolgreich abgerufen.
        '404':
          $ref: '#/components/responses/404-offer-chain-not-found'
      security:
        - XsollaLoginUserJWT: []
      summary: Angebotskette des aktuellen Nutzers anhand der ID abrufen
      tags:
        - offer-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/offer_chain/{offer_chain_id}/step/number/{step_number}/claim:
    post:
      description: >-
        Schließt den aktuellen Fortschritt des Nutzers in der Angebotskette ab
        und gewährt die zugehörige Belohnung.

        <div class="notice">
          <strong>Hinweis</strong><br><br>
            Verwenden Sie diesen Aufruf nur bei kostenlosen Schritten in der Angebotskette.
            Bei Schritten, die eine Zahlung in echter Währung erfordern, müssen Sie stattdessen den Aufruf <a href="/api/shop-builder/operation/order-user-offer-chain-step-reward">Bestellung für kostenpflichtigen Angebotskettenschritt anlegen</a> verwenden.
        </div>
      operationId: claim-user-offer-chain-step-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
        - $ref: '#/components/parameters/offer_chain_step_number-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    order_id: 641
              schema:
                properties:
                  order_id:
                    description: Bestell-ID.
                    type: integer
                type: object
          description: >-
            Der kostenlose Schritt wurde erfolgreich in Anspruch genommen und
            die Belohnung gewährt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-step-not-found'
        '422':
          content:
            application/json:
              examples:
                invalid-step:
                  $ref: >-
                    #/components/examples/422-offer-chain-claim-error-invalid-step
              schema:
                $ref: '#/components/schemas/offer-chain-error-model'
          description: >-
            Der Schritt kann nicht in Anspruch genommen werden. Stellen Sie
            sicher, dass alle vorherigen Schritte abgeschlossen sind und der
            Schritt als kostenlos gekennzeichnet ist.
      security:
        - XsollaLoginUserJWT: []
      summary: Kostenlosen Angebotskettenschritt sichern
      tags:
        - offer-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/offer_chain/{offer_chain_id}/step/number/{step_number}/order:
    post:
      description: "Legt eine Bestellung für den Artikel an, der mit dem angegebenen kostenpflichtigen Angebotskettenschritt verknüpft ist. Der angelegten Bestellung wird der Status `new` zugewiesen.\n\n Öffnen Sie das Zahlungsportal in einem neuen Fenster mithilfe des folgenden Links: `https://secure.xsolla.com/paystation4/?token={token}`, wobei `{token}` der erhaltene Token ist.\n\nFür Testzwecke steht Ihnen die folgende URL zur Verfügung: `https://sandbox-secure.xsolla.com/paystation4/?token={token}`.\n\n<div class=\"notice\">\n  <strong>Hinweis</strong> <br><br>\n    Diese Methode muss clientseitig verwendet werden. Anhand der IP-Adresse des Nutzers wird das Land ermittelt und davon wiederum die Währung und die verfügbaren Zahlungsmethoden abgeleitet. Wird diese Methode serverseitig verwendet, wird mögliccherweise eine falsche Währung ermittelt, was sich wiederum auf die Zahlungsmethoden in <a href=\"https://developers.xsolla.com/de/doc/pay-station/\">Pay\_Station</a> auswirkt.\n</div><br>\n\n<div class=\"notice\">\n  <strong>Hinweis</strong><br><br>\nVerwenden Sie diesen Aufruf nur bei kostenpflichtigen Schritten in der Angebotskette.\n Bei kostenlosen Schritten müssen Sie stattdessen den Aufruf <a href=\"/api/shop-builder/operation/claim-user-offer-chain-step-reward\">Kostenlosen Angebotskettenschritt sichern</a> verwenden.\n</div>"
      operationId: order-user-offer-chain-step-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/offer_chain_id-path-param'
        - $ref: '#/components/parameters/offer_chain_step_number-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Cart-Payment_200-order-created'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '404':
          $ref: '#/components/responses/404-offer-chain-step-not-found'
        '422':
          content:
            application/json:
              examples:
                invalid-step:
                  $ref: >-
                    #/components/examples/422-offer-chain-claim-error-invalid-step
              schema:
                $ref: '#/components/schemas/offer-chain-error-model'
          description: Der Schritt kann nicht erworben werden.
      security:
        - XsollaLoginUserJWT: []
      summary: Bestellung für kostenpflichtigen Angebotskettenschritt anlegen
      tags:
        - offer-chain-client
        - payment-client-side
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/reward_chain:
    get:
      description: >-
        Client-Endpunkt. Ruft die Belohnungsketten des aktuellen Nutzers ab.


        <div class="notice"><strong>Achtung</strong><br><br>Bei allen Projekten
        ist die Anzahl der Artikel begrenzt, die Sie in der Antwort erhalten
        können. Der Standard- und Höchstwert beträgt <strong>50 Artikel pro
        Antwort.</strong> Um pro Seite mehr Daten zu erhalten, verwenden Sie die
        Felder <b>limit</b> und <b>offset</b>.</div>
      operationId: get-reward-chains-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-client-get-reward-chains-list'
      security:
        - XsollaLoginUserJWT: []
      summary: Belohnungsketten des aktuellen Nutzers abrufen
      tags:
        - reward-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/reward_chain/{reward_chain_id}/balance:
    get:
      description: Client-Endpunkt. Ruft den Wertpunktestand des aktuellen Nutzers ab.
      operationId: get-user-reward-chain-balance
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-client-get-user-reward-chain-balance'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
      security:
        - XsollaLoginUserJWT: []
      summary: Wertpunktestand des aktuellen Nutzers abrufen
      tags:
        - reward-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v2/project/{project_id}/user/reward_chain/{reward_chain_id}/step/{step_id}/claim:
    post:
      description: >-
        Client-Endpunkt. Gewährt dem aktuellen Nutzer die Schrittbelohnung aus
        einer Belohnungskette.
      operationId: claim-user-reward-chain-step-reward
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
        - $ref: '#/components/parameters/reward_chain_step_id-path-param'
      responses:
        '204':
          description: >-
            Dem aktuellen Nutzer wurde die Schrittbelohnung aus einer
            Belohnungskette erfolgreich gewährt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-client-auth'
        '404':
          $ref: '#/components/responses/404-reward-chain-step-not-found'
        '422':
          $ref: '#/components/responses/422-reward-chain-step-reward-can-not-claimed'
      security:
        - XsollaLoginUserJWT: []
      summary: Schrittbelohnung gewähren
      tags:
        - reward-chain-client
      x-badges:
        - color: '#80eaff'
          name: Client-side
  /v3/project/{project_id}/admin/coupon:
    get:
      description: Ruft die Liste der Gutscheinaktionen eines Projekts ab.
      operationId: get-coupons
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-coupons'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Gutscheinaktionen abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt eine Gutscheinaktion.
      operationId: admin-create-coupon
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_coupon-create'
      responses:
        '201':
          content:
            application/json:
              examples:
                response:
                  value:
                    external_id: coupon_external_id
              schema:
                properties:
                  external_id:
                    $ref: '#/components/schemas/Promotions_coupon-external_id'
                type: object
          description: Gutschein wurde erfolgreich erstellt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Gutscheinaktionen erstellen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/coupon/{external_id}:
    delete:
      description: >-
        Löscht eine
        [Gutscheinaktion](https://developers.xsolla.com/de/doc/shop-builder/features/coupons/).
        Die gelöschte Werbeaktion:
         * verschwindet aus der Liste der in Ihrem Projekt eingerichteten Werbeaktionen.
         * wird nicht mehr auf den Artikelkatalog angewendet. Nutzer können im Rahmen dieser Werbeaktion keine Bonusartikel erhalten.

         Nach der Löschung kann die Werbeaktion nicht wiederhergestellt werden.
         Gutscheincodes aus der gelöschten Werbeaktion können bestehenden Aktionen [hinzugefügt](https://developers.xsolla.com/de/api/shop-builder/operation/create-coupon-code/) werden.
      operationId: delete-coupon-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Gutscheinaktion wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Gutscheinaktion löschen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft eine angegebene Gutscheinaktion ab.
      operationId: get-coupon
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    bonus:
                      - quantity: 100
                        sku: com.xsolla.diamonds_1
                    external_id: summer20221
                    is_enabled: true
                    name:
                      en-US: Coupon name
                      ru-RU: Название купона
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                      - date_from: '2020-05-15T18:16:00+05:00'
                        date_until: '2020-05-25T18:16:00+05:00'
                    redeem_code_limit: null
                    redeem_total_limit: 100
                    redeem_user_limit: null
                    total_limit_state:
                      available: 50
                      reserved: 10
                      used: 40
              schema:
                $ref: >-
                  #/components/schemas/admin-promotions_200-get-coupon-promotion-model
          description: Gutschein wurde erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Gutscheinaktion abrufen
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert eine Gutscheinaktion.
      operationId: update-coupon-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_coupon-update'
      responses:
        '204':
          description: Gutschein wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Gutscheinaktion aktualisieren
      tags:
        - promotions-coupons
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promocode:
    get:
      description: Ruft die Liste der Promocodes eines Projekts ab.
      operationId: get-promo-codes
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-promocodes'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Promocode-Aktionen abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt eine Promocode-Aktion.
      operationId: create-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_promocode-create'
      responses:
        '201':
          content:
            application/json:
              examples:
                response:
                  value:
                    external_id: coupon_external_id
              schema:
                properties:
                  external_id:
                    $ref: '#/components/schemas/Promotions_coupon-external_id'
                type: object
          description: Promocode wurde erfolgreich erstellt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Promocode-Aktion erstellen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promocode/{external_id}:
    delete:
      description: >-
        Löscht eine
        [Promocode-Aktion](https://developers.xsolla.com/de/doc/shop-builder/features/promo-codes/).
        Die gelöschte Werbeaktion:
         * verschwindet aus der Liste der in Ihrem Projekt eingerichteten Werbeaktionen.
         * wird nicht mehr auf den Artikelkatalog und den Warenkorb angewendet. Nutzer können im Rahmen dieser Werbeaktion keine Bonusartikel erhalten oder Artikel kaufen.

         Nach der Löschung kann die Werbeaktion nicht wiederhergestellt werden.
         Promocodes aus der gelöschten Aktion können bestehenden Aktionen [hinzugefügt](https://developers.xsolla.com/de/api/shop-builder/operation/create-promo-code-code/) werden.
      operationId: delete-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Die Promocode-Aktion wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Promocode löschen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft eine angegebene Promocode-Aktion ab.
      operationId: get-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                simple:
                  value:
                    bonus:
                      - quantity: 100
                        sku: com.xsolla.diamonds_1
                    discount:
                      percent: '10.99'
                    discounted_items: null
                    excluded_promotions:
                      - 23
                      - 45
                    external_id: summer20221
                    is_enabled: true
                    name:
                      en-US: Coupon name
                      ru-RU: Название купона
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                      - date_from: '2020-05-15T18:16:00+05:00'
                        date_until: '2020-05-25T18:16:00+05:00'
                    redeem_code_limit: 1
                    redeem_total_limit: 100
                    redeem_user_limit: null
                    total_limit_state:
                      available: 50
                      reserved: 10
                      used: 40
                with item price conditions:
                  value:
                    bonus:
                      - quantity: 100
                        sku: com.xsolla.diamonds_3
                    discount:
                      percent: '10.99'
                    discounted_items: null
                    excluded_promotions:
                      - 23
                      - 45
                    external_id: summer20221
                    is_enabled: true
                    item_price_conditions:
                      - operator: gt
                        value: '10.0000'
                      - operator: lt
                        value: '50.0000'
                    name:
                      en-US: Coupon name
                      ru-RU: Название купона
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                    redeem_code_limit: 1
                    redeem_total_limit: 100
                    redeem_user_limit: null
                    total_limit_state:
                      available: 50
                      reserved: 10
                      used: 40
                with price conditions:
                  value:
                    bonus:
                      - quantity: 100
                        sku: com.xsolla.diamonds_2
                    discount:
                      percent: '10.99'
                    discounted_items: null
                    external_id: summer20221
                    is_enabled: true
                    name:
                      en-US: Coupon name
                      ru-RU: Название купона
                    price_conditions:
                      - operator: gt
                        value: '10.0000'
                      - operator: lt
                        value: '50.0000'
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                    redeem_code_limit: 1
                    redeem_total_limit: 100
                    redeem_user_limit: null
                    total_limit_state:
                      available: 50
                      reserved: 10
                      used: 40
              schema:
                $ref: >-
                  #/components/schemas/Promotions_200-get-promocode-promotion-model
          description: Promocode wurde erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
      security:
        - basicAuth: []
      summary: Promocode-Aktion abrufen
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert eine Promocode-Aktion.
      operationId: update-promo-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_promocode-update'
      responses:
        '204':
          description: Promocode wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promocode'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Promocode-Aktion aktualisieren
      tags:
        - promotions-promo-codes
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion:
    get:
      description: Ruft die Liste der Werbeaktionen eines Projekts ab.
      operationId: get-promotion-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
        - $ref: '#/components/parameters/enabled-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-promotions'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste aller Werbeaktionen abrufen
      tags:
        - promotions-common
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion/bonus:
    get:
      description: >-
        Ruft die Liste der Bonusaktionen eines Projekts ab.


        Die Werbeaktion gewährt dem Nutzer beim Kauf zusätzlich kostenlose
        Bonusartikel.

        Die Werbeaktion kann bei jedem Kauf innerhalb eines Projekts oder bei
        einem Kauf, der bestimmte Artikel umfasst, gelten.
      operationId: get-bonus-promotion-list
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-bonus-promotions'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Bonusaktionen abrufen
      tags:
        - promotions-bonuses
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: >-
        Erstellt die Bonusaktion.


        Die Werbeaktion gewährt dem Nutzer beim Kauf zusätzlich kostenlose
        Bonusartikel.

        Die Werbeaktion kann bei jedem Kauf innerhalb eines Projekts oder bei
        einem Kauf, der bestimmte Artikel umfasst, gelten.
      operationId: create-bonus-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-update-bonus-promotion'
      responses:
        '201':
          $ref: '#/components/responses/Promotions_201-create-promotion'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-admin-promotion-missed-bonus-property
      security:
        - basicAuth: []
      summary: Bonusaktion erstellen
      tags:
        - promotions-bonuses
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion/item:
    get:
      description: |-
        Ruft die Liste der Artikelaktionen eines Projekts ab.

        Werbeaktionen gewähren einen Rabatt (in %) auf Artikel.
        Der Rabatt wird auf alle Preise der angegebenen Artikel angewendet.
      operationId: get-item-promotion-list
      parameters:
        - description: Projekt-ID.
          in: path
          name: project_id
          required: true
          schema:
            default: 59080
            type: integer
        - description: Begrenzung der Elementanzahl auf der Seite.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: >-
            Elementnummer, aus der die Liste generiert wird (die Zählung beginnt
            bei 0).
          in: query
          name: offset
          required: false
          schema:
            type: integer
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-item-promotions'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Artikelaktionen abrufen
      tags:
        - promotions-discounts
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: |-
        Erstellt eine Rabattaktion für einen Artikel.

        Werbeaktionen gewähren einen Rabatt (in %) auf Artikel.
        Der Rabatt wird auf alle Preise der angegebenen Artikel angewendet.
      operationId: create-item-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-update-item-promotion'
      responses:
        '201':
          $ref: '#/components/responses/Promotions_201-create-promotion'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-admin-promotion-missed-items-property
      security:
        - basicAuth: []
      summary: Rabattaktion für Artikel erstellen
      tags:
        - promotions-discounts
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion/redeemable/code/{code}:
    get:
      description: Ruft die Werbeaktion anhand eines Promocodes oder Gutscheincodes ab.
      operationId: get-redeemable-promotion-by-code
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/code-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-redeemable-by-code'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-code-not-found'
        '405':
          $ref: '#/components/responses/405-method-not-found'
      security:
        - basicAuth: []
      summary: Werbeaktion anhand von einlösbarem Code abrufen
      tags:
        - promotions-common
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion/{promotion_id}/bonus:
    delete:
      description: >-
        Löscht
        [Bonusaktion](https://developers.xsolla.com/de/doc/shop-builder/features/bonuses/).
        Die gelöschte Werbeaktion:
         * verschwindet aus der Liste der in Ihrem Projekt eingerichteten Werbeaktionen.
         * wird nicht mehr auf den Artikelkatalog und den Warenkorb angewendet. Nutzer können im Rahmen dieser Werbeaktion keine Bonusartikel erhalten.

         Nach der Löschung kann die Werbeaktion nicht wiederhergestellt werden.
      operationId: delete-bonus-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '204':
          description: Die Werbeaktion wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promotion'
      security:
        - basicAuth: []
      summary: Bonusaktion löschen
      tags:
        - promotions-bonuses
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: >-
        Ruft die Bonusaktion ab.


        Die Werbeaktion gewährt dem Nutzer beim Kauf zusätzlich kostenlose
        Bonusartikel.

        Die Werbeaktion kann bei jedem Kauf innerhalb eines Projekts oder bei
        einem Kauf, der bestimmte Artikel umfasst, gelten.
      operationId: get-bonus-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-admin-get-bonus-promotion'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promotion'
      security:
        - basicAuth: []
      summary: Bonusaktion abrufen
      tags:
        - promotions-bonuses
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: >-
        Aktualisiert die Werbeaktion.


        <div class='note'><b>Hinweis</b><br><br>Neue Daten ersetzen alte Daten.
        Auch wenn Sie nur einen Teil einer Werbeaktion aktualisieren möchten,
        sollten Sie alle erforderlichen Daten in der Anfrage übermitteln.</div>


        Die Werbeaktion gewährt dem Nutzer beim Kauf zusätzlich kostenlose
        Bonusartikel.

        Die Werbeaktion kann bei jedem Kauf innerhalb eines Projekts oder bei
        einem Kauf, der bestimmte Artikel umfasst, gelten.
      operationId: update-bonus-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-update-bonus-promotion'
      responses:
        '204':
          description: Die Werbeaktion wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-admin-promotion-missed-bonus-property
      security:
        - basicAuth: []
      summary: Bonusaktion aktualisieren
      tags:
        - promotions-bonuses
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/promotion/{promotion_id}/item:
    delete:
      description: >-
        Löscht eine
        [Rabattaktion](https://developers.xsolla.com/de/doc/shop-builder/features/discounts/).
        Die gelöschte Aktion:
         * verschwindet aus der Liste der in Ihrem Projekt eingerichteten Werbeaktionen.
         * wird nicht mehr auf den Artikelkatalog und den Warenkorb angewendet. Nutzer können im Rahmen dieser Werbeaktion keine Artikel kaufen.

         Nach der Löschung kann die Werbeaktion nicht wiederhergestellt werden.
      operationId: delete-item-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '204':
          description: Die Werbeaktion wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promotion'
      security:
        - basicAuth: []
      summary: Artikelaktion löschen
      tags:
        - promotions-discounts
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: |-
        Ruft die für einen bestimmten Artikel geltende Werbeaktion ab.

        Werbeaktionen gewähren einen Rabatt (in %) auf Artikel.
        Der Rabatt wird auf alle Preise der angegebenen Artikel angewendet.
      operationId: get-item-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    discount:
                      percent: '20.00'
                    excluded_promotions:
                      - 23
                      - 45
                    id: 1
                    is_enabled: true
                    items:
                      - sku: com.xsolla.elven_helmet_1
                      - sku: com.xsolla.elven_armor_1
                    limits:
                      per_item: null
                      per_user:
                        total: 10
                      recurrent_schedule:
                        per_user:
                          day_of_month: null
                          day_of_week: null
                          displayable_reset_next_date: '2023-02-28T11:00:00+08:00'
                          displayable_reset_start_date: '2023-02-28T11:00:00+08:00'
                          interval_type: daily
                          reset_next_date: 1677553200
                          time: 11:00:00+08:00
                    name:
                      en-US: Promotion
                      ru-RU: Акция
                    price_conditions:
                      - operator: ge
                        value: '10.0000'
                      - operator: le
                        value: '50.0000'
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
              schema:
                example:
                  discount:
                    percent: '15.00'
                  id: 1
                  is_enabled: true
                  items:
                    - sku: com.xsolla.elven_sword_1
                    - sku: com.xsolla.elven_helmet_1
                    - sku: com.xsolla.elven_armor_1
                  name:
                    en-US: Promotion
                    ru-RU: Акция
                  promotion_periods:
                    - date_from: '2020-04-15T18:16:00+05:00'
                      date_until: '2020-04-25T18:16:00+05:00'
                properties:
                  attribute_conditions:
                    $ref: >-
                      #/components/schemas/promotion_user-attribute_conditions_model-get
                  discount:
                    properties:
                      percent:
                        default: '10.00'
                        description: >-
                          Prozentualer Rabatt.

                          Der Preis des Artikels wird um einen Wert verringert,
                          der anhand dieses Prozentsatzes berechnet wird.
                        nullable: true
                        type: string
                    type: object
                  excluded_promotions:
                    $ref: '#/components/schemas/excluded_promotions'
                  id:
                    description: >-
                      Werbeaktions-ID. Eindeutige Werbeaktionskennung innerhalb
                      des Projekts.
                    type: integer
                  is_enabled:
                    $ref: '#/components/schemas/Promotions_is_enabled'
                  items:
                    items:
                      description: Die Liste der Artikel, bei denen der Rabatt greift.
                      properties:
                        sku:
                          default: elven_sword
                          description: Artikel-SKU.
                          type: string
                      type: object
                    nullable: true
                    type: array
                  limits:
                    $ref: '#/components/schemas/Promotions_promotion_limits_response'
                  name:
                    additionalProperties:
                      example:
                        en-US: Promotion
                        ru-RU: Акция
                      type: string
                    description: >-
                      Name der Werbeaktion. Sollte Schlüssel-Wert-Paare
                      enthalten,

                      wobei der Schlüssel ein Gebietsschema im Format
                      "^[a–z]{2}-[A–Z]{2}$" und der Wert ein String ist.
                    type: object
                  price_conditions:
                    $ref: '#/components/schemas/price_conditions_discount'
                  promotion_periods:
                    $ref: '#/components/schemas/promotion_periods'
                type: object
          description: Die Artikelaktion wurde erfolgreich empfangen.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          content:
            application/json:
              examples:
                response:
                  value:
                    errorCode: 9502
                    errorMessage: >-
                      [0401-9502]: Can not find promotion with ID = 111425 in
                      project 59080
                    statusCode: 404
              schema:
                properties:
                  errorCode:
                    example: 9502
                    type: integer
                  errorMessage:
                    example: >-
                      [0401-9502]: Can not find promotion with ID = 111425 in
                      project 59080
                    type: string
                  statusCode:
                    example: 404
                    type: integer
                type: object
          description: >-
            Werbeaktion nicht gefunden. Prüfen Sie, ob die `promotion_id`
            korrekt ist.
      security:
        - basicAuth: []
      summary: Artikelaktion abrufen
      tags:
        - promotions-discounts
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: >-
        Aktualisiert die Werbeaktion.


        <div class='note'><b>Hinweis</b><br><br>Neue Daten ersetzen alte Daten.
        Auch wenn Sie nur einen Teil einer Werbeaktion aktualisieren möchten,
        sollten Sie alle erforderlichen Daten in der Anfrage übermitteln.</div>


        Werbeaktionen gewähren einen Rabatt (in %) auf Artikel.

        Der Rabatt wird auf alle Preise der angegebenen Artikel angewendet.
      operationId: update-item-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/promotion_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_create-update-item-promotion'
      responses:
        '204':
          description: Die Werbeaktion wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-promotion'
        '422':
          $ref: >-
            #/components/responses/Promotions_422-admin-promotion-missed-items-property
      security:
        - basicAuth: []
      summary: Artikelaktion aktualisieren
      tags:
        - promotions-discounts
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/reward_chain:
    get:
      description: >-
        Ruft die Liste der Belohnungsketten ab.


        <div class="notice"><strong>Achtung</strong><br><br>Bei allen Projekten
        ist die Anzahl der Artikel begrenzt, die Sie in der Antwort erhalten
        können. Der Standard- und Höchstwert beträgt <strong>10 Artikel pro
        Antwort.</strong> Um pro Seite mehr Daten zu erhalten, verwenden Sie die
        Felder <b>limit</b> und <b>offset</b>.</div>
      operationId: admin-get-reward-chains
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
        - $ref: '#/components/parameters/enabled-query-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-list-reward-chains'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste der Belohnungsketten abrufen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt eine Belohnungskette.
      operationId: admin-create-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/create-reward-chain'
      responses:
        '201':
          $ref: '#/components/responses/201-admin-create-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/422-admin-create-update-rc-vp-invalid-request'
      security:
        - basicAuth: []
      summary: Belohnungskette erstellen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/reward_chain/id/{reward_chain_id}:
    delete:
      description: Löscht eine bestimmte Belohnungskette.
      operationId: admin-delete-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      responses:
        '204':
          $ref: '#/components/responses/204-admin-delete-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Belohnungskette löschen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft eine bestimmte Belohnungskette ab.
      operationId: admin-get-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      responses:
        '200':
          $ref: '#/components/responses/200-admin-get-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-admin-reward-chain-not-found'
      security:
        - basicAuth: []
      summary: Belohnungskette abrufen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert eine bestimmte Belohnungskette.
      operationId: admin-update-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/update-reward-chain'
      responses:
        '204':
          $ref: '#/components/responses/204-admin-update-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/404-admin-reward-chain-not-found'
        '422':
          $ref: '#/components/responses/422-admin-create-update-rc-vp-invalid-request'
      security:
        - basicAuth: []
      summary: Belohnungskette aktualisieren
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/reward_chain/id/{reward_chain_id}/reset:
    post:
      description: >-
        Setzt die Wertpunkte und den Fortschritt aller Nutzer in der
        Belohnungskette zurück.<br> Nach dem Zurücksetzen können Sie den
        Gültigkeitszeitraum der Belohnungskette aktualisieren und der Nutzer
        kann sie erneut durchlaufen.

        <div class="notice"><strong>Hinweis</strong>

        <br><br>
         Sie sollten die Belohnungskette während ihrer Gültigkeitsdauer nicht zurücksetzen, weil die Nutzer ansonsten verdiente Wertpunkte möglicherweise verlieren, bevor sie ihre Belohnung in Anspruch nehmen können.
        </div>
      operationId: admin-reset-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      responses:
        '204':
          $ref: '#/components/responses/204-admin-reset-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Belohnungskette zurücksetzen
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/reward_chain/id/{reward_chain_id}/toggle:
    put:
      description: Aktiviert/deaktiviert die Belohnungskette.
      operationId: admin-toggle-reward-chain
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/reward_chain_id-path-param'
      responses:
        '204':
          $ref: '#/components/responses/204-admin-toggle-reward-chain'
        '401':
          $ref: '#/components/responses/401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Belohnungskette aktivieren/deaktivieren
      tags:
        - reward-chain-value-points-admin
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/unique_catalog_offer:
    get:
      description: Ruft die Liste der Katalogsonderangebote eines Projekts ab.
      operationId: get-unique-catalog-offers
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/limit-query-param'
        - $ref: '#/components/parameters/offset-query-param'
      responses:
        '200':
          $ref: '#/components/responses/Promotions_200-get-unique-catalog-offers'
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
      security:
        - basicAuth: []
      summary: Liste von Katalogsonderangeboten abrufen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    post:
      description: Erstellt ein Katalogsonderangebot.
      operationId: admin-create-unique-catalog-offer
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_unique_catalog_offer-create'
      responses:
        '201':
          content:
            application/json:
              examples:
                response:
                  value:
                    external_id: coupon_external_id
              schema:
                properties:
                  external_id:
                    $ref: '#/components/schemas/Promotions_coupon-external_id'
                type: object
          description: Katalogsonderangebot wurde erfolgreich erstellt.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Katalogsonderangebot erstellen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
  /v3/project/{project_id}/admin/unique_catalog_offer/{external_id}:
    delete:
      description: >-
        Löscht eine [einmalige
        Katalogsonderangebotsaktion](https://developers.xsolla.com/de/doc/shop-builder/features/unique-offer/).
        Die gelöschte Werbeaktion:
         * verschwindet aus der Liste der in Ihrem Projekt eingerichteten Werbeaktionen.
         * wird nicht mehr auf den Artikelkatalog und den Warenkorb angewendet. Der Nutzer können im Rahmen dieser Werbeaktion keine Artikel kaufen.

         Nach der Löschung kann die Werbeaktion nicht wiederhergestellt werden.
      operationId: delete-unique-catalog-offer-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '204':
          description: Katalogsonderangebot wurde erfolgreich gelöscht.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Katalogsonderangebotsaktion löschen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    get:
      description: Ruft das angegebene Katalogsonderangebot ab.
      operationId: get-unique-catalog-offer
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      responses:
        '200':
          content:
            application/json:
              examples:
                response:
                  value:
                    external_id: secret_shop
                    is_enabled: true
                    items:
                      - helmet
                      - sword
                      - shield
                    name:
                      en-US: Secret shop
                      ru-RU: Секретный магазин
                    promotion_periods:
                      - date_from: '2020-04-15T18:16:00+05:00'
                        date_until: '2020-04-25T18:16:00+05:00'
                      - date_from: '2020-05-15T18:16:00+05:00'
                        date_until: '2020-05-25T18:16:00+05:00'
                    redeem_code_limit: 1
                    redeem_total_limit: 100
                    redeem_user_limit: 1
                    total_limit_state:
                      available: 50
                      reserved: 10
                      used: 40
              schema:
                $ref: >-
                  #/components/schemas/Promotions_200-get-unique-catalog-offer-promotion-model
          description: Das Katalogsonderangebot wurde erfolgreich abgerufen.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
      security:
        - basicAuth: []
      summary: Katalogsonderangebot abrufen
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
    put:
      description: Aktualisiert das Katalogsonderangebot.
      operationId: update-unique-catalog-offer-promotion
      parameters:
        - $ref: '#/components/parameters/project_id-path-param'
        - $ref: '#/components/parameters/external_id-promotion-path-param'
      requestBody:
        $ref: '#/components/requestBodies/Promotions_unique_catalog_offer-update'
      responses:
        '204':
          description: Das Katalogsonderangebot wurde erfolgreich aktualisiert.
        '401':
          $ref: '#/components/responses/Promotions_401-invalid-basic-auth'
        '404':
          $ref: '#/components/responses/Promotions_404-admin-coupon'
        '422':
          $ref: '#/components/responses/Promotions_422-invalid-coupon'
      security:
        - basicAuth: []
      summary: Katalogsonderangebot aktualisieren
      tags:
        - promotions-unique-catalog-offers
      x-badges:
        - color: '#95ff80'
          name: Server-side
        - color: '#d7dee0'
          name: Admin
servers:
  - url: https://store.xsolla.com/api
tags:
  - name: promotions-common
    x-displayName: Allgemeines
  - description: Mit dieser API können Sie Gutscheine verwalten.
    name: promotions-coupons
    x-displayName: Gutscheine
  - description: Diese API ermöglicht die Verwaltung von Promocodes.
    name: promotions-promo-codes
    x-displayName: Promocodes
  - description: Mit dieser API können Sie Katalogsonderangebote verwalten.
    name: promotions-unique-catalog-offers
    x-displayName: Katalogsonderangebote
  - description: Mit dieser API können Sie Rabattaktionen verwalten.
    name: promotions-discounts
    x-displayName: Rabatte
  - description: Diese API ermöglicht die Verwaltung von Bonusaktionen.
    name: promotions-bonuses
    x-displayName: Boni
  - description: >-
      Diese API ermöglicht es, Regeln für Benutzerattribute festzulegen.

      Wenn der Nutzer alle Bedingungen einer konkreten Regel erfüllt, werden
      personalisierte Artikel angezeigt.


      Für personalisierte Werbeaktionen siehe Abschnitt
      [Werbeaktionen](/de/api/shop-builder/tag/promotions-discounts).


      Um Attribute vor einem Kauf zu übermitteln, können Sie die [Xsolla Login
      API](/de/api/login/operation/update-users-attributes-from-server/)
      verwenden oder die Attribute in der [Eigenschaft user.attributes
      übermitteln, während Sie den Token mit der Pay Station API
      generieren](/de/api/pay-station/operation/create-token).
    name: personalized-catalog
    x-displayName: Personalisierter Katalog
  - name: user-limits-admin
    x-displayName: Verwaltung
  - name: reward-chain-value-points-admin
    x-displayName: Verwaltung
  - name: reward-chain-client
    x-displayName: Client
  - name: clan-reward-chain-client
    x-displayName: Clans-Client
  - name: daily-chain-admin
    x-displayName: Verwaltung
  - name: daily-chain-client
    x-displayName: Client
  - name: offer-chain-admin
    x-displayName: Verwaltung
  - name: offer-chain-client
    x-displayName: Client
  - name: upsell-admin
    x-displayName: Verwaltung
  - name: upsell-client
    x-displayName: Client
x-tagGroups:
  - name: WERBEAKTIONEN
    tags:
      - promotions-common
      - promotions-coupons
      - promotions-promo-codes
      - promotions-unique-catalog-offers
      - promotions-discounts
      - promotions-bonuses
  - name: PERSONALISIERUNG
    tags:
      - personalized-catalog
  - name: LIMITS
    tags:
      - user-limits-admin
  - name: BELOHNUNGSKETTEN UND WERTPUNKTE
    tags:
      - reward-chain-value-points-admin
      - reward-chain-client
      - clan-reward-chain-client
  - name: TÄGLICHE KETTEN
    tags:
      - daily-chain-admin
      - daily-chain-client
  - name: ANGEBOTSKETTEN
    tags:
      - offer-chain-admin
      - offer-chain-client
  - name: UPSELLING
    tags:
      - upsell-admin
      - upsell-client
