---
title: "Dismiss Contract Term Fields Endpoint"
method: POST
path: "/contracts/{contract_id}/term-fields/dismiss"
tags: ["contracts"]
---

# Dismiss Contract Term Fields Endpoint

`POST /contracts/{contract_id}/term-fields/dismiss`

Discard selected proposed term fields; the Contract is left untouched.

## Path parameters

- `contract_id` string, uuid, required

## Request body

- DismissContractTermFieldsRequest — Which of the summary run's proposed term fields to discard.
  - `effective_date` boolean
  - `expiration_date` boolean
  - `auto_renews` boolean
  - `notice_period` boolean
  - `termination_notice_date` boolean
  - `obligations` boolean

## Response `200`

Successful Response

- ContractChangeSetResponse — The reviewable term-field output of the latest contract summary run. Term-field proposals stay pending until the user accepts them. Proposed key dates are PROPOSED ``AnnualKeyDates`` rows the user ratifies individually; fetch them (alongside the contract's active/superseded dates) from ``GET /thirdparties/key-dates/contract/{contract_id}`` instead.
  - `contract_id` string, uuid, required
  - `summary_run_id` string, uuid, nullable
  - `summary_run_status` 'pending' | 'running' | 'completed' | 'failed'
  - `effective_date` ProposedDate — A single date the contract summary agent proposes for a term field. ``accepted`` flips to True once the user ratifies it onto the Contract.
    - `value` string, date, nullable
    - `explanation` string, nullable
    - `accepted` boolean
  - `expiration_date` ProposedDate — A single date the contract summary agent proposes for a term field. ``accepted`` flips to True once the user ratifies it onto the Contract.
    - `value` string, date, nullable
    - `explanation` string, nullable
    - `accepted` boolean
  - `auto_renews` ProposedAutoRenew
    - `value` boolean, nullable
    - `explanation` string, nullable
    - `accepted` boolean
  - `notice_period` ProposedNoticePeriod — How much notice the documents require, as the *period* rather than the deadline it implies. The period is the rule the contract states; the deadline it lands on is proposed separately (``ContractSummaryChangeSet.termination_notice_date``), because the two are not always one subtraction apart. Keeping the period is what lets a deadline that *is* that subtraction follow an amended expiration instead of going stale (``NoticeDateSource.DERIVED``).
    - `value` integer, nullable
    - `unit` 'days' | 'months' — Unit of a termination-notice period. Months are not 30 days: 3 months before 2026-05-31 is 2026-02-28, while 90 days before it is 2026-03-02. This generates a legal deadline, so the unit is stored rather than normalized to days (see ``backend.helpers.contract_terms.derive_notice_date``).
    - `explanation` string, nullable
    - `accepted` boolean
  - `termination_notice_date` ProposedDate — A single date the contract summary agent proposes for a term field. ``accepted`` flips to True once the user ratifies it onto the Contract.
    - `value` string, date, nullable
    - `explanation` string, nullable
    - `accepted` boolean
  - `obligations` ProposedObligations
    - `value` string[], nullable
    - `explanation` string, nullable
    - `accepted` boolean

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/kobaltlabs/apis/fastapi.md) · [All operations](https://skmtc.dev/kobaltlabs/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/kobaltlabs/fastapi/revisions/3ff4c0bd276b/schema)
