openapi: 3.1.0
info:
  title: Incentive Engine V3 APIs
  description: >-
    Annex Cloud’s Incentive Engine helps to create rewards that can be used as
    marketing incentives by businesses either with loyalty programs or without
    loyalty programs. The benefits of these types of incentives could include a
    certain percentage off on a purchase or a specific amount discount. This
    type of incentive engine is used to attract and retain customers.


    Annex Cloud incentive engine offers two types of redemptions-

    Full Redemption & Partial Redemption


    Full Redemption- Full redemption yields the reward points on a comprehensive
    basis. The redeemed incentives can offer discounts as a percentage or in the
    form of a fixed rate coupon. The format of the rewards can be provided as
    coupon codes and voucher codes.


    Partial Redemption- A partial redemption allows rewards to be redeemed in
    portions - leaving the rest available to be redeemed later. This includes a
    redemption of rewards in the form of gift cards and store cards.
  version: 3.0.1
servers:
  - url: https://s15.socialannex.net/api/3.0
paths:
  /incentive/codes:
    post:
      tags:
        - Incentive Codes
      summary: This API facilitates the generation of both full and partial
      operationId: incentivecodes
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                redemptionType:
                  description: >-
                    Enter the redemption method for which an incentive is
                    redeemed. It allows users to specify whether the redemption
                    process will be full or partial. Use 0 to indicate full
                    redemption, where the entire incentive is redeemed. Use 1 to
                    indicate partial redemption, where only a portion of the
                    incentive is redeemed, with the remaining balance retained
                    for future use.
                  example: 1
                  type: integer
                status:
                  description: >-
                    Enter the current state of the incentive within the
                    incentive engine management system. Active (0)- The
                    incentive is fully active and available for use. Inactive
                    (1)- The incentive is currently inactive and unavailable for
                    use.
                  example: 0
                  type: integer
                codeType:
                  description: >-
                    Enter the privacy level of the redemption codes generated. 0
                    indicates public codes, which are openly accessible and can
                    be redeemed by anyone. 1 indicates private codes, which are
                    restricted and can only be redeemed by specific customers or
                    within certain contexts.
                  example: 1
                  type: integer
                partialType:
                  description: >-
                    Enter the value of a partial redemption for an incentive.
                    Different partial type codes are Store Credit (1), Gift card
                    (2), Discount Amount (6), Discount Percentage (7), Free
                    Product (8), Product with Discount Amount (9), Product with
                    Discount Percentage (10).
                  example: 1
                  type: integer
                startDate:
                  description: >-
                    Enter the date and time when the incentive becomes effective
                    in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of
                    the period during which the incentive is valid and can be
                    utilized.
                  example: 2018-04-01T00:00:00-0700
                  type: string
                endDate:
                  description: >-
                    Enter the date and time when the incentive becomes
                    ineffective in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the
                    end of the period after which the incentive is invalid and
                    cannot be utilized.
                  example: 2025-04-01T00:00:00-0700
                  type: string
                codeValues:
                  description: >-
                    Enter the unique values assigned to redemption codes
                    generated within the incentive engine management system. The
                    value of each code is represented by "n", where "n" is the
                    numerical value assigned to the code. In cases where partial
                    redemption is enabled and codes are generated in fixed
                    groups, only four distinct code values can be generated
                    within each group. (Required in the case of Partial
                    Redemption).
                  example: 0
                  type: integer
                codeLength:
                  description: >-
                    Enter the length of the redemption code associated with an
                    incentive.
                  example: 6
                  type: integer
                noOfCodes:
                  description: >-
                    Enter the quantity of redemption codes to be generated
                    within the incentive engine management system. For Dynamic
                    Group Creation - Set the number of codes to 0, indicating
                    that the creation of codes will be dynamic, and the system
                    will handle the generation process automatically. If the
                    number of codes exceeds 10,000, the generation process will
                    occur in the background.
                  example: 0
                  type: integer
                codeCharset:
                  description: >-
                    Enter the format used in the redemption code. These are the
                    different formats - Numeric (0) - Only numeric characters
                    are used in the redemption code. Alphanumeric (1)- Both
                    numeric and alphabetic characters (lowercase and uppercase)
                    are used in the redemption code. Alphabet with Lowercase
                    (2)- Only lowercase alphabetic characters are used in the
                    redemption code. Alphabet with Uppercase (3)- Only uppercase
                    alphabetic characters are used in the redemption code.
                  example: '3'
                  type: string
                prefix:
                  description: >-
                    Enter the string of characters that are appended at the
                    beginning of each redemption code generated.
                  example: A
                  type: string
                postfix:
                  description: >-
                    Enter the string of characters that are appended at the end
                    of each redemption code generated.
                  example: C
                  type: string
              required:
                - redemptionType
                - status
                - codeType
                - partialType
                - startDate
                - codeValues
                - codeLength
                - noOfCodes
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/incentivecoderesp'
            application/xml:
              schema:
                $ref: '#/components/schemas/incentivecoderesp'
        '201':
          description: successful operation
        '400':
          description: AC1004 Missing Parameters
        '405':
          description: AC1002 Request Not Authorized
        '409':
          description: AC1006 Data already exists
        '422':
          description: AC1007 Invalid Parameters
  /incentive/assigncode:
    post:
      tags:
        - Code Assign
      summary: >-
        This API facilitates the assignment and reassignment of codes, sourced
        from Fixed or Dynamic groups to members
      operationId: assigncodes
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                userId:
                  description: >-
                    Enter the unique identifier assigned to the member to whom a
                    particular code is to be assigned.
                  example: user@domain.com
                  type: string
                groupId:
                  description: >-
                    Enter the unique identifier assigned to the group of
                    incentives. The Group ID is auto generated by Annex Cloud.
                    It allows administrators to categorize and organize
                    incentives based on common characteristics such as campaign,
                    product, or target audience.
                  example: 7820
                  type: integer
                codeValue:
                  description: >-
                    Enter the value assigned to the redemption code which you
                    would like to assign to the member. The value of each code
                    is represented by "n", where "n" is the numerical value
                    assigned to the code. In cases where partial redemption is
                    enabled and codes are generated in fixed groups, only four
                    distinct code values can be generated within each group. 0
                    indicates public codes, which are openly accessible and can
                    be redeemed by anyone. 1 indicates private codes, which are
                    restricted and can only be redeemed by specific customers or
                    within certain contexts.
                  example: 25
                  type: integer
              required:
                - userId
                - groupId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/assigncodesresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/assigncodesresp'
        '201':
          description: successful operation
        '400':
          description: AC1004 Missing Parameters
        '405':
          description: AC1002 Request Not Authorized
        '422':
          description: AC1007 Invalid Parameters
  /incentive/validatecode/{{incentiveCode}}:
    get:
      tags:
        - Code Validity
      summary: Validate incentive code
      description: >-
        This API method is used to check the validity of the incentive code
        assigned to the member.
      operationId: getcodevalidityDetails
      parameters:
        - name: incentiveCode
          in: path
          description: >-
            Enter the specific incentive code that has been assigned to the
            member.
          example: APPMPDTC
          required: true
          schema:
            type: string
        - name: memberId
          in: query
          description: Enter the unique identifier assigned to the member.
          example: user@domain.com
          required: false
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getcodevalidityresp'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getcodevalidityresp'
        '400':
          description: Invalid status value
        '404':
          description: AC1005 No data found
        '405':
          description: AC1002 Request Not Authorized
  /incentive/updatecodedetails/{{memberId}}:
    patch:
      tags:
        - Code Update
      summary: Update code details
      description: >-
        This API method facilitates both redemption and undo-redemption
        operations for incentive codes.
      operationId: updatecodedetails
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                incentiveCode:
                  description: >-
                    Enter the specific incentive code that has been redeemed by
                    the member.
                  example: APPMFDTC
                  type: string
                userId:
                  description: >-
                    Enter the user ID of the member who has redeemed the
                    incentive code.
                  example: user@domain.com
                  type: string
                codeValue:
                  description: >-
                    Enter the unique value assigned to the incentive code that
                    has been assigned to the member.
                  example: 1
                  type: integer
                referenceId (Required if redemption process selected is with referenceID):
                  description: >-
                    Enter the unique variable used for the Redemption or
                    Undo-Redemption operation. It is generated for each
                    redemption or undo-redemption action, ensuring uniqueness
                    every time it is utilized.
                  example: xyz01
                  type: string
              required:
                - incentiveCode
                - userId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/updatecodedetailsresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/updatecodedetailsresp'
        '400':
          description: AC1004 Missing Parameters
        '404':
          description: AC1005 No data found
        '405':
          description: AC1002 Request Not Authorized
        '422':
          description: AC1033 Invalid Parameter Value Passed
  /incentive/updatecodeconfig/{memberId}}:
    patch:
      tags:
        - Code Update
      summary: Update code configurations
      description: >-
        The API method is designed for updating incentive code details,
        including status and value. Note that the "value" parameter is relevant
        only for partial redemption types.
      operationId: updatecodeconfig
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                incentiveCode:
                  description: Enter the specific incentive code that is being updated.
                  example: APPMFDTC
                  type: string
                userId:
                  description: >-
                    Enter the user Id of the member for whom the incentive code
                    is being updated.
                  example: user@domain.com
                  type: string
                codeStatus:
                  description: >-
                    Enter the status of the incentive code specifying whether it
                    is Active or Inactive. Active- This status denotes that the
                    code is currently enabled within the incentive engine
                    management system. Members can successfully apply active
                    codes to access associated incentives, rewards, or
                    discounts. Inactive- This status indicates that the code has
                    been disabled or temporarily suspended within the incentive
                    engine management system. Inactive codes cannot be utilized
                    by members to access benefits.
                  example: Active
                  type: string
              required:
                - incentiveCode
                - userId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/updatecodeconfigresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/updatecodeconfigresp'
        '400':
          description: AC1004 Missing Parameters
  /incentive/updatebatchcodedetails/{{siteId}}:
    patch:
      tags:
        - Code Update
      summary: Update batch code details
      description: >-
        This API method facilitates the deduction of an amount from multiple
        gift cards or store credits. (It is designed to handle multiple
        redemption and undo redemption operations.)
      operationId: updatebatchcode
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                incentiveCode:
                  description: Enter the incentive code that is redeemed by the member.
                  example: XhEwN
                  type: string
                userId:
                  description: >-
                    Enter the user ID of the member who has redeemed the
                    incentive code. It serves as a unique identifier for the
                    member who initiated the redemption activity.
                  example: user@domain.com
                  type: string
                codeValue:
                  description: Enter the unique value assigned to the incentive code.
                  example: '1'
                  type: string
                referenceId:
                  description: >-
                    Enter the unique variable used for the Redemption or
                    Undo-Redemption operation. It is generated for each
                    redemption or undo-redemption action, ensuring uniqueness
                    every time it is utilized. (Note -\ Required if redemption
                    process has been selected with reference Id.)
                  example: xyz01
                  type: string
              required:
                - incentiveCode
                - userId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/updatebatchcoderesp'
            application/xml:
              schema:
                $ref: '#/components/schemas/updatebatchcoderesp'
        '400':
          description: AC1004 Missing Parameters
  /incentive/usercodedetails:
    post:
      tags:
        - User Code Details
      summary: Fetch Details of Codes
      description: >-
        This API method is used to fetch the details for the incentive codes
        that have been assigned to a member by passing the member’s user ID.
      operationId: postusercodedetails
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                userId:
                  description: Enter the unique identifier assigned to the member.
                  example: user@domain.com
                  type: string
              required:
                - userId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/postusercodedetailsresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/postusercodedetailsresp'
        '201':
          description: successful operation
        '400':
          description: AC1004 Missing Parameters
        '405':
          description: AC1002 Request Not Authorized
        '422':
          description: AC1007 Invalid Parameters
  /incentive/bulkassignment:
    post:
      tags:
        - Bulk Assignment
      summary: Bulk assignment
      description: >-
        This API facilitates the assignment of generated codes to multiple
        members within the system. It streamlines the process of distributing
        codes, ensuring efficient allocation to the intended recipients.
      operationId: postbulkassignment
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                userId:
                  description: >-
                    Enter the unique identifier of the members to whom a
                    particular code is assigned. Multiple user id’s can be
                    passed using a comma.
                  example: user@domain.com
                  type: string
                groupId:
                  description: >-
                    Enter the unique identifier assigned to a group of
                    incentives. The Group ID is auto generated by Annex Cloud.
                    It allows administrators to categorize and organize
                    incentives based on common characteristics such as campaign,
                    product, or target audience.
                  example: 7820
                  type: integer
                fromSource:
                  description: >-
                    Enter the source name based on the requirement. This serves
                    as an additional feature to distinguish the group by
                    providing a specific name.
                  example: Refer a friend
                  type: string
              required:
                - userId
                - groupId
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/postbulkassignmentresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/postbulkassignmentresp'
        '201':
          description: successful operation
        '400':
          description: AC1004 Missing Parameters
        '405':
          description: AC1002 Request Not Authorized
        '422':
          description: AC1007 Invalid Parameters
  /incentive/getredemptionlog:
    post:
      tags:
        - Redemption Log
      summary: Get count of Redemptions API
      description: >-
        This API retrieves details regarding redemptions and undo-redemptions
        carried out within the system.
      operationId: postRedemptionLog
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                siteId:
                  description: >-
                    Enter the unique identifier assigned to a specific site for
                    which you want to see the redemption or undo redemption log.
                    It is used to distinguish between different sites or
                    platforms where the incentives are applicable.
                  example: 9991331
                  type: integer
                fromDate:
                  description: >-
                    Enter the start date from which you want to retrieve the
                    redemption log in yyyy-MM-dd'T'HH:mm:ssZ format. It allows
                    you to filter and retrieve redemption data based on a
                    specific date range.
                  example: 2021-09-19T00:00:00+0530
                  type: string
                toDate:
                  description: >-
                    Enter the end date until which you want to retrieve the
                    redemption log in yyyy-MM-dd'T'HH:mm:ssZ format. It enables
                    you to filter and retrieve redemption data based on a
                    specific date range.
                  example: 2021-09-30T00:00:00+0530
                  type: string
                operation:
                  description: >-
                    Enter the operation for which you want the log to be
                    displayed, which could be either a redemption or
                    undo-redemption operation. The format to specify this
                    operation is as follows- "redemption" for redemption
                    operations and "undo_redemption" for undo-redemption
                    operations.
                  example: redemption
                  type: string
                operationStatus:
                  description: >-
                    Enter the status of the operation that has been performed,
                    whether it is redemption or undo redemption. Specify whether
                    you would like to retrieve data for successful or
                    unsuccessful operations, with possible values being
                    "success" or "failure."
                  example: success
                  type: string
                userId:
                  description: >-
                    Enter the unique user ID for which you want to retrieve the
                    redemption or undo redemption log. It serves as a
                    distinctive identifier for the user associated with the
                    redemption activity.
                  example: user@domain.com
                  type: string
                incentiveCode:
                  description: >-
                    Enter the incentive code for which you want to retrieve the
                    redemption or undo redemption log. It serves as a unique
                    identifier for the incentive associated with the redemption
                    activity.
                  example: APPMPDTC
                  type: string
              required:
                - siteId
                - operation
                - operationStatus
                - incentiveCode
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/postRedemptionLogresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/postRedemptionLogresp'
        '201':
          description: successful operation
        '400':
          description: AC1004 Missing Parameters
        '405':
          description: AC1002 Request Not Authorized
        '422':
          description: AC1007 Invalid Parameters
  /incentive/getincentivegroup/{{groupId}}:
    get:
      tags:
        - Get All Incentive Groups
      summary: Group Details
      description: >-
        This API is used to get details for a specific incentive code group by
        passing the Group ID.
      operationId: getallincentivegroups
      parameters:
        - name: groupId
          in: path
          description: >-
            Enter the unique identifier assigned to the group of incentives. The
            group id is auto generated by Annex Cloud. It allows administrators
            to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 7820
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getallincentivegroupsresp'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getallincentivegroupsresp'
        '400':
          description: Invalid status value
        '404':
          description: AC1005 No data found
        '405':
          description: AC1002 Request Not Authorized
  /incentive/getallincentivegroups/{{all}}:
    get:
      tags:
        - Get All Incentive Groups
      summary: All Group Details
      description: >-
        This API method is used to get details for all the incentive code groups
        by passing “all” as the path parameter.
      operationId: getallincentivegroupdetails
      parameters:
        - name: all
          in: path
          description: Enter “all” to retrieve details of all the incentive code groups.
          example: all
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getallincentivegroupdetailsresp'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/getallincentivegroupdetailsresp'
        '400':
          description: Invalid status value
        '404':
          description: AC1005 No data found
        '405':
          description: AC1002 Request Not Authorized
  /incentive/usercodedetails/{{memberId}}:
    get:
      tags:
        - User Code Details
      summary: Fetch Details of Code
      description: >-
        This API method retrieves the details for incentive codes, including the
        associated code groups for the incentive codes assigned to a member by
        passing their User ID.
      operationId: UsercodedetailsUserID
      parameters:
        - name: userId
          in: path
          description: Enter the user id of the member
          example: user@domain.com
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/usercodedetailsuseridresp'
            application/xml:
              schema:
                $ref: '#/components/schemas/usercodedetailsuseridresp'
components:
  schemas:
    incentivecoderesp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        message:
          type: string
          description: >-
            Displays the message that will be displayed to the user once the
            incentive codes are generated.
          example: Codes generated successfully
        redemptionType:
          type: integer
          description: >-
            Displays the method in which the incentive is redeemed. 0 indicates
            full redemption, where the entire incentive is redeemed. 1 indicates
            partial redemption, where only a portion of the incentive is
            redeemed, with the remaining balance retained for future use.
          example: 1
        groupName:
          type: string
          description: >-
            Displays the name assigned to a group of incentives. It facilitates
            organization and categorization of incentives based on common
            characteristics, such as campaign, product, or target audience.
          example: IE_20240227_8417
        status:
          type: integer
          description: >-
            Displays the current state of the incentive. 0 indicates the
            incentive is fully active and available for use. 1 indicates the
            incentive is currently inactive and unavailable for use.
          example: 0
        codeType:
          type: integer
          description: >-
            Displays the privacy level of the redemption codes generated. 0
            indicates public codes, which are openly accessible and can be
            redeemed by anyone. 1 indicates private codes, which are restricted
            and can only be redeemed by specific users or within certain
            contexts.
          example: 1
        partialType:
          type: integer
          description: >-
            Displays the value of a partial redemption for an incentive that is
            taking place. Different partial type codes are Store Credit (1),
            Gift card (2), Discount Amount (6), Discount Percentage (7), Free
            Product (8), Product with Discount Amount (9), Product with Discount
            Percentage (10).
          example: 1
        startDate:
          type: string
          description: >-
            Displays the date and time when the incentive becomes effective in
            yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of the period
            during which the incentive is valid and can be utilized.
        endDate:
          type: string
          description: >-
            Displays the date and time when the incentive becomes ineffective in
            yyyy-MM-dd'T'HH:mm:ssZ format. It marks the end of the period after
            which the incentive is invalid and cannot be utilized.
        codeValues:
          type: integer
          description: >-
            Displays the unique values assigned to redemption codes generated
            within the incentive engine management system.
          example: 0
        codeLength:
          type: integer
          description: >-
            Displays the length of the redemption code generated that associated
            with an incentive.
          example: 6
        noOfCodes:
          type: integer
          description: >-
            Displays the quantity of redemption codes to be generated within the
            incentive engine management system.
          example: 0
        codeCharset:
          type: integer
          description: >-
            Displays the format used in the redemption code. These are the
            different formats - Numeric (0) - Only numeric characters are used
            in the redemption code. Alphanumeric (1)- Both numeric and
            alphabetic characters (lowercase and uppercase) are used in the
            redemption code. Alphabet with Lowercase (2)- Only lowercase
            alphabetic characters are used in the redemption code. Alphabet with
            Uppercase (3)- Only uppercase alphabetic characters are used in the
            redemption code.
          example: 3
        prefix:
          type: string
          description: >-
            Displays the string of characters that are appended at the beginning
            of each redemption code generated.
          example: A
        postfix:
          type: string
          description: >-
            Displays the string of characters that are appended at the end of
            each redemption code generated.
          example: C
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to the group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 8417
    assigncodesresp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        userId:
          type: string
          description: >-
            Displays the unique identifier assigned to the member to whom a
            particular code is to be assigned. This parameter enables precise
            targeting and tracking of code assignments, ensuring accurate
            allocation and management of incentives for individual members.
          example: user@domain.com
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to a group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 7820
        groupName:
          type: string
          description: >-
            Displays the name assigned to the group of incentives. It
            facilitates organization and categorization of incentives based on
            common characteristics, such as campaign, product, or target
            audience.
          example: IE_20201218_130
        fromSource:
          type: string
          description: >-
            Displays the source name that has been assigned as per the
            requirement. This serves as an additional feature to distinguish the
            group by providing a specific name.
          example: Refer a friend.
        incentiveCode:
          type: string
          description: >-
            Displays the specific incentive code that is to be assigned to the
            member. This serves as a unique identifier for the incentive
            associated with the member.
          example: APPMPDTC
        codeValue:
          type: integer
          description: Displays the unique value assigned to the redemption code.
          example: 25
        startDate:
          type: string
          description: >-
            Displays the date and time when the incentive becomes effective in
            yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of the period
            during which the incentive is valid and can be utilized.
          example: 2020-12-19T12:00:00+0000
        codeValidity:
          type: string
          description: >-
            Displays the specific date until which the code remains valid and
            can be redeemed in yyyy-mm-ddThh:mm:ss.
          example: 2020-12-18T12:46:18+0000
        assignedDate:
          type: string
          description: >-
            Displays the date and time when the incentive code is to be assigned
            to the member in yyyy-MM-dd'T'HH:mm:ssZ format. It serves as a
            timestamp, providing details on when the code will be linked with
            the member's account.
          example: 2020-12-18T12:46:18+0000
    getcodevalidityresp:
      type: object
      properties:
        siteid:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to the group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 7820
        userId:
          type: string
          description: >-
            Displays the unique identifier assigned to the member to whom the
            particular code is assigned.
          example: user@domain.com
        incentiveCode:
          type: string
          description: >-
            Displays the specific incentive code that has been assigned to the
            member.
          example: APPMPDTC
        codeType:
          type: string
          description: >-
            Displays the privacy level of the redemption code. Public codes -
            which are openly accessible and can be redeemed by anyone. Private
            codes - which are restricted and can only be redeemed by specific
            users or within certain contexts.
          example: Public
        codeStatus:
          type: string
          description: >-
            Displays the status of the incentive code specifying whether it has
            been partially used or fully used. Partially Used - This status
            indicates that the incentive code has been partially redeemed, with
            a portion of its value or benefits utilized, while the remainder
            remains available for future use. Fully Used - This status indicates
            that the incentive code has been fully redeemed, with all of its
            value or benefits utilized, and no remaining balance available for
            further redemption.
          example: Partially Used
        codeValidity:
          type: string
          description: >-
            Displays the specific date until which the code remains valid and
            can be redeemed in yyyy-mm-ddThh:mm:ss.
          example: 2020-12-18T12:46:18+0000
        redemptionLimit:
          type: integer
          description: >-
            Displays the redemption limit set for the member. It indicates the
            maximum number of times the member can redeem the incentive code.
          example: 5
        redeemed:
          type: integer
          description: >-
            Displays the number of times the incentive code has been redeemed by
            the member.  It serves as a tally of the total number of redemption
            instances for the specific incentive code.
          example: 3
        benefit:
          type: string
          description: >-
            Displays the mode or form in which the member can redeem the
            incentive code. It specifies the type of benefit or reward
            associated with the code redemption, such as a Gift Card, Store
            Credit, or Discount Voucher.
          example: Gift Card
        codeValue:
          type: integer
          description: >-
            Displays the unique value assigned to the incentive code that has
            been assigned to the member.
          example: 10
    updatecodedetailsresp:
      type: object
      properties:
        message:
          type: string
          description: Displays the message shown upon redeeming the incentive code.
          example: Incentive code redeemed successfully.
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to a group of incentives.
            The Group ID is auto generated by Annex Cloud.
          example: 7820
        source:
          type: string
          description: >-
            Displays the origin or platform from which the incentive codes are
            being redeemed. It provides information about the source or channel
            through which the redemption activity occurred.
          example: WEB
        userId:
          type: string
          description: >-
            Displays the user ID of the member who has redeemed the incentive
            code. It serves as a unique identifier for the member who initiated
            the redemption activity.
          example: user@domain.com
        orderId:
          type: string
          description: >-
            Displays the order ID associated with the order for which the member
            redeemed the incentive code. It serves as a reference to the
            specific transaction or purchase that led to the redemption of the
            incentive code.
          example: BB0547
        incentiveCode:
          type: string
          description: >-
            Displays the specific incentive code that has been redeemed by the
            member.
          example: APPMFDTC
        codeType:
          type: string
          description: >-
            Displays the privacy level of the redemption code. Public codes -
            These are openly accessible and can be redeemed by anyone. Private
            codes - These are restricted and can only be redeemed by specific
            users or within certain contexts.
          example: Private
        codeValidity:
          type: string
          description: >-
            Displays the specific date until which the code remains valid and
            can be redeemed in yyyy-mm-ddThh:mm:ss.
          example: 2020-12-18T12:46:18+0000
        codeStatus:
          type: string
          description: >-
            Displays the status of the incentive code specifying whether it has
            been partially used or fully used. Partially Used - This status
            indicates that the incentive code has been partially redeemed, with
            a portion of its value or benefits utilized, while the remainder
            remains available for future use. Fully Used - This status indicates
            that the incentive code has been fully redeemed, with all of its
            value or benefits utilized, and no remaining balance available for
            further redemption.
          example: Partially Used
        codeValue:
          type: integer
          description: Displays the unique value assigned to the incentive code.
          example: 1
        balanceCodeValue:
          type: integer
          description: >-
            Displays the remaining balance value of the incentive code after
            deducting the entered code value from the total value of the
            incentive code. It provides members with information regarding the
            current available balance associated with the incentive code.
          example: 8
        redemptionLimit:
          type: integer
          description: >-
            Displays the redemption limit set for the member. It indicates the
            maximum number of times the member can redeem the incentive code.
          example: 5
        redeemed:
          type: integer
          description: >-
            Displays the number of times the incentive code has been redeemed by
            the member. It serves as a tally of the total number of redemption
            instances for the specific incentive code.
          example: 4
        referenceId:
          type: string
          description: >-
            Displays the unique variable used for the Redemption or
            Undo-Redemption operation. It is generated for each redemption or
            undo redemption action, ensuring uniqueness every time it is
            utilized.
          example: xyz01
    updatecodeconfigresp:
      type: object
      properties:
        message:
          type: string
          description: Displays the message shown upon updating the incentive code.
          example: code status updated Successfully.
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to the group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 7820
        source:
          type: string
          description: >-
            Displays the origin or platform from which the incentive codes are
            being updated. It provides information about the source or channel
            through which the update activity occurred.
          example: WEB
        userId:
          type: string
          description: >-
            Displays the user ID of the member for whom the incentive code is
            being updated.
          example: user@domain.com
        incentiveCode:
          type: string
          description: >-
            Displays the specific incentive code that has been updated for the
            member.
          example: APPMFDTC
        codeType:
          type: string
          description: >-
            Displays the privacy level of the redemption code. Public codes -
            These are openly accessible and can be redeemed by anyone. Private
            codes - These are restricted and can only be redeemed by specific
            users or within certain contexts.
          example: Private
        codeValidity:
          type: string
          description: >-
            Displays the specific date until which the code remains valid and
            can be redeemed in yyyy-mm-ddThh:mm:ss.
          example: 2020-12-18T12:46:18+0000
        codeStatus:
          type: string
          description: >-
            Displays the status of the incentive code specifying whether it is
            Active or Inactive. Active- This status denotes that the code is
            currently enabled within the incentive engine management system.
            Members can successfully apply active codes to access associated
            incentives, rewards, or discounts. Inactive- This status indicates
            that the code has been disabled or temporarily suspended within the
            incentive engine management system. Inactive codes cannot be
            utilized by members to access benefits.
          example: Active
        codeValue:
          type: integer
          description: Displays the unique value assigned to the incentive code.
          example: 1
    updatebatchcoderesp:
      type: object
      properties:
        message:
          type: string
          description: Displays the message shown upon redeeming the incentive code.
          example: Incentive code redeemed successfully.
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to a group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 8417
        source:
          type: string
          description: >-
            Displays the origin or platform from which the incentive codes are
            being redeemed. It provides information about the source or channel
            through which the redemption activity occurred.
          example: WEB
        userId:
          type: string
          description: >-
            Displays the user ID of the member who has redeemed the incentive
            codes. It serves as a unique identifier for the member who initiated
            the redemption activity.
          example: user@domain.com
        orderId:
          type: integer
          description: >-
            Displays the order ID associated with the order for which the member
            redeemed the incentive code. It serves as a reference to the
            specific transaction or purchase that led to the redemption of the
            incentive code.
          example: BB0547
        incentiveCode:
          type: string
          description: >-
            Displays the specific incentive code that has been redeemed by the
            member. It serves as a unique identifier for the incentive
            associated with the member's redemption activity.
          example: XhEwN
        codeType:
          type: string
          description: >-
            Displays the privacy level of the redemption code. Public codes -
            These are openly accessible and can be redeemed by anyone. Private
            codes - These are restricted and can only be redeemed by specific
            users or within certain contexts.
          example: Private
        codeStatus:
          type: string
          description: >-
            Displays the status of the incentive code specifying whether it has
            been partially used or fully used. Partially Used - This status
            indicates that the incentive code has been partially redeemed, with
            a portion of its value or benefits utilized, while the remainder
            remains available for future use. Fully Used - This status indicates
            that the incentive code has been fully redeemed, with all of its
            value or benefits utilized, and no remaining balance available for
            further redemption.
          example: Partially Used
        codeValue:
          type: integer
          description: >-
            Displays the unique value assigned to redemption code.(This value
            can be used for full or partial redemption).
          example: 1
        balanceCodeValue:
          type: integer
          description: >-
            Displays the remaining balance value of the incentive code after
            deducting the entered code value from the total value of the
            incentive code. It provides users with information regarding the
            current available balance associated with the incentive code.
          example: 8
        redemptionLimit:
          type: integer
          description: >-
            Displays the redemption limit set for the member. It indicates the
            maximum number of times the member can redeem the incentive code.
          example: 5
        redeemed:
          type: integer
          description: >-
            Displays the number of times the incentive code has been redeemed by
            the member. It serves as a tally of the total number of redemption
            instances for the specific incentive code.
          example: 1
        referenceId:
          type: string
          description: >-
            Displays the unique variable used for both the Redemption and Undo
            Redemption operations. It is generated for each redemption or undo
            redemption action, ensuring uniqueness every time it is utilized.
          example: xyz01
    postusercodedetailsresp:
      type: object
      properties:
        siteId:
          type: string
          description: Displays the unique identifier assigned to a specific site.
          example: '9991331'
        userId:
          type: string
          description: Displays the unique identifier assigned to the member.
          example: user@domain.com
        assignedCodesData:
          type: object
          description: Displays the following details for each code assigned to the member.
          properties:
            redemptionType:
              type: integer
              description: >-
                Displays the mode of redemption for incentives. It specifies
                whether the redemption process is full or partial, using the
                following values.
              example: 0
            incentiveCode:
              type: string
              description: >-
                Displays the incentive code for which the details are being
                displayed. This serves as a unique identifier for the incentive
                associated with the member.
              example: AXYZASHC
            codeValue:
              type: integer
              description: Displays the unique value assigned to the incentive code.
              example: 1
            codeValueBalance:
              type: integer
              description: Displays the remaining balance value of the incentive code.
              example: 8
            codeAssignedDate:
              type: string
              description: >-
                Displays the date and time when the incentive code was assigned
                or allocated to a member in yyyy-MM-dd'T'HH:mm:ssZ format. It
                serves as a timestamp, providing information on when the code
                became associated with the member's account.
              example: 2018-04-01T00:00:00-0700
            codeState:
              type: string
              description: >-
                Displays the status of the incentive code specifying whether it
                has been partially used or fully used. Partially Used - This
                status indicates that the incentive code has been partially
                redeemed, with a portion of its value or benefits utilized,
                while the remainder remains available for future use. Fully Used
                - This status indicates that the incentive code has been fully
                redeemed, with all of its value or benefits utilized, and no
                remaining balance available for further redemption.
              example: Partially Used
            startDate:
              type: string
              description: >-
                Displays the date and time when the incentive becomes effective
                in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of the
                period during which the incentive is valid and can be utilized.
              example: 2018-04-01T00:00:00-0700
            codeIsA:
              type: string
              description: >-
                Displays the category to which the code belongs, for example,
                "store credit" or "gift card".
              example: Gift card
    postbulkassignmentresp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        groupId:
          type: integer
          description: >-
            Displays the unique identifier assigned to a group of incentives.
            The Group ID is auto generated by Annex Cloud. It allows
            administrators to categorize and organize incentives based on common
            characteristics such as campaign, product, or target audience.
          example: 8417
        startDate:
          type: string
          description: >-
            Displays the date and time when the incentive becomes effective in
            yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of the period
            during which the incentive is valid and can be utilized.
          example: 2020-01-02T12:02:30+0000
        assignedDate:
          type: string
          description: >-
            Displays the date and time when the Incentive code was assigned to
            the member in yyyy-MM-dd'T'HH:mm:ssZ format. It serves as a
            timestamp, providing details on when the code became linked with the
            member's account.
          example: 2020-01-02T12:02:30+0000
        assignedCodes:
          type: object
          description: Displays the details regarding assigned codes.
          properties:
            userId:
              type: string
              description: >-
                Displays the unique identifier for the member to which the
                incentive code has been assigned. This parameter enables precise
                targeting and tracking of code assignments, ensuring accurate
                allocation and management of incentives for individual members.
              example: user@domain.com
            incentiveCode:
              type: string
              description: >-
                Displays the specific incentive code that has been assigned to
                the member. This serves as a unique identifier for the incentive
                associated with the member.
              example: APPMTDTC
            codeValue:
              type: integer
              description: Displays the unique value assigned to the incentive code.
              example: 1
            fromSource:
              type: string
              description: >-
                Displays the source name that has been assigned as per the
                requirement. This serves as an additional feature to distinguish
                the group by providing a specific name.
              example: Refer a friend.
    postRedemptionLogresp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site for which
            the redemption log or undo redemption log is being displayed. It is
            used to distinguish between different sites or platforms where the
            incentives are applicable.
          example: '9991331'
        fromDate:
          type: string
          description: >-
            Displays the start date of the redemption or undo redemption log in
            yyyy-MM-dd'T'HH:mm:ssZ format.
          example: 2021-09-19T00:00:00+0530
        toDate:
          type: string
          description: >-
            Displays the end date of the redemption or undo redemption log in
            yyyy-MM-dd'T'HH:mm:ssZ format.
          example: 2021-09-30T00:00:00+0530
        incentiveCode:
          type: string
          description: >-
            Displays the incentive code associated with the redemption or undo
            redemption log.
          example: APPMTDTC
        userId:
          type: string
          description: >-
            Displays the unique user ID of the member for whom the redemption or
            undo redemption log has been retrieved. It serves as a distinctive
            identifier for the user associated with the redemption activity.
          example: user@domain.com
        operation:
          type: string
          description: >-
            Displays the operation being performed, which could be either a
            redemption or undo-redemption operation. The format to specify this
            operation is as follows- "redemption" for redemption operations and
            "undo redemption" for undo-redemption operations.
          example: redemption
        operationStatus:
          type: string
          description: >-
            Displays the status of the operation being performed. It specifies
            whether the operation was successful or unsuccessful, with values
            being "success" or "failure."
          example: success
        successfulRedemptionPerCustomerPerVoucher:
          type: integer
          description: >-
            Displays the number of times a member successfully redeemed an
            incentive code to attain its benefits. It indicates the frequency
            with which a member utilized a specific incentive code for
            redemption. (Note - A code can only be used by a member only once).
          example: 0
    getallincentivegroupsresp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to the specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        id:
          type: integer
          description: Displays the unique identifier assigned to the group of incentives.
          example: 7820
        groupName:
          type: string
          description: >-
            Displays the name assigned to the group of incentives. It
            facilitates organization and categorization of incentives based on
            common characteristics, such as campaign, product, or target
            audience.
          example: IE_20240227_841
        redemptionType:
          type: integer
          description: >-
            Displays the mode of redemption for the incentives in the group. It
            specifies whether the redemption process is full or partial, using
            the following values- Full Redemption (0)- This indicates that the
            entire incentive is redeemed in a single transaction. Partial
            Redemption (1)- This signifies that only a portion of the incentive
            is redeemed, while the remainder is retained for future use.
          example: 0
        status:
          type: integer
          description: >-
            Displays the current status of the incentive group within the
            incentive engine management system. Active (0)- The incentive group
            is active and available for use. Inactive (1)- The incentive group
            is inactive and unavailable for use.
          example: 1
        codeRedemptionLimit:
          type: integer
          description: >-
            Displays the limit set for the number of times an incentive code in
            the group can be redeemed. It provides insight into the maximum
            allowable number of redemptions for each individual code.
          example: 2
        startDate:
          type: string
          description: >-
            Displays the date and time when the incentive group becomes
            effective in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning
            of the period during which the incentive group is valid and can be
            utilized.
          example: 2018-04-01T00:00:00-0700
        endDate:
          type: string
          description: >-
            Displays the date and time when the incentive group becomes
            ineffective in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the end of
            the period after which the incentive group is invalid and cannot be
            utilized.
          example: 2020-12-20T07:42:00+0000
        partialType:
          type: integer
          description: >-
            Displays the type of partial redemption assigned to the incentives
            in the group. Different partial type codes are Store Credit (1),
            Gift card (2), Discount Amount (6), Discount Percentage (7), Free
            Product (8), Product with Discount Amount (9), Product with Discount
            Percentage (10).
          example: 6
        discountAmount:
          type: integer
          description: >-
            Displays the discount amount members will receive when redeeming the
            incentive codes included in the group.
          example: 5
        totalCodes:
          type: integer
          description: >-
            Displays the total number of incentive codes present within the
            group. It provides insight into the quantity of codes available for
            distribution and redemption within the designated group.
          example: 20
        unassignedCodes:
          type: integer
          description: >-
            Displays the number of unassigned incentive codes present within the
            group. It provides insight into the quantity of codes that have not
            yet been allocated or assigned to members within the designated
            group.
          example: 2
        activeCodes:
          type: integer
          description: >-
            Displays the number of active incentive codes present within the
            group. It provides insight into the quantity of codes that are
            currently valid and available for redemption within the designated
            group.
          example: 1
        partiallyUsedCodes:
          type: integer
          description: >-
            Displays the number of partially used incentive codes present within
            the group. It provides insight into the quantity of codes that have
            been partially redeemed, where only a portion of the code's value or
            benefits has been utilized.
          example: 1
        fullyUsedCodes:
          type: integer
          description: >-
            Displays the number of fully used incentive codes present within the
            group. It provides insight into the quantity of codes that have been
            completely redeemed, where all of the code's value or benefits have
            been utilized.
          example: 2
        expiredCodes:
          type: integer
          description: >-
            Displays the number of expired incentive codes present within the
            group. It provides insight into the quantity of codes that have
            passed their expiration date and are no longer valid for redemption.
          example: 0
        disabledCodes:
          type: integer
          description: >-
            Displays the number of disabled incentive codes present within the
            group. It provides insight into the quantity of codes that have been
            deactivated or made unavailable for redemption.
          example: 0
        currencyCode:
          type: string
          description: >-
            Displays the currency assigned to the codes in the group. It serves
            as a reference to the specific currency associated with redemption
            transactions.
          example: USD
        currencySymbol:
          type: string
          description: >-
            Displays the unique symbol assigned to the currency that is used to
            perform redemptions. It serves as a distinguishing identifier for
            the currency being utilized in redemption transactions, allowing for
            differentiation from other currencies.
          example: $
    getallincentivegroupdetailsresp:
      type: object
      properties:
        siteId:
          type: string
          description: >-
            Displays the unique identifier assigned to a specific site. It is
            used to distinguish between different sites where the incentives are
            applicable.
          example: '9991331'
        incentiveGroups (repeats for all groups present):
          type: object
          description: Displays the following details for the incentive groups.
          properties:
            id:
              type: integer
              description: >-
                Displays the unique identifier assigned to the group of
                incentives.
              example: 7820
            groupName:
              type: string
              description: >-
                Displays the name assigned to the group of incentives. It
                facilitates organization and categorization of incentives based
                on common characteristics, such as campaign, product, or target
                audience.
              example: IE_20240227_841
            redemptionType:
              type: integer
              description: >-
                Displays the mode of redemption for the incentives in the group.
                It specifies whether the redemption process is full or partial,
                using the following values- Full Redemption (0)- This indicates
                that the entire incentive is redeemed in a single transaction.
                Partial Redemption (1)- This signifies that only a portion of
                the incentive is redeemed, while the remainder is retained for
                future use.
              example: 0
            status:
              type: integer
              description: >-
                Displays the current status of the incentive group within the
                incentive engine management system. Active (0)- The incentive
                group is active and available for use. Inactive (1)- The
                incentive group is currently inactive and unavailable for use.
              example: 1
            codeRedemptionLimit:
              type: integer
              description: >-
                Displays the limit set for the number of times an incentive code
                in the group can be redeemed. It provides insight into the
                maximum allowable number of redemptions for each individual
                code.
              example: 2
            startDate:
              type: string
              description: >-
                Displays the date and time when the incentive group becomes
                effective in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the
                beginning of the period during which the incentive group is
                valid and can be utilized.
              example: 2018-04-01T00:00:00-0700
            endDate:
              type: string
              description: >-
                Displays the date and time when the incentive group becomes
                ineffective in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the end
                of the period after which the incentive group is invalid and
                cannot be utilized.
              example: 2020-12-20T07:42:00+0000
            partialType:
              type: integer
              description: >-
                Displays the type of partial redemption assigned to the
                incentives in the group. Store Credit (1), Gift card (2),
                Discount Amount (6), Discount Percentage (7), Free Product (8),
                Product with Discount Amount (9), Product with Discount
                Percentage (10).
              example: 6
            discountAmount:
              type: integer
              description: >-
                Displays the discount amount members will receive when redeeming
                the incentive codes included in the group.
              example: 5
            totalCodes:
              type: integer
              description: >-
                Displays the total number of incentive codes present within the
                specific group. It provides insight into the quantity of codes
                available for distribution or redemption within the designated
                group.
              example: 20
            unassignedCodes:
              type: integer
              description: >-
                Displays the number of unassigned incentive codes present within
                the specific group. It provides insight into the quantity of
                codes that have not yet been allocated or assigned to members
                within the designated group.
              example: 2
            activeCodes:
              type: integer
              description: >-
                Displays the number of active incentive codes present within the
                specific group. It provides insight into the quantity of codes
                that are currently valid and available for redemption within the
                designated group.
              example: 1
            partiallyUsedCodes:
              type: integer
              description: >-
                Displays the number of partially used incentive codes present
                within the specific group. It provides insight into the quantity
                of codes that have been partially redeemed, where only a portion
                of the code's value or benefits has been utilized.
              example: 1
            fullyUsedCodes:
              type: integer
              description: >-
                Displays the number of fully used incentive codes present within
                the specific group. It provides insight into the quantity of
                codes that have been completely redeemed, where all of the
                code's value or benefits have been utilized.
              example: 2
            expiredCodes:
              type: integer
              description: >-
                Displays the number of expired incentive codes present within
                the specific group. It provides insight into the quantity of
                codes that have passed their expiration date and are no longer
                valid for redemption.
              example: 0
            disabledCodes:
              type: integer
              description: >-
                Displays the number of disabled incentive codes present within
                the specific group. It provides insight into the quantity of
                codes that have been deactivated or made unavailable for
                redemption.
              example: 0
            currencyCode:
              type: string
              description: >-
                Displays the currency assigned to the codes in the group. It
                serves as a reference to the specific currency associated with
                redemption transactions.
              example: USD
            currencySymbol:
              type: string
              description: >-
                Displays the unique symbol assigned to the currency that is used
                to perform redemptions. It serves as a distinguishing identifier
                for the currency being utilized in redemption transactions,
                allowing for differentiation from other currencies.
              example: $
    usercodedetailsuseridresp:
      type: object
      properties:
        siteId:
          type: string
          description: Displays the unique identifier assigned to a specific site.
          example: '9991331'
        userId:
          type: string
          description: Displays the unique identifier assigned to the member.
          example: user@domain.com
        assignedCodesData:
          type: object
          description: Displays the following details for each code assigned to the member.
          properties:
            groupName:
              type: string
              description: >-
                Displays the name assigned to the group of incentives. It
                facilitates organization and categorization of incentives based
                on common characteristics, such as campaign, product, or target
                audience.
              example: IE_20211214_7820
            groupId:
              type: integer
              description: >-
                Displays the unique identifier assigned to the group of
                incentives. The Group Id is auto generated by Annex Cloud. It
                allows administrators to categorize and organize incentives
                based on common characteristics such as campaign, product, or
                target audience.
              example: 8417
            redemptionType:
              type: integer
              description: >-
                Displays the mode of redemption for the incentive. It specifies
                whether the redemption process is full or partial, using the
                following values. Full Redemption (0)- This indicates that the
                entire incentive is redeemed in a single transaction. Partial
                Redemption (1)- This signifies that only a portion of the
                incentive is redeemed, while the remainder is retained for
                future use.
              example: 0
            incentive Code:
              type: string
              description: >-
                Displays the incentive code for which the details are being
                displayed. This serves as a unique identifier for the incentive
                associated with the member.
              example: APPMFDTC
            codeValue:
              type: integer
              description: Displays the unique value assigned to the incentive code.
              example: 1
            codeValueBalance:
              type: integer
              description: Displays the remaining balance for the incentive code.
              example: 8
            codeAssignedDate:
              type: string
              description: >-
                Display the date and time when the incentive code was assigned
                or allocated to a member. It serves as a timestamp, providing
                information on when the code became associated with the member's
                account.
              example: '2020-12-04 16:23:41'
            codeState:
              type: string
              description: >-
                Displays the status of the incentive code specifying whether it
                has been partially used or fully used. Partially Used - This
                status indicates that the incentive code has been partially
                redeemed, with a portion of its value or benefits utilized,
                while the remainder remains available for future use. Fully Used
                - This status indicates that the incentive code has been fully
                redeemed, with all of its value or benefits utilized, and no
                remaining balance available for further redemption.
              example: Partially Used
            startDate:
              type: string
              description: >-
                Displays the date and time when the incentive becomes effective
                in yyyy-MM-dd'T'HH:mm:ssZ format. It marks the beginning of the
                period during which the incentive is valid and can be utilized.
              example: 2018-04-01T00:00:00-0700
            codeIsA:
              type: string
              description: >-
                Displays the category to which the code belongs, for example,
                "store credit" or "gift card".
              example: Gift card.
tags:
  - name: Incentive Codes
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift and
      store cards are for partial redemption. This API enables the creation of
      both full and partial redemption incentive codes, using a POST request
      method that is POST - /incentive/codes
  - name: Code Assign
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift and
      store cards are for partial redemption.


      This API is used to assign incentive codes to members. The API for Code
      Assign uses the POST request method to assign incentive codes. POST -
      /incentive/assigncodes
  - name: Code Validity
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift and
      store cards are for partial redemption.


      This API method is used to check the validity of the incentive code
      assigned to the member. GET - /incentive/validatecode/incentiveCode
  - name: Code Update
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift and
      store cards are for partial redemption.


      These API methods utilize the PATCH request method to modify code
      redemption status, code configuration, and batch details for the site.
      PATCH - /incentive/updatecodedetails/userId, PATCH -
      /incentive/updatecodeconfig/userId & PATCH -
      /incentive/updatebatchcodedetails/siteId
  - name: User Code Details
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift cards
      and store cards are for partial redemption.


      These API methods are used to get details of the codes assigned to a
      member. POST - /incentive/usercodedetails & GET -
      /incentive/usercodedetails/{{userId}}
  - name: Bulk Assignment
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift and
      store cards are for partial redemption. POST:/incentive/bulkassignment
  - name: Redemption Log
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift cards
      and store cards are for partial redemption.


      This API retrieves details of redemption and undo redemption actions,
      offering counts of successful redemption or undo redemption requests. The
      counts can be provided for all requests within a specified period, or
      specific to each customer ID or voucher (code) ID. POST -
      /incentive/getredemptionlog
  - name: Get All Incentive Groups
    description: >-
      The Annex Cloud Incentive Engine empowers businesses to create marketing
      rewards, whether or not they have loyalty programs. These rewards, which
      may offer discounts on purchases, are redeemable in full or partially.
      Coupon and voucher codes are used for full redemption, while gift cards
      and store cards are for partial redemption.


      This API method retrieves the details of the incentive code group,
      utilizing the GET request method to fetch information pertaining to the
      group. GET - /incentive/getincentivegroup/groupId & GET -
      /incentive/getallincentivegroups/all
security:
  - MuseumPlaceholderAuth: []
