DuplicateContractInput

Body for POST /contracts/{contract_id}/duplicate.

The modal is a client-side editing surface: the user edits the copy before anything is persisted, and this payload is the final result. The server creates the new contract from the source plus these values — it never reads a draft state. The duplicate is always created in DRAFT regardless of the source's status.

  • Name for the new contract (FE pre-fills ' Copy')

  • Set true to proceed after the caller has acknowledged a dates-overlap conflict (see 409 response)

  • Which source data to copy onto the duplicate

    Properties: 6
  • Product for the duplicate; when it differs from the source the FE has already replaced the service lines

  • Final, edited service lines to create on the duplicate

    Properties: 25