---
title: "Vincular produtos ao grupo"
description: "POST /v1/catalog/groups/{groupId}/products — vincular produtos a um grupo de opções BeeFood."
method: "POST"
path: "/v1/catalog/groups/{groupId}/products"
url: "https://developer.beefood.com.br/docs/catalogo/vincular-produtos-grupo"
group: "Catálogo"
scope: "catalog:write"
lang: "pt"
---
# Vincular produtos ao grupo

`POST /v1/catalog/groups/{groupId}/products`

- Produção: `https://api.beefood.app/v1/catalog/groups/{groupId}/products`
- Sandbox: `https://api-sandbox.beefood.app/v1/catalog/groups/{groupId}/products`

Vincula produtos a um grupo.

## Autenticação

Envie o access token no header `Authorization: Bearer <accessToken>`. Escopo necessário: `catalog:write`. Limite: 300 requisições a cada 3 minutos.


## Parâmetros de path

- `groupId` *integer* **obrigatório** — Identificador do grupo. Exemplo: `264006`.



## Parâmetros do body

- `productIds` *integer[]* **obrigatório** — Identificadores dos produtos a vincular.



## Exemplos de requisição

### cURL

```bash
curl -X POST "https://api.beefood.app/v1/catalog/groups/{groupId}/products" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "productIds": [
    2586713,
    2587101
  ]
}'
```


## Exemplos de resposta

### 200 OK

```json
{
  "groupId": 264006,
  "name": "Acompanhamentos",
  "active": true,
  "delivery": true,
  "dineIn": true,
  "required": true,
  "pizza": false,
  "sortOrder": 0,
  "priceFormation": "gift",
  "minQuantity": 1,
  "maxQuantity": 1,
  "products": [
    {
      "productId": 2585290,
      "name": "Combo Supreme",
      "image": {
        "original": "https://cdn.beefood.com.br/products/2585290.jpg",
        "thumbnail60": "https://cdn.beefood.com.br/products/2585290_60.jpg",
        "thumbnail120": "https://cdn.beefood.com.br/products/2585290_120.jpg",
        "thumbnailWeb": "https://cdn.beefood.com.br/products/2585290_web.jpg"
      }
    }
  ]
}
```


## Campos da resposta

- `groupId` *number* — Identificador do grupo.

- `name` *string* — Nome do grupo.

- `active` *boolean* — Indica se o grupo está ativo.

- `delivery` *boolean* — Indica se o grupo aparece no delivery.

- `dineIn` *boolean* — Indica se o grupo aparece no presencial.

- `required` *boolean* — Indica se a escolha é obrigatória.

- `pizza` *boolean* — Indica se o grupo é de pizza.

- `sortOrder` *number* — Posição de exibição.

- `priceFormation` *string* — Formação de preço: sum, gift, highest ou proportional.

- `minQuantity` *number* — Quantidade mínima de opções.

- `maxQuantity` *number* — Quantidade máxima de opções.

- `products` *array* — Produtos vinculados ao grupo.

- `products[].productId` *number* — Identificador do produto.

- `products[].name` *string* — Nome do produto.

- `products[].image` *object* — URLs da imagem do produto.

- `products[].image.original` *string* — Imagem original.

- `products[].image.thumbnail60` *string* — Miniatura de 60 px.

- `products[].image.thumbnail120` *string* — Miniatura de 120 px.

- `products[].image.thumbnailWeb` *string* — Miniatura para web.



## Erros

| Status | Mensagem |
| --- | --- |
| 401 | Authentication token is missing |
| 401 | Invalid or expired access token |
| 403 | This credential does not include the catalog:write scope |
| 429 | Too many requests |
| 400 | Invalid productIds |
| 404 | Group not found |
| 404 | Products not found: 2586713 |


