---
title: "Bulk update redemptions"
method: PUT
path: "/redemptions/batch"
tags: ["Redemptions"]
---

# Bulk update redemptions

`PUT /redemptions/batch`

## Request

- Base URL: `https://api.fabric.inc/v3`
- URL: `https://api.fabric.inc/v3/redemptions/batch`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/fabric/apis/offers-redemptions/docs/redemptions/batch/put.ts> (a function with typed inputs; its response is checked against the schema)

Use this endpoint to update multiple redemptions by including the corresponding `redemptionId` values in the request body. You can update up to 25 redemptions at a time.

## Headers

- `x-fabric-tenant-id` string, required
- `x-fabric-channel-id` string
- `x-client-id` string
- `x-fabric-request-id` string

## Request body

- BatchUpdateRedemptionRequest: Redemption details
  - `data` object[], required: Redemptions list
    - `id` string: System-generated redemption ID. If not provided, the update will be applied to the redemption with the matching `promotionId` and `couponCode`.
    - `promotionId` union, required
      - string: System-generated coupon ID
      - object: Merchant-specified additional attributes for the promotion. Each attribute with a `name:values` pair has a unique ID that identifies a specific promotion.
        - `name` string, required: Merchant-specified attribute `name` for the promotion
        - `values` string, required: Merchant-specified attribute `value` for the `name` associated with the promotion
    - `couponCode` string, required: Coupon code to be redeemed
    - `userId` string, nullable: ID of the user who redeems the coupon
    - `email` string, nullable: Email address of the user who redeems the coupon
    - `orderId` string: Purchase order ID associated with the redemption
    - `storeId` string: ID of the store where the coupon is redeemed
    - `redeemedAt` string, date-time: The timestamp in UTC format for when the coupon was redeemed.
    - `status` 'INACTIVE' | 'ACTIVE': The following are redemption statuses: - `ACTIVE`: Represents created redemption records. - `INACTIVE`: Represents redemption records that were created but became inactive due to order cancellation.
    - `additionalAttributes` object[]: Merchant-specified attributes associated with the redemption
      - `name` string, required: Merchant-specified attribute `name` associated with the redemption
      - `values` union, required
        - string: Merchant-specified attribute `value` associated with the redemption
        - string[]: Merchant-specified attribute `values` associated with the redemption

## Response `200`

OK

- BatchUpdateRedemptionResponse: Updated redemption details
  - `data` Redemption[], required: Array of updated redemption details
    - `id` string, required: System-generated redemption ID
    - `promotionId` string, required: ID of the promotion to which the coupon code belongs
    - `couponCode` string: Redeemed coupon code
    - `orderId` string, required: Purchase order ID associated with the redemption
    - `userId` string, nullable: ID of the user who redeems the coupon
    - `email` string, nullable: Email address of the user who redeems the coupon
    - `storeId` string: ID of the store where the coupon is redeemed
    - `redeemedAt` string, date-time: The timestamp in UTC format for when the coupon was redeemed.
    - `status` 'INACTIVE' | 'ACTIVE': The following are redemption statuses: - `ACTIVE`: Represents created redemption records. - `INACTIVE`: Represents redemption records that were created but became inactive due to order cancellation.
    - `additionalAttributes` object[]: Merchant-specified attributes associated with the redemption
      - `name` string, required: Merchant-specified attribute `name` associated with the redemption
      - `values` union, required
        - string: Merchant-specified attribute `value` associated with the redemption
        - string[]: Merchant-specified attribute `values` associated with the redemption.
    - `promotionAdditionalAttributes` object[]: Merchant-specified attributes associated with the related promotion. This value is automatically populated according to the attributes of the related promotion.
      - `name` string, required: Merchant-specified attribute `name` associated with the related promotion.
      - `values` union, required
        - string: Merchant-specified attribute `value` associated with the related promotion.
        - string[]: Merchant-specified attribute `values` associated with the related promotion.
    - `promotionName` string: Promotion name by which you want to filter the redemption records
    - `createdAt` string, date-time, required: The timestamp in UTC format of when the coupon redemption was created.
    - `updatedAt` string, date-time, required: The timestamp in UTC format of when the coupon redemption was last updated.
  - `errors` BatchRedemptionError[], required: Array of errors
    - `id` string: Redemption ID
    - `type` string: The error code.
    - `message` string: An message corresponding to the `type`.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `500`: Internal server error

---

[API](https://skmtc.dev/fabric/apis/offers-redemptions.md) - [All operations](https://skmtc.dev/fabric/apis/offers-redemptions/llms.txt) - [OpenAPI document](https://skmtc.dev/fabric/apis/offers-redemptions/revisions/1ecebae0c30d?raw)
