> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yampi.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Atualizar um desconto da loja

> Atualiza um desconto na loja



## OpenAPI

````yaml put /{alias}/discounts/{id}
openapi: 3.0.0
info:
  title: Yampi API
  description: Documentação oficial da API da Yampi
  version: '2.0'
servers:
  - url: https://api.dooki.com.br/v2
    description: Endpoint de produção
security:
  - ApiToken: []
    ApiSecretKey: []
tags:
  - name: Catálogo - Atualização em massa
    x-folder: catalogo/atualizacao-em-massa
  - name: Catálogo - Avaliações de produtos
    x-folder: catalogo/produtos/avaliacoes-de-produtos
  - name: Catálogo - Categorias
    x-folder: catalogo/categorias
  - name: Catálogo - Coleções
    x-folder: catalogo/colecoes
  - name: Catálogo - Comentários de produtos
    x-folder: catalogo/produtos/comentarios-de-produtos
  - name: Catálogo - Customizações
    x-folder: catalogo/customizacoes
  - name: Catálogo - Estoques de SKU
    x-folder: catalogo/skus/estoques-de-sku
  - name: Catálogo - Feeds
    x-folder: catalogo/feeds
  - name: Catálogo - Filtros
    x-folder: catalogo/filtros
  - name: Catálogo - Grupos
    x-folder: catalogo/grupos
  - name: Catálogo - Imagens
    x-folder: catalogo/imagens
  - name: Catálogo - Looks
    x-folder: catalogo/looks
  - name: Catálogo - Kits
    x-folder: catalogo/kits
  - name: Catálogo - Marcas
    x-folder: catalogo/marcas
  - name: Catálogo - Notificações de estoque
    x-folder: catalogo/notificacoes-de-estoque
  - name: Catálogo - Produtos
    x-folder: catalogo/produtos
  - name: Catálogo - Produtos relacionados
    x-folder: catalogo/produtos/produtos-relacionados
  - name: Catálogo - Selos
    x-folder: catalogo/selos
  - name: Catálogo - Sincronizar estoques
    x-folder: catalogo/skus/sincronizar-estoques
  - name: Catálogo - SKUs
    x-folder: catalogo/skus
  - name: Catálogo - Valores de filtros
    x-folder: catalogo/filtros/valores-de-filtros
  - name: Catálogo - Valores de variações
    x-folder: catalogo/variacoes/valores-de-variacoes
  - name: Catálogo - Variações
    x-folder: catalogo/variacoes
  - name: Público - Catálogo
    x-folder: /publico/catalogo
  - name: Público - Busca
    x-folder: /publico/busca
  - name: Público - Loja
    x-folder: /publico/loja
  - name: Checkout - Bancos
    x-folder: checkout/bancos
  - name: Checkout - Links de Pagamento
    x-folder: checkout/links-de-pagamento
  - name: Checkout - Carrinhos abandonados
    x-folder: checkout/carrinhos-abandonados
  - name: Checkout - Configurações de pagamentos
    x-folder: checkout/configuracoes-de-pagamentos
  - name: Checkout - Formas de pagamentos
    x-folder: checkout/formas-de-pagamentos
  - name: Checkout - Gateways de pagamento
    x-folder: checkout/gateways-de-pagamento
  - name: Checkout - Parcelamento
    x-folder: checkout/parcelamento
  - name: Checkout - Status de pedidos
    x-folder: checkout/status-de-pedidos
  - name: Checkout - Transações
    x-folder: checkout/transacoes
  - name: Clientes - Cliente
    x-folder: clientes/cliente
  - name: Clientes - Clusters
    description: >-
      Clusters são grupos de clientes com condições comerciais flexíveis, como
      preço de produto, frete e forma de entrega
    x-folder: clientes/clusters
  - name: Clientes - Endereços
    x-folder: clientes/enderecos
  - name: Clientes - Regras de frete dos clusters
    x-folder: clientes/clusters/regras-de-frete-dos-clusters
  - name: Configurações - Carrinhos abandonados
    x-folder: configuracoes/carrinhos-abandonados
  - name: Configurações - Checkout
    x-folder: configuracoes/checkout
  - name: Configurações - Credenciais da loja
    x-folder: configuracoes/credenciais-da-loja
  - name: Configurações - Dados da loja
    x-folder: configuracoes/dados-da-loja
  - name: Configurações - Fotos
    x-folder: configuracoes/fotos
  - name: Configurações - Integrações
    x-folder: configuracoes/integracoes
  - name: Configurações - IPs bloqueados
    x-folder: configuracoes/ips-bloqueados
  - name: Configurações - Overview
    x-folder: configuracoes/overview
  - name: Conteúdo - Páginas
    x-folder: conteudo/paginas
  - name: Conteúdo - Redirecionamentos
    x-folder: conteudo/redirecionamentos
  - name: Descontos
    x-folder: descontos
  - name: Leads
    x-folder: leads
  - name: Logística - Armazéns
    x-folder: logistica/armazens
  - name: Logística - Simular frete
    x-folder: logistica/simular-frete
  - name: Logística - CEP
    x-folder: logistica/cep
  - name: Logística - Embalagens
    x-folder: logistica/embalagens
  - name: Logística - Estoques
    description: >-
      O lojista pode ter um cadastro de múltiplos estoques onde ele pode
      associar posteriormente os SKUS com suas respectivas quantidades. Um
      exemplo prático é permitir que ele consiga trabalhar com estoques de
      fornecedores externos com diferentes prazos de entrega.
    x-folder: logistica/estoques
  - name: Logística - Países
    x-folder: logistica/paises
  - name: Logística - Preços de frete
    x-folder: logistica/precos-de-frete
  - name: Logística - Reservas de estoque
    x-folder: logistica/reservas-de-estoque
  - name: Logística - Transportadoras
    x-folder: logistica/transportadoras
  - name: Logística - API de Frete
    x-folder: logistica/api-de-frete
  - name: Marketing
    x-folder: marketing
  - name: Marketing - Brindes
    x-folder: marketing/brindes
  - name: Pedidos - Comentários
    description: Endpoints de comentários de pedidos
    x-folder: pedidos/comentarios
  - name: Pedidos - Emails
    description: Endpoints de e-mails de pedidos
    x-folder: pedidos/emails
  - name: Pedidos - Endereços
    description: Endpoints de endereços de pedidos
    x-folder: pedidos/enderecos
  - name: Pedidos - Etiquetas
    description: Endpoints de etiquetas de pedidos
    x-folder: pedidos/etiquetas
  - name: Pedidos - Notas fiscais
    description: Endpoints de notas fiscais de pedidos
    x-folder: pedidos/notas-fiscais
  - name: Pedidos - Rastreamento
    description: Endpoints de emails de pedidos
    x-folder: pedidos/rastreamento
  - name: Pedidos - Pedido
    description: Endpoints de pedidos
    x-folder: pedidos/pedido
  - name: Promoções - Combos
    x-folder: promocoes/combos
  - name: Promoções - Desconto progressivo
    x-folder: promocoes/desconto-progressivo
  - name: Promoções - Frete grátis
    x-folder: promocoes/frete-gratis
  - name: Promoções - Order Bump
    x-folder: promocoes/orderbump
  - name: Promoções - Upsells
    x-folder: promocoes/upsells
  - name: Promoções - Carteira
    x-folder: promocoes/carteira
  - name: Sistema
    description: Endpoints informativos do sistema
    x-folder: sistema
  - name: Busca - Global
    x-folder: busca/global
  - name: Busca - Pedidos
    x-folder: busca/pedidos
  - name: Busca - Produtos
    x-folder: busca/produtos
  - name: Busca - Clientes
    x-folder: busca/clientes
  - name: Busca - Leads
    x-folder: busca/leads
  - name: Busca - Carrinhos
    x-folder: busca/carrinhos
  - name: Usuários
    x-folder: usuarios
  - name: Usuários - Convites
    x-folder: usuarios/convites
  - name: Usuários - Grupos
    x-folder: usuarios/grupos
  - name: Usuários - Permissões
    x-folder: usuarios/permissoes
  - name: Webhooks
    x-folder: webhooks
  - name: Loja Virtual - Scripts
    x-folder: loja-virtual/scripts
  - name: Modulo - Recurso
    description: Modulo - Recurso
  - name: Marketplaces - Atributos
    description: Marketplaces - Atributos
  - name: Marketplaces - Anúncios
    description: Marketplaces - Anúncios
  - name: Links de Pagamento
    description: Links de Pagamento
  - name: Checkout - Contas bancárias
    description: Checkout - Contas bancárias
  - name: Checkout - Vendedores
    description: Checkout - Vendedores
  - name: Configurações - E-mails
    description: Configurações - E-mails
  - name: Logística - Frete Público
    description: Logística - Frete Público
  - name: Marketplaces - Categorias
    description: Marketplaces - Categorias
  - name: Marketplaces - Contas
    description: Marketplaces - Contas
  - name: Marketplaces - Lista de erros
    description: Marketplaces - Lista de erros
  - name: Marketplaces
    description: Marketplaces
  - name: Métricas - Cashback
    description: Métricas - Cashback
  - name: Promoções - Cashbacks
    description: Promoções - Cashbacks
  - name: Promoções - Cashback
    description: Promoções - Cashback
  - name: Promoções - Cupons de desconto
    description: Promoções - Cupons de desconto
  - name: Promoções - Produtos
    description: Promoções - Produtos
  - name: Filas
    description: Filas
paths:
  /{alias}/discounts/{id}:
    put:
      tags:
        - Descontos
      summary: Atualizar um desconto da loja
      description: Atualiza um desconto na loja
      operationId: PutDiscountsId
      parameters:
        - name: alias
          in: path
          description: Alias da loja
          required: true
          schema:
            type: string
      requestBody:
        description: Dados para atualizar o desconto
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DiscountRequest'
      responses:
        '200':
          description: Detalhes do desconto
          content:
            application/json:
              schema:
                allOf:
                  - properties:
                      data:
                        type: array
                        items:
                          $ref: '#/components/schemas/DiscountView'
                    type: object
                  - $ref: '#/components/schemas/DiscountViewAdditionalResponse'
        '409':
          description: >-
            Conflito com desconto existente. Retorna discount_id, accumulate e
            discount_value do desconto conflitante.
        '422':
          description: >-
            Verifique os campos obrigatórios: discount_method, discount_value,
            discount_type, entry_condition_type, entry_condition_value,
            accumulate, start_at, name. O campo restrictions é obrigatório
            apenas para discount_type=buy_x_get_y.
components:
  schemas:
    DiscountRequest:
      required:
        - discount_method
        - discount_value
        - discount_type
        - entry_condition_type
        - entry_condition_value
        - accumulate
        - start_at
        - name
      properties:
        name:
          description: Nome do desconto.
          type: string
          maxLength: 100
          minLength: 3
          example: Promoção de Outubro
        code:
          description: Código do desconto.
          type: string
          maxLength: 30
          minLength: 3
          readOnly: true
          example: OCTOBERTAMPO25
          nullable: true
        automatic:
          description: Define se o desconto é automático.
          type: boolean
          readOnly: true
          example: true
        store_id:
          description: ID da loja.
          type: integer
          readOnly: true
          example: 1319250
        discount_method:
          description: Método de desconto.
          type: string
          maxLength: 10
          enum:
            - percent
            - amount
          example: percent
        discount_value:
          description: Valor do desconto. Se percentual, o máximo é 100.
          type: number
          format: float
          minimum: 0.01
          example: 20
        discount_type:
          description: Tipo do desconto.
          type: string
          enum:
            - buy_x_get_y
            - by_payment_method
          example: buy_x_get_y
        entry_condition_type:
          description: Tipo de condição para aplicar o desconto.
          type: string
          enum:
            - amount
            - quantity
          example: amount
        entry_condition_value:
          description: >-
            Valor mínimo (quantidade de produto ou valor do carrinho) necessário
            para ativar o desconto.
          oneOf:
            - type: integer
              minimum: 1
              example: 1
            - type: number
              minimum: 0.01
              example: 10
        accumulate:
          description: Define se o desconto pode acumular com outras promoções.
          type: boolean
          example: false
        start_at:
          description: Data e hora de início
          type: string
          format: date-time
          example: '2025-06-01 00:00:00'
        end_at:
          description: Data e hora de término
          type: string
          format: date-time
          example: '2025-08-10 00:00:00'
        restrictions:
          description: Restrições de aplicação do desconto.
          required:
            - include
          properties:
            include:
              required:
                - brands_ids
                - products_ids
                - categories_ids
                - collections_ids
              properties:
                brands_ids:
                  description: IDs das marcas incluídas.
                  type: array
                  items:
                    type: integer
                    example: 1
                  example:
                    - 1
                    - 2
                    - 3
                products_ids:
                  description: IDs dos produtos incluídos.
                  type: array
                  items:
                    type: integer
                    example: 5
                  example:
                    - 5
                    - 6
                categories_ids:
                  description: IDs das categorias incluídas.
                  type: array
                  items:
                    type: integer
                    example: 10
                  example:
                    - 10
                    - 11
                collections_ids:
                  description: IDs das coleções incluídas.
                  type: array
                  items:
                    type: integer
                    example: 20
                  example:
                    - 20
                    - 21
              type: object
          type: object
        specifications:
          description: >-
            Configurações específicas do tipo de desconto. Os campos
            obrigatórios variam conforme discount_type.
          properties:
            payment_method_type:
              description: >-
                Método de pagamento vinculado ao desconto. Obrigatório quando
                discount_type=by_payment_method.
              type: string
              enum:
                - pix
                - credit_card
                - billet
                - pix_in_installments
                - deposit
                - nupay
              example: pix
            set_cart_usage_limit:
              description: >-
                Define se há limite de uso por carrinho. Obrigatório quando
                discount_type=buy_x_get_y.
              type: boolean
              example: true
            cart_usage_limit:
              description: >-
                Limite de vezes que o desconto pode ser aplicado no carrinho (0
                = ilimitado). Obrigatório quando discount_type=buy_x_get_y.
              type: integer
              minimum: 0
              example: 1
            get_products_quantity:
              description: >-
                Número de produtos que o cliente receberá. Obrigatório quando
                discount_type=buy_x_get_y.
              type: integer
              minimum: 1
              example: 1
            restrictions:
              description: >-
                Restrições aplicadas ao tipo de promoção específica. Obrigatório
                quando discount_type=buy_x_get_y.
              properties:
                include:
                  properties:
                    brands_ids:
                      type: array
                      items:
                        type: integer
                        example: 11
                    products_ids:
                      type: array
                      items:
                        type: integer
                        example: 51
                    categories_ids:
                      type: array
                      items:
                        type: integer
                        example: 4
                    collections_ids:
                      type: array
                      items:
                        type: integer
                        example: 9
                  type: object
              type: object
          type: object
      type: object
    DiscountView:
      description: Representa os atributos de um Desconto
      properties:
        id:
          type: integer
          example: 1520
        store_id:
          type: integer
          example: 1319250
        discount_type_id:
          type: integer
          example: 1520
        name:
          type: string
          example: Lucas
        entry_condition_type:
          type: string
          example: amount
        entry_condition_value:
          type: number
          example: 10
        discount_method:
          type: string
          example: percent
        discount_value:
          type: number
          example: 100
        discount_type:
          type: string
          example: buy_x_get_y
        accumulate:
          type: boolean
          example: false
        start_at:
          $ref: '#/components/schemas/BaseTimestamp'
        end_at:
          $ref: '#/components/schemas/BaseTimestamp'
        created_at:
          $ref: '#/components/schemas/BaseTimestamp'
        updated_at:
          $ref: '#/components/schemas/BaseTimestamp'
      type: object
    DiscountViewAdditionalResponse:
      description: Exibe detalhes das regras do desconto
      properties:
        restrictions:
          description: Restrições gerais para aplicação do desconto.
          properties:
            include:
              properties:
                products_ids:
                  type: array
                  items:
                    type: integer
                brands_ids:
                  type: array
                  items:
                    type: integer
                collections_ids:
                  type: array
                  items:
                    type: integer
                categories_ids:
                  type: array
                  items:
                    type: integer
              type: object
            include_ids:
              description: IDs incluídos na regra de aplicação do desconto.
              type: array
              items:
                type: integer
          type: object
        specifications:
          description: Configurações para aplicação do desconto.
          properties:
            data:
              properties:
                cart_usage_limit:
                  description: Limite de uso do carrinho.
                  type: integer
                  example: 0
                get_products_quantity:
                  description: Quantidade de produtos a serem obtidos.
                  type: integer
                  example: 1
                set_cart_usage_limit:
                  description: Define se há limite de uso por carrinho.
                  type: boolean
                  example: false
              type: object
            restrictions:
              properties:
                include:
                  properties:
                    products_ids:
                      type: array
                      items:
                        type: integer
                    brands_ids:
                      type: array
                      items:
                        type: integer
                    collections_ids:
                      type: array
                      items:
                        type: integer
                    categories_ids:
                      type: array
                      items:
                        type: integer
                  type: object
                include_ids:
                  description: IDs incluídos na regra de aplicação do desconto.
                  type: array
                  items:
                    type: integer
              type: object
          type: object
      type: object
    BaseTimestamp:
      properties:
        date:
          description: Data e hora no formato YYYY-MM-DD H:MM:SS.
          type: string
          example: '2000-08-17 10:24:24'
        timezone_type:
          description: Número de representação do timezone.
          type: integer
          example: 3
        timezone:
          description: Fuso horário associado.
          type: string
          example: America/Sao_Paulo
      type: object
  securitySchemes:
    ApiToken:
      type: apiKey
      name: User-Token
      in: header
    ApiSecretKey:
      type: apiKey
      name: User-Secret-Key
      in: header

````