---
title: "PUT /SurgicalRecords/{id}/events/{eventId}"
method: PUT
path: "/SurgicalRecords/{id}/events/{eventId}"
tags: ["SurgicalRecords"]
---

# PUT /SurgicalRecords/{id}/events/{eventId}

`PUT /SurgicalRecords/{id}/events/{eventId}`

## Request

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

## Path parameters

- `id` string, required
- `eventId` string, required

## Request body

- UpdateSurgicalTimelineEventRequest
  - `title` string, nullable
  - `details` string, nullable
  - `isPinned` boolean, nullable
  - `occurredAt` string, date-time, nullable: Corrected time the step actually happened, UTC. Omit to leave the stamp alone. A value that differs from the stored stamp appends a `SurgicalTimelineEventAmendment`; it is never a silent overwrite.
  - `amendmentReason` string, nullable: Optional justification recorded alongside an DateTime? UpdateSurgicalTimelineEventRequest.OccurredAt correction.

## Response `200`

OK

- SurgicalTimelineEventDto
  - `id` string
  - `surgicalRecordId` string
  - `title` string
  - `details` string, nullable
  - `type` string
  - `color` string, nullable
  - `isPinned` boolean
  - `occurredAt` string, date-time
  - `sortOrder` union
    - integer
    - string, int32
  - `createdByAi` boolean: True when the event came from AI transcript extraction (human-accepted).
  - `milestoneKind` string, nullable: "cut_start" / "cut_end" when this event IS a surgical milestone, else null (ITE-785). The console draws a distinct marker on these rather than the ordinary event card, and the record's cut columns mirror their stamps.
  - `inventoryItemId` string, nullable: Drug events: the administered inventory item, when the entry named one (ITE-870).
  - `doseAmount` union: Drug events: the amount given, in string? SurgicalTimelineEventDto.DoseUnit.
    - number, double
    - string, double
  - `doseUnit` string, nullable
  - `route` string, nullable: Drug events: route of administration as charted.
  - `createdAt` string, date-time
  - `amendments` SurgicalTimelineEventAmendmentDto[]: Corrections made to DateTime SurgicalTimelineEventDto.OccurredAt, oldest first. Empty for the overwhelming majority of events; a non-empty list is what the UI keys off to mark a stamp as edited.
    - `id` string
    - `originalOccurredAt` string, date-time
    - `amendedOccurredAt` string, date-time
    - `reason` string, nullable
    - `amendedById` string, nullable
    - `amendedByName` string, nullable
    - `createdAt` string, date-time

## Other responses

- `400`: Bad Request
- `404`: Not Found

## Changes

- **2026-09-30** `d58b40cfca93`: 12 info
  - added the optional property `doseAmount` to the response with the `200` status (media type: text/plain)
  - added the optional property `doseAmount` to the response with the `200` status (media type: application/json)
  - added the optional property `doseAmount` to the response with the `200` status (media type: text/json)
  - added the optional property `doseUnit` to the response with the `200` status (media type: text/plain)
  - …8 more
- **2026-09-17** `d4ae30be0619`: 3 info
  - added the optional property `milestoneKind` to the response with the `200` status (media type: text/plain)
  - added the optional property `milestoneKind` to the response with the `200` status (media type: application/json)
  - added the optional property `milestoneKind` to the response with the `200` status (media type: text/json)
- **2026-09-11** `503cd0546309`: 3 info
  - added the optional property `createdByAi` to the response with the `200` status (media type: text/plain)
  - added the optional property `createdByAi` to the response with the `200` status (media type: application/json)
  - added the optional property `createdByAi` to the response with the `200` status (media type: text/json)
- …earlier changes not shown

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