---
title: "Returns the visit's consent audit trail: the estimate attached to this appointment plus the patient's standalone estimates created the same clinic-local day, each event labelled with its estimate number and whether that estimate is linked to the visit (ITE-1452). Empty when there are none. Used by the Chronicle and Schedule consent viewer modals; the estimate builder reads `/estimates/{id}/consent-events`."
method: GET
path: "/Appointments/{id}/consent-events"
tags: ["Appointments"]
---

# Returns the visit's consent audit trail: the estimate attached to this appointment plus the patient's standalone estimates created the same clinic-local day, each event labelled with its estimate number and whether that estimate is linked to the visit (ITE-1452). Empty when there are none. Used by the Chronicle and Schedule consent viewer modals; the estimate builder reads \`/estimates/{id}/consent-events\`.

`GET /Appointments/{id}/consent-events`

## Request

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

## Path parameters

- `id` string, required

## Response `200`

OK

- EstimateConsentEventListResponseDto
  - `events` EstimateConsentEventDto[]
    - `id` string
    - `estimateId` string
    - `eventType` string
    - `consentMethod` string, nullable
    - `tierSelected` string, nullable
    - `hasSignature` boolean: Whether this event has a drawn signature (without returning the base64 payload).
    - `signatureData` string, nullable: Base64 PNG. Only populated on the detail view to keep list payloads small.
    - `signedName` string, nullable
    - `capturedByUserId` string, nullable
    - `capturedByName` string, nullable
    - `notes` string, nullable
    - `createdAt` string, date-time
    - `mergedFromEstimateNumber` string, nullable: Set when this event was captured on another estimate that was later merged into this one (ITE-1450): that estimate's number. Imported history — it doesn't count as consent to this estimate.
    - `estimateNumber` string, nullable: Number (TP-…) of the estimate this event belongs to, so a log spanning several estimates can label each row (ITE-1452).
    - `linkedToAppointment` boolean: False when the visit's log includes this event from one of the patient's standalone estimates that isn't linked to the visit (ITE-1452). Always true on a single estimate's log.
    - `acknowledgements` DisclaimerAcknowledgementDto[]: Disclaimer text frozen at this acceptance (P-ITE-69). Empty when none was shown.
      - `id` string
      - `disclaimerId` string
      - `disclaimerVersionId` string
      - `versionNumber` union
        - integer
        - string, int32
      - `title` string
      - `body` string
      - `contentHash` string
      - `requiredAcknowledgement` boolean
      - `signedName` string, nullable
      - `createdAt` string, date-time

## Changes

- **2026-10-28** `099cf36186e0`: 6 info
  - added the optional property `events/items/estimateNumber` to the response with the `200` status (media type: text/plain)
  - added the optional property `events/items/estimateNumber` to the response with the `200` status (media type: application/json)
  - added the optional property `events/items/estimateNumber` to the response with the `200` status (media type: text/json)
  - added the optional property `events/items/linkedToAppointment` to the response with the `200` status (media type: text/plain)
  - …2 more
- **2026-10-21** `85ee96c0bb96`: 3 info
  - added the optional property `events/items/mergedFromEstimateNumber` to the response with the `200` status (media type: text/plain)
  - added the optional property `events/items/mergedFromEstimateNumber` to the response with the `200` status (media type: application/json)
  - added the optional property `events/items/mergedFromEstimateNumber` to the response with the `200` status (media type: text/json)
- **2026-10-11** `f7ab358172d0`: 3 info
  - added the optional property `events/items/acknowledgements` to the response with the `200` status (media type: text/plain)
  - added the optional property `events/items/acknowledgements` to the response with the `200` status (media type: application/json)
  - added the optional property `events/items/acknowledgements` to the response with the `200` status (media type: text/json)

[Operation history](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/changes/Appointments/:id/consent-events/get.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)
