---
title: "Obter estrutura de condições"
method: GET
path: "/api/promotions/structure/conditions"
tags: ["Admin API · Promoções"]
---

# Obter estrutura de condições

`GET /api/promotions/structure/conditions`

## Request

- Base URL: `https://sualoja.commerce-wake.tech`
- URL: `https://sualoja.commerce-wake.tech/api/promotions/structure/conditions`
- Auth: HTTP bearer

Retorna a árvore grupo → subgrupo → operador → argumentos das condições disponíveis na loja. Alguns tipos podem
não existir em todas as lojas: consulte-a antes de montar `conditionGroups`. Não recebe parâmetros.
            
Permissão: **Cadastro de promoções — visualização**.

## Headers

- `x-api-version` '2.0', required

## Response `200`

Estrutura de condições em `data`.

- AsgardResponseDTOGetStructureConditionsQueryDTO
  - `data` GetStructureConditionsQueryDTO
    - `conditions` StructureCondition
      - `conditionsGroup` ConditionGroup[], nullable: Grupos de condição.
        - `conditionGroupType` string, nullable: Nome do grupo (ex.: Consumidor, Carrinho).
        - `conditionGroupId` integer: Valor para `conditionGroup` no corpo de criação.
        - `conditionsSubGroup` ConditionsSubGroup[], nullable: Subgrupos do grupo.
          - `conditionSubGroupType` string, nullable: Nome do subgrupo (ex.: Subtotal).
          - `conditionSubGroupId` integer: Valor para `conditionSubGroup` no corpo de criação.
          - `logicOperators` LogicOperator[], nullable: Operadores aceitos pelo subgrupo. Operadores fora da lista são recusados.
            - `id` integer: Valor para `logicOperator.id` no corpo de criação.
            - `name` string, nullable: Nome do operador.
            - `multiselect` boolean: `true` quando o operador aceita mais de um valor nos argumentos de lista.
            - `arguments` ConditionArgument[], nullable: Argumentos do operador. A lista pode variar por operador.
              - …

## Other responses

- `400`: Requisição inválida, incluindo a falta do header x-api-version. O motivo vem em details.
- `401`: Token ausente, inválido ou expirado (SESSION_INVALID), ou sem a permissão exigida (UNAUTHORIZED).
- `500`: Erro inesperado. Tente de novo; se persistir, contate o suporte com o traceId.

---

[API](https://skmtc.dev/fbits/apis/admin-api.md) - [All operations](https://skmtc.dev/fbits/apis/admin-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fbits/apis/admin-api/revisions/a37bfd1b0bf3?raw)
