---
title: "Update a reward tier"
method: PATCH
path: "/v1/loyalty/reward-tiers/{id}"
tags: ["Loyalty"]
---

# Update a reward tier

`PATCH /v1/loyalty/reward-tiers/{id}`

## Request

- Base URL: `https://api.prod.keyban.io`
- URL: `https://api.prod.keyban.io/v1/loyalty/reward-tiers/{id}`
- Auth: API key in header `X-Api-Key`

Update loyalty reward tier properties—such as name, accrual ratio, or imagery—while maintaining uniqueness constraints.

## Path parameters

- `id` string, uuid, required

## Request body

- UpdateLoyaltyRewardTierDto
  - `name` string: The name of the loyalty reward tier
  - `requiredVisits` integer: The number of visits required to reach this reward tier
  - `currencyToPointRatio` integer: Number of loyalty points earned for each 1 unit of currency spent (e.g., if the ratio is 2 and currency is EUR, spending €1 earns 2 points). Used to calculate point accruals from transaction amounts.
  - `bgImageUrl` string, uri, nullable: Background image for the reward tier. Supported formats: WEBP (preferred), PNG. Recommended size: 1920×1080 px (landscape). Max file size: 1 MB.

## Response `200`

Loyalty reward tier updated successfully

- LoyaltyRewardTierDto
  - `id` string, uuid, required: Entity UUID
  - `createdAt` string, date-time, required: Creation date (ISO 8601)
  - `updatedAt` string, date-time, required: Last update date (ISO 8601)
  - `application` string, uuid, required: The unique identifier of the application
  - `name` string, required: The name of the loyalty reward tier
  - `requiredVisits` integer, required: The number of visits required to reach this reward tier
  - `currencyToPointRatio` integer, required: Number of loyalty points earned for each 1 unit of currency spent (e.g., if the ratio is 2 and currency is EUR, spending €1 earns 2 points). Used to calculate point accruals from transaction amounts.
  - `bgImageUrl` string, uri, nullable: Background image for the reward tier. Supported formats: WEBP (preferred), PNG. Recommended size: 1920×1080 px (landscape). Max file size: 1 MB.

## Other responses

- `400`: Invalid input data or cannot modify default tier

---

[API](https://skmtc.dev/keyban/apis/keyban-rest-apis.md) · [All operations](https://skmtc.dev/keyban/apis/keyban-rest-apis/llms.txt) · [OpenAPI document](https://skmtc.dev/keyban/apis/keyban-rest-apis/revisions/0bb79a1da961?raw)
