Skip to main content
PUT
/
public_api
/
subscriptions
/
{id}
/
cURL
curl --request PUT \
  --url https://api.cakto.com.br/public_api/subscriptions/{id}/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{}'
{
  "id": "<string>",
  "amount": "<string>",
  "parent_order": {},
  "paymentMethod": {},
  "customer": {},
  "product": {},
  "offer": {},
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "current_period": 123,
  "recurrence_period": 123,
  "quantity_recurrences": 123,
  "trial_days": 123,
  "max_retries": 123,
  "retry_interval": 123,
  "paid_payments_quantity": 123,
  "retention": "<string>",
  "orders": [
    {}
  ],
  "next_payment_date": "2023-11-07T05:31:56Z",
  "canceledAt": "2023-11-07T05:31:56Z"
}

Escopo

    write subscriptions

O que faz

Atualiza campos editáveis de uma assinatura existente. Envie apenas os campos que deseja alterar. Utilize este endpoint para ajustar o valor, a periodicidade, a quantidade de recorrências ou a próxima data de cobrança de uma assinatura ativa.

Casos de uso

  • Ajustar o valor da assinatura após mudança de plano ou condições comerciais
  • Alterar a periodicidade de cobrança (mensal, trimestral, anual)
  • Corrigir a próxima data de cobrança após falhas ou ajustes manuais
  • Modificar a quantidade de recorrências ou dias de teste

Campos do body

Altera o valor cobrado a cada ciclo. Útil para reajustes de preço ou mudanças de plano.
{ "amount": 199.90 }
Define o intervalo entre cobranças. Comum para migrar clientes entre planos mensal, trimestral ou anual.
{ "recurrence_period": 30 }
PlanoDias
Mensal30
Trimestral90
Semestral180
Anual365
Limita quantas vezes a assinatura será cobrada. Deixe em branco para cobranças ilimitadas.
{ "quantity_recurrences": 12 }
Adiciona ou ajusta o período de teste da assinatura. Aplica-se antes da primeira cobrança efetiva.
{ "trial_days": 7 }
Quantas vezes o sistema tentará cobrar em caso de falha antes de suspender a assinatura.
{ "max_retries": 3 }
Tempo de espera entre uma tentativa de cobrança falha e a próxima.
{ "retry_interval": 3 }
Define manualmente a próxima data de cobrança. Útil para correções ou adiamentos.
{ "next_payment_date": "2026-07-15T00:00:00Z" }
Vincula a assinatura a uma oferta diferente. Envie o UUID da oferta desejada.
{ "offer": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }
Altera o método de pagamento principal. Para atualizar apenas os dados do cartão sem cobrar, use o endpoint dedicado.
{ "paymentMethod": "pix" }
ValorDescrição
credit_cardCartão de crédito
pixPIX
boletoBoleto bancário

Erros

StatusDescrição
400Campos inválidos ou valores fora do permitido.
404Assinatura não encontrada.
Este endpoint não executa ações operacionais como pausar, reativar ou cancelar. Campos desconhecidos ou de ação legada (ex.: action, plan_id) são ignorados.

Authorizations

Authorization
string
header
required

Token de autenticação do tipo Bearer {access_token}, onde {access_token} é o token obtido no fluxo de autenticação.

Path Parameters

id
string<uuid>
required

Id da assinatura.

Body

application/json

The body is of type object.

Response

Assinatura atualizada.

id
string
required

Identificador único da assinatura

Maximum string length: 255
status
enum<string>
required

Status atual da assinatura

Available options:
active,
inactive,
canceled,
expired,
paused,
trial
amount
string<decimal>
required

Valor da assinatura

parent_order
object
required

Pedido de origem da assinatura

paymentMethod
object
required

Método de pagamento usado na assinatura

customer
object
required

Cliente associado à assinatura

product
object
required

Produto associado à assinatura

offer
object
required

Oferta associada à assinatura

createdAt
string<date-time>
required
read-only

Data de criação

updatedAt
string<date-time>
required
read-only

Data da última atualização

current_period
integer

Período atual da assinatura

recurrence_period
integer

Quantidade de dias entre cada cobrança

quantity_recurrences
integer

Quantidade total de recorrências configuradas

trial_days
integer

Dias de teste configurados na assinatura

max_retries
integer

Número máximo de tentativas de cobrança

retry_interval
integer

Intervalo entre tentativas de cobrança

paid_payments_quantity
integer

Quantidade de pagamentos já efetuados

retention
string

Tempo em que a assinatura permaneceu ativa

orders
object[]

Pedidos vinculados à assinatura

next_payment_date
string<date-time> | null

Data estimada do próximo pagamento

canceledAt
string<date-time> | null

Data de cancelamento