Skip to main content
POST
Creates a new contract in your COR instance through the integrations service. Validates contract type, status, client association, and validates date fields in YYYY-MM-DD format before creating. The currency ISO sent in the request must have a previously configured currency exchange in COR. If no exchange rate exists from the contract currency to the company base currency, contract creation is rejected with status: 400, name: CORCustomError, and code: CTR006.

Request Body Requirements

object
required
string
required
External contract ID from your source system
string
required
Contract name
string
required
External client ID. The client must have been previously created through the integrations API.
string
Contract type (e.g., “retainer”, “project”, “hourly”)
string
Contract status (e.g., “active”, “pending”, “completed”)
string
Start date in YYYY-MM-DD format
string
End date in YYYY-MM-DD format
number
Contract value/amount
string
Contract description

Known Errors

  • ValidationError — Missing required fields
  • ClientNotFoundError — The specified client does not exist in the integration mappings
  • DuplicateExternalIdError — A contract with this external ID already exists
  • ValidationErrorInvalid start date format: <value> when start_date is not a valid YYYY-MM-DD date
  • ValidationErrorInvalid end date format: <value> when end_date is not a valid YYYY-MM-DD date
  • CTR006 (CORCustomError, 400) — Cannot save contract. Exchange rate not found for ${currency} to ${baseCurrency}. Please sync exchange rates first.