---
title: "Atualizar contrato"
method: PUT
path: "/contracts/{id}"
tags: ["Contratos"]
---

# Atualizar contrato

`PUT /contracts/{id}`

Atualiza informações de um determinado contrato.

**Tipos de contratos suportados:**

* Horas

* Crédito

**Regras e validações:**

* Os atributos aceitos no corpo da requisição, bem como os retornados na resposta, variam de acordo com o tipo de contrato informado. Consulte os exemplos e os schemas, para entender as diferenças entre cada tipo

* Não é permitido atualizar contratos cancelados ou inativos

## Request body

- union
  - object — Atualização de contrato de horas
    - `name` string — Nome do contrato
    - `automatic_renewal` boolean — Renovação automática?
    - `billing_in_batch` boolean — Faturamento em lote?
    - `automatic_billing` boolean — Faturamento automático?
    - `billing_days_before` number — Faturar quantos dias antes (0-28)
    - `technical_observations` string — Observações técnicas
    - `rider` object — Dados do adendo (contrato de horas)
      - `due_day` number — Dia de vencimento (1-28)
      - `description` string — Descrição do adendo
      - `value` unknown
      - `discount_value` unknown
      - `qtd_hours` unknown
      - `surplus_hour_value` unknown
  - object — Atualização de contrato de crédito
    - `name` string — Nome do contrato
    - `automatic_renewal` boolean — Renovação automática?
    - `billing_in_batch` boolean — Faturamento em lote?
    - `automatic_billing` boolean — Faturamento automático?
    - `billing_days_before` number — Faturar quantos dias antes (0-28)
    - `technical_observations` string — Observações técnicas
    - `rider` object — Dados do adendo (contrato de crédito)
      - `due_day` number — Dia de vencimento (1-28)
      - `description` string — Descrição do adendo
      - `value` unknown
      - `discount_value` unknown
      - `tax` unknown

## Response `200`

Contrato atualizado com sucesso

- union
  - object — Contrato de horas
    - `id` number, required — Identificador do contrato
    - `name` string, required — Nome do contrato
    - `active` boolean, required — Indica se o contrato está ativo
    - `expiration_date` string, nullable, required — Data de expiração do contrato
    - `duration` number, nullable, required — Duração do contrato em meses
    - `automatic_renewal` boolean, required — Renovação automática
    - `permit_appointments_readjustment` boolean — Permite apontamentos quando pendente de reajuste
    - `billing_in_batch` boolean, required — Faturamento em lote
    - `automatic_billing` boolean, required — Faturamento automático
    - `billing_days_before` number, required — Faturar em quantos dias antes
    - `technical_observations` string, nullable — Observações técnicas
    - `consumption_reminder` object, required — Configuração de lembrete de consumo
      - `notification` boolean, required — Notificar sobre consumo?
      - `percent` number, nullable, required — (%) Percentual de consumo para alertar
      - `emails` string, nullable, required — Emails para enviar notificações, separados por vírgula
    - `client` object, required — Objeto contendo informações sobre o cliente associado ao contrato
      - `id` number, required — Identificador do cliente
      - `name` string, required — Nome do cliente
    - `contract_type` object, required — Objeto contendo informações sobre o tipo de contrato
      - `id` number, required — Identificador do tipo de contrato
      - `name` string, required — Nome do tipo de contrato
      - `modality` 'Hours' | 'Credit', required — Nome da modalidade do contrato
    - `last_rider` object, nullable, required — Último adendo do contrato
      - `id` number, required — Identificador do adendo
      - `rider_number` number, required — Número do adendo
      - `release` number, required — Número da versão do adendo
      - `due_day` number, required — Dia de vencimento
      - `description` string, nullable, required — Descrição do adendo
      - `value` number, required — Valor mensal
      - `discount_value` number, required — Desconto
      - `discount_type` string, nullable, required — Tipo de desconto
      - `qtd_hours` string, required — Horas por ciclo de fechamento
      - `surplus_hour_value` number, required — Valor da hora excedente
  - object — Contrato de crédito
    - `id` number, required — Identificador do contrato
    - `name` string, required — Nome do contrato
    - `active` boolean, required — Indica se o contrato está ativo
    - `expiration_date` string, nullable, required — Data de expiração do contrato
    - `duration` number, nullable, required — Duração do contrato em meses
    - `automatic_renewal` boolean, required — Renovação automática
    - `permit_appointments_readjustment` boolean — Permite apontamentos quando pendente de reajuste
    - `billing_in_batch` boolean, required — Faturamento em lote
    - `automatic_billing` boolean, required — Faturamento automático
    - `billing_days_before` number, required — Faturar em quantos dias antes
    - `technical_observations` string, nullable — Observações técnicas
    - `consumption_reminder` object, required — Configuração de lembrete de consumo
      - `notification` boolean, required — Notificar sobre consumo?
      - `percent` number, nullable, required — (%) Percentual de consumo para alertar
      - `emails` string, nullable, required — Emails para enviar notificações, separados por vírgula
    - `client` object, required — Objeto contendo informações sobre o cliente associado ao contrato
      - `id` number, required — Identificador do cliente
      - `name` string, required — Nome do cliente
    - `contract_type` object, required — Objeto contendo informações sobre o tipo de contrato
      - `id` number, required — Identificador do tipo de contrato
      - `name` string, required — Nome do tipo de contrato
      - `modality` 'Hours' | 'Credit', required — Nome da modalidade do contrato
    - `last_rider` object, nullable, required — Último adendo do contrato
      - `id` number, required — Identificador do adendo
      - `rider_number` number, required — Número do adendo
      - `release` number, required — Número da versão do adendo
      - `due_day` number, required — Dia de vencimento
      - `description` string, nullable, required — Descrição do adendo
      - `value` number, required — Crédito mensal
      - `discount_value` number, required — Desconto
      - `discount_type` string, nullable, required — Tipo de desconto
      - `external_value` number, required — Valor hora externo
      - `internal_value` number, required — Valor hora interno
      - `remote_value` number, required — Valor hora remoto
      - `tax` number, required — Valor fixo mensal

## Other responses

- `403` — ### **Problemas com permissão** Essa resposta significa que o seu usuário está autenticado corretamente, porém, não possui a permissão ou licença necessária para acessar essa rota
- `404` — Contrato não encontrado
- `422` — Erro de validação

---

[API](https://skmtc.net/tiflux/apis/tiflux-official-api.md) · [All operations](https://skmtc.net/tiflux/apis/tiflux-official-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tiflux/tiflux-official-api/revisions/c656412a58bc/schema)
