---
title: "Fetch a modifier group"
method: GET
path: "/v1/modifier_groups/{modifier_group_id}"
tags: ["Modifier Groups"]
---

# Fetch a modifier group

`GET /v1/modifier_groups/{modifier_group_id}`

Fetch a modifier group

**Required scope: `business/catalogue:read`**

## Path parameters

- `modifier_group_id` string, required — The unique identifier of the modifier group.

## Response `200`

Successful Response

- ModifierGroup — A reusable collection of modifiers that share selection rules. Each group owns one or more `Modifier` options and defines `min_selections` and `max_selections` to constrain how many can be chosen at sale time. Groups exist independently of items and are reused across the catalogue — a single "Doneness" group can be attached to many products. When a group is attached to a product or variant for sale, the item-side view is `ItemModifierGroup`.
  - `id` string, required — The unique identifier of the modifier group.
  - `name` string, required — The name of the modifier group.
  - `min_selections` integer, required — The minimum number of modifiers that must be selected from the group. A value of `0` means the group is optional.
  - `max_selections` integer, nullable, required — The maximum number of modifiers that may be selected from the group. A value of `null` means there is no maximum.
  - `modifiers` Modifier[] — The modifiers that belong to this group.
    - `id` string, required — The unique identifier of the modifier.
    - `modifier_group_id` string, required — The unique identifier of the modifier group this modifier belongs to.
    - `type` 'note' | 'product', required — `ModifierType` distinguishes between a note-style modifier and product-style modifier. A note-style modifier attaches a text instruction, such as "medium-rare"; where as a product-style modifier attaches an additional variant to the item that may or may not impact the price.
    - `name` string, required — The display name of the modifier.
    - `pricing_strategy` 'fixed_price' | 'free' | 'product', required — `PricingStrategy` determines how the price of a modifier is calculated when applied to an item. - `free` — the modifier does not change the price of the item. - `fixed_price` — the modifier applies the price set in `fixed_price`. - `product` — the modifier inherits the price of its linked variant (`variant_id`).
    - `fixed_price` Money, required — `Money` represents a monetary value denoted by both an amount and a currency. The `amount` is always going to be the smallest denomination of the given currency. As an example, when dealing with South African Rands (ZAR), the amount is in cents. eg: R150.45 is therefore represented by `Money(amount=15045, currency="ZAR")`.
      - `amount` integer, required — The amount of money in the smallest denomination of the currency. For example, when the `currency` is `ZAR`, the `amount` is in cents.
      - `currency` string, required — The currency code in ISO 4217 format.
    - `is_selected_by_default` boolean, required — Whether the modifier is selected by default when its group is shown to the customer.
    - `ordinal` integer, required — The display ordering of the modifier within its group. Lower values appear first.
    - `variant_id` string, nullable, required — The unique identifier of the variant linked to this modifier. Populated only when `type` is `product`.
  - `created_at` string, date-time, required — The modifier group creation date and time in ISO 8601 format.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `429` — Too Many Requests

---

[API](https://skmtc.net/yoco/apis/yoco-api.md) · [All operations](https://skmtc.net/yoco/apis/yoco-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/yoco/yoco-api/revisions/1ee03e82bc45/schema)
