---
title: "Update Package"
method: PATCH
path: "/app/package/{package-id}"
tags: ["Packages"]
---

# Update Package

`PATCH /app/package/{package-id}`

Atualiza detalhes do pacote. Todos os campos do corpo são opcionais.

## Path parameters

- `package-id` number, required

## Request body

- object
  - `name` string — Nome do pacote
  - `slug` string — Slug único do pacote (usado na URL). Se o slug informado já estiver em uso por outro pacote da loja, a requisição retornará erro.
  - `description` string, nullable — Descrição detalhada do pacote
  - `category_id` number — ID da categoria do pacote. Se o pacote possuir variações, a categoria delas também será atualizada.
  - `enabled` boolean — Define se o pacote está visível na loja
  - `price` number — Preço do pacote
  - `compare_at_price` number, nullable — Preço de comparação (preço original antes do desconto)
  - `expiry_days` number, nullable — Número de dias até a expiração. Envie `null` para pacotes sem expiração.
  - `type` 'SINGLE' | 'MULTIPLE' — Tipo do pacote: `SINGLE` ou `MULTIPLE`
  - `inventory_amount` number, nullable — Quantidade em estoque. Envie `null` para estoque ilimitado.
  - `per_user_limit` boolean — Define se o pacote pode ser comprado apenas uma vez por usuário
  - `min_amount` number, nullable — Quantidade mínima de compra (apenas pacotes `MULTIPLE`)
  - `image` string, nullable — URL da imagem do pacote. Envie `null` para remover a imagem
  - `parent_id` number, nullable — ID do pacote pai. Use para transformar o pacote em uma variação
  - `commands` CommandInput[] — Lista de comandos associados. Se fornecida, **substitui** todos os comandos existentes.
    - `type` 'PURCHASE' | 'EXPIRY' | 'REFUND' | 'CHARGEBACK', required — Momento de execução: `PURCHASE`, `EXPIRY`, `REFUND` ou `CHARGEBACK`
    - `command` string, required — Comando a ser executado (máximo 500 caracteres)
    - `game_server_id` number — ID do servidor de jogo. **Obrigatório para lojas do tipo `MINECRAFT` ou `HYTALE`.**
    - `offline_execute` boolean — Indica se o comando deve ser executado com o jogador offline. **Obrigatório para lojas do tipo `MINECRAFT` ou `HYTALE`.**
    - `schedule` number, nullable — Dias agendados para executar o comando, entre 1 e 365
    - `execute_once` boolean — Se `true`, o comando só será executado uma vez, ignorando quantidade de compra
  - `discord_actions` DiscordActionInput[] — Ações do Discord. Se fornecida, **substitui** todas as ações existentes.
    - `type` 'PURCHASE' | 'EXPIRY' | 'REFUND' | 'CHARGEBACK', required — Momento da ação: `PURCHASE`, `EXPIRY`, `REFUND` ou `CHARGEBACK`
    - `action` 'ADD_ROLE' | 'REMOVE_ROLE' | 'SEND_MESSAGE' | 'ADD_BAN' | 'REMOVE_BAN', required — Ação executada: `ADD_ROLE`, `REMOVE_ROLE`, `SEND_MESSAGE`, `ADD_BAN` ou `REMOVE_BAN`
    - `parameters` object, required — Parâmetros da ação
      - `role_id` string, nullable — ID do cargo. Obrigatório para `ADD_ROLE`.
      - `channel_id` string, nullable — ID do canal. Obrigatório para `SEND_MESSAGE`.
      - `message` string, nullable — Mensagem enviada. Obrigatória para `SEND_MESSAGE` (máximo 500 caracteres).
  - `variables` number[], nullable — IDs das variáveis associadas. O conjunto é sincronizado com o enviado. Envie `null` para remover todas as variáveis.
  - `content` object, nullable — Conteúdo adicional entregue na compra. Envie `null` para remover.
    - `title` string, nullable, required — Título do conteúdo
    - `value` string, required — Valor/conteúdo (HTML ou texto simples)
    - `is_plain` boolean, required — `true` se o conteúdo é texto simples, `false` para HTML
    - `send_email` boolean, required — Indica se o conteúdo deve ser enviado por email na aprovação
  - `license_keys` string[], nullable — Lista completa de chaves de licença (máximo 5.000 chaves, 3.000 caracteres cada). Envie `null` para remover todas
  - `license_key_format` object, nullable — Aplicar formatação em chaves de licença. Envie `null` para remover
    - `separator` string, required — Separador entre os campos da chave
    - `fields` string[], required — Lista de campos que compõem a chave (mínimo 1 campo)
  - `chat_delivery` object, nullable — Configurações de entrega via chat. Envie `null` para desabilitar
    - `enabled` boolean, required — Habilita a entrega via chat
    - `initial_message` string, nullable — Mensagem inicial enviada no chat (máximo 3.000 caracteres)

## Response `200`

OK

- Package — Representação de um pacote.
  - `id` number
  - `store_id` number
  - `category_id` number
  - `position` number
  - `enabled` boolean
  - `name` string
  - `slug` string
  - `type` 'SINGLE' | 'MULTIPLE'
  - `price` number
  - `compare_at_price` number, nullable
  - `expiry_days` number, nullable
  - `inventory_amount` number, nullable
  - `per_user_limit` boolean
  - `description` string, nullable
  - `image` string, nullable
  - `icon` string, nullable
  - `parent_id` number, nullable
  - `is_variation_parent` boolean
  - `download_key` string, nullable
  - `min_amount` number, nullable
  - `license_key_format` object, nullable
  - `chat_delivery` object, nullable
  - `price_display` string
  - `created_at` string
  - `updated_at` string

---

[API](https://skmtc.net/centralcart/apis/centralcart-api.md) · [All operations](https://skmtc.net/centralcart/apis/centralcart-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/centralcart/centralcart-api/versions/6cbd98848375/schema)
