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

# Cancel Rewards

> Loyalty points that are converted into reward certificates have an expiration date. Members can cancel their rewards if they are unable to use them before expiration or do not want to use them. The endpoint converts the rewards back into points, for future use. <br /> **Note**: Once the reward is redeemed, it cannot be cancelled. If the member cancels or returns an order, the rewards are reversed back to points using the `Reverse Redeemed Reward` endpoint - POST v1/redeem/reverse.



## OpenAPI

````yaml member post /v1/redeem/cancel
openapi: 3.0.1
info:
  title: Loyalty (Member)
  description: >-
    fabric **Loyalty** formerly **Member** is a Loyalty Management System (LMS)
    that enables marketers to create multiple loyalty strategies under a loyalty
    program to cater to various businesses and customer segments. <br />
    **Member overview**: <br /> During onboarding, you are given the necessary
    **credentials** (client_id and client_secret) to obtain an access token,
    which is required to run every call. Membership hierarchy is organized into
    Programs, Clubs, and Tiers. <br /> **Program** is the first hierarchy level
    and is where rewards and benefits are configured for the organization. <br
    /> **Club** is the second hierarchy level and is where Rules for the program
    are configured. <br />Each Club must have at least one **Tier**, which is
    used to define membership and to configure criteria and thresholds
    (including free vs paid). Additional hierarchy levels can be added to
    support the needs of your business.  <br /> Members are always enrolled into
    a **Default Tier** within a club. When members make purchases, they earn
    Points based on the rules set at the club level and/or based on promotions.
    When points in a member account reach a predefined **Threshold Value**,
    points are converted to **Rewards**. This conversion may be manual or
    automatic depending on the program configuration. Members can **Redeem**
    their rewards within the reward **Expiry Period**. Account point balances
    are updated after each point-impacting activity.
  version: 1.0.0
  contact:
    email: support@fabric.inc
  license:
    name: fabric Inc
    url: https://fabric.inc
servers:
  - url: https://vanilla-dev02-loyalty.fabric.zone/api
    description: For developers to work outside of the production environment.
  - url: https://vanilla-stg-loyalty.fabric.zone/api
    description: Replica of the production environment for testing.
  - url: https://loyalty-sbx.fabric.zone/api
    description: >-
      An isolated testing environment (UAT) to run programs without affecting
      the application, system or platform on which they run.
  - url: https://loyalty.fabric.zone/api
    description: Production environment.
security:
  - bearerAuth: []
paths:
  /v1/redeem/cancel:
    post:
      tags:
        - Redeem
      summary: Cancel Rewards
      description: >-
        Loyalty points that are converted into reward certificates have an
        expiration date. Members can cancel their rewards if they are unable to
        use them before expiration or do not want to use them. The endpoint
        converts the rewards back into points, for future use. <br /> **Note**:
        Once the reward is redeemed, it cannot be cancelled. If the member
        cancels or returns an order, the rewards are reversed back to points
        using the `Reverse Redeemed Reward` endpoint - POST v1/redeem/reverse.
      operationId: redeem_cancel_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelReward'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/cancel-reward-response'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponseClass1'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponseClass2'
components:
  schemas:
    CancelReward:
      type: object
      required:
        - redemptionCode
      description: Details to cancel reward
      properties:
        profileId:
          title: Profileid
          type: string
          description: >-
            Profile ID of the member. In an ecosystem, it acts as a primary ID
            to keep the various systems (apps, websites, etc.) in sync.
          example: 67460e74-02e3-11e8-b443-00163e990bdb
          format: uuid
        redemptionCode:
          title: Redemptioncode
          type: string
          description: >-
            Redemption code. This code must be specified. It is used to identify
            and link the rewards used in a specific transaction. This code is
            generated in the response of the `Issue Variable Rewards` endpoint -
            POST /api/v1/redeem/reward/issue.
          example: 04c229d7-03cb-421f-9d77-1c0ff1fc2641
          format: uuid
        cancelAuditUser:
          title: Cancelaudituser
          minLength: 1
          type: string
          description: Representative who cancelled the audit.
          example: Joe
    cancel-reward-response:
      type: object
      properties:
        status:
          title: Status
          description: Status of the call
          type: integer
          example: 200
          format: int32
        message:
          title: Message
          description: Message corresponding to the status of the call.
          example: Reward cancelled successfully.
          minLength: 1
          type: string
          default: Exception message
        errors:
          title: Errors
          type: object
          properties: {}
          description: Error details, if any.
        data:
          title: Data
          description: Additional details, if applicable.
          example: null
    GenericResponseClass1:
      type: object
      description: Bad request
      properties:
        message:
          title: Message
          minLength: 1
          type: string
          description: Message corresponding to the call.
          example: Error message string
        errors:
          title: Errors
          type: object
          properties: {}
          description: A dictionary of lists with different number of errors or exceptions.
          example:
            ExceptionString:
              - Invalid Field
        data:
          title: Data
          type: object
          properties: {}
          description: Returns data in the form of a list of dictionaries or null
          example: null
        status:
          title: Status
          type: integer
          description: Status code of the call
          example: 400
          format: int32
    GenericResponseClass2:
      type: object
      description: Unauthorized
      properties:
        detail:
          title: Detail
          type: string
          description: Message corresponding to the response
          example: Authentication Failed
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````