---
title: "POST /dental-charts/{id}/finalize"
method: POST
path: "/dental-charts/{id}/finalize"
tags: ["DentalCharts"]
---

# POST /dental-charts/{id}/finalize

`POST /dental-charts/{id}/finalize`

## Request

- Base URL: `https://api.clinicos.vet/backend/business`
- URL: `https://api.clinicos.vet/backend/business/dental-charts/{id}/finalize`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/docs/dental-charts/:id/finalize/post.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `id` string, required

## Response `200`

OK

- DentalChartDto
  - `id` string
  - `appointmentId` string
  - `patientId` string
  - `species` string: `canine` | `feline` | `equine`.
  - `teeth` DentalToothDto[]
    - `toothNumber` union
      - integer
      - string, int32
    - `presence` string: `present` | `missing` | `extracted` | `unerupted`.
    - `findings` DentalToothFindingDto[]
      - `id` string
      - `code` string
      - `label` string
      - `severity` string: `info` | `mild` | `moderate` | `severe`.
      - `surfaces` string[], nullable: Any of `mesial`, `distal`, `buccal`, `lingual`, `occlusal`.
      - `note` string, nullable
      - `createdAt` string, date-time
    - `treatments` DentalToothTreatmentDto[]
      - `id` string
      - `code` string
      - `label` string
      - `status` string: `recommended` | `performed`.
      - `note` string, nullable
      - `createdAt` string, date-time
    - `periodontal` DentalPeriodontalDto: Six-site probing depths (mm) plus recession, mobility and furcation grades. Null means "not measured", which is different from zero.
      - `mb` union
        - number, double
        - string, double
      - `b` union
        - number, double
        - string, double
      - `db` union
        - number, double
        - string, double
      - `ml` union
        - number, double
        - string, double
      - `l` union
        - number, double
        - string, double
      - `dl` union
        - number, double
        - string, double
      - `recession` union
        - number, double
        - string, double
      - `mobility` union: 0–3.
        - integer
        - string, int32
      - `furcation` union: 0–3.
        - integer
        - string, int32
    - `note` string
    - `radiographRefs` string[]: Imaging references (ImagingStudy ids). Not populated yet — ITE-1151.
  - `notes` string
  - `version` union: Optimistic-concurrency version. Send it back on every save; a save against a stale version is refused with 409 and the current chart.
    - integer
    - string, int32
  - `isFinalized` boolean
  - `finalizedAt` string, date-time, nullable
  - `finalizedById` string, nullable
  - `createdAt` string, date-time
  - `updatedAt` string, date-time
  - `visitDate` string, date-time, nullable: When the chart's visit was scheduled to start (UTC). Set on the patient's chart list, which labels and orders charts by visit, not by when the chart was started; null elsewhere.

## Other responses

- `404`: Not Found
- `409`: Conflict

## Changes

- **2026-10-11** `f7ab358172d0`: 3 info
  - added the optional property `visitDate` to the response with the `200` status (media type: text/plain)
  - added the optional property `visitDate` to the response with the `200` status (media type: application/json)
  - added the optional property `visitDate` to the response with the `200` status (media type: text/json)
- **2026-10-07** `021fabd866ff`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/changes/dental-charts/:id/finalize/post.md)

---

[API](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1.md) - [All operations](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/revisions/099cf36186e0?raw)
