---
title: "Create Contract"
method: POST
path: "/api/contracts/"
tags: ["Contracts - Protected"]
---

# Create Contract

`POST /api/contracts/`

Create new contract.

Automatically creates commission record for the user.

## Headers

- `x-api-token` string, nullable

## Request body

- ContractCreate — Contract creation request.
  - `Cliente` integer, required — Client ID
  - `Viatura` integer, required — Vehicle ID
  - `Data` string, date-time, nullable — Contract date
  - `Oferta1` string, nullable
  - `Oferta2` string, nullable
  - `Oferta3` string, nullable
  - `Oferta4` string, nullable
  - `Oferta5` string, nullable
  - `Oferta6` string, nullable
  - `ValorReserva` union — Reservation value
    - number
    - string
  - `ValorVenda` number, nullable — Sale value
  - `financiado` boolean, nullable — Is financed
  - `temretoma` boolean, nullable — Has trade-in
  - `kmretoma` integer, nullable — Trade-in km
  - `valorretoma` union — Trade-in value
    - number
    - string
  - `fornecedorretoma` integer, nullable — Trade-in supplier ID
  - `matricularetoma` string, nullable
  - `marcaretoma` string, nullable
  - `modeloretoma` string, nullable
  - `garantia` integer, nullable — Warranty ID
  - `contratoproposta` integer, nullable — Proposal contract ID
  - `transportepara` string, nullable
  - `Fechado` boolean, nullable — Is closed
  - `Comercial` integer, nullable — Salesperson ID
  - `Datafecho` string, date-time, nullable — Closing date
  - `Dataentrega` string, date-time, nullable — Delivery date
  - `Iva` number, nullable — VAT percentage
  - `FaturaID` integer, nullable — Invoice ID
  - `IDempresa` integer, nullable — Company ID (set server-side from auth)
  - `IDpontodevenda` integer, nullable — Point of sale ID
  - `IDestado` integer — State ID (1=open, 2=closed, 3=cancelled)
  - `ValoremFalta` union — Missing value
    - number
    - string
  - `Reservaate` string, date, nullable — Reservation until date
  - `idresponsavel` integer, nullable — Responsible user ID
  - `meses_garantia` integer, nullable — Warranty months
  - `business_sale` boolean, nullable — Is a business sale (venda empresarial)
  - `retomas` integer[], nullable — List of vehicle IDs for trade-ins

## Response `201`

Successful Response

- ContractResponse — Contract response with enriched data.
  - `ID` integer, required
  - `Cliente` integer, nullable, required
  - `ClienteNome` string, nullable, required
  - `Viatura` integer, nullable, required
  - `ViaturaMatricula` string, nullable, required
  - `Data` string, date-time, nullable, required
  - `ValorReserva` string, nullable, required
  - `ValorVenda` number, nullable, required
  - `Fechado` boolean, nullable, required
  - `Datafecho` string, date-time, nullable, required
  - `IDestado` integer, required
  - `IDempresa` integer, required
  - `IDpontodevenda` integer, nullable, required
  - `Comercial` integer, nullable, required
  - `idresponsavel` integer, nullable
  - `ResponsavelNome` string, nullable
  - `Oferta1` string, nullable
  - `Oferta2` string, nullable
  - `Oferta3` string, nullable
  - `Oferta4` string, nullable
  - `Oferta5` string, nullable
  - `Oferta6` string, nullable
  - `garantia` integer, nullable — Warranty ID (Z_Warranties)
  - `meses_garantia` integer, nullable — Warranty duration in months
  - `contratoproposta` integer, nullable — Financing proposal ID
  - `Dataentrega` string, date-time, nullable — Delivery date
  - `Reservaate` string, date, nullable — Reservation until date
  - `Iva` number, nullable — VAT value
  - `FaturaID` integer, nullable — Linked invoice ID
  - `comissao_calculada` string, nullable — Calculated commission
  - `business_sale` boolean, nullable — Is a business sale

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/multigest/apis/multigest-protected-api.md) · [All operations](https://skmtc.dev/multigest/apis/multigest-protected-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/multigest/multigest-protected-api/revisions/4b44eb76b3ee/schema)
