---
title: "Undo one change-log entry (TMO-255)"
method: POST
path: "/changes/{changeId}/undo"
tags: ["Records"]
---

# Undo one change-log entry (TMO-255)

`POST /changes/{changeId}/undo`

## Request

- Base URL: `https://api.teamo360.com/api/v1`
- URL: `https://api.teamo360.com/api/v1/changes/{changeId}/undo`
- Auth: HTTP bearer

Inverse-applies a field_changed entry (or delegates deleted/archived entries to restore/unarchive) through the normal write pipeline, producing a new history entry. Refuses when the value has drifted since the entry (409 CONFLICT), when the column is computed or no longer exists, and for column types whose history stores display names (user, linked_record, timeline, file).

Requires the `data:write` token scope.

## Path parameters

- `changeId` string, required

## Response `200`

Success

## Other responses

- `400`: Malformed parameters or body
- `401`: Missing, invalid, expired, or legacy token
- `403`: Blocked by role, token scope, module grant, or org policy
- `404`: Entity missing or outside the principal’s access
- `429`: Rate limit exceeded - see Retry-After

---

[API](https://skmtc.dev/teamo360/apis/teamo-public-api.md) · [All operations](https://skmtc.dev/teamo360/apis/teamo-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/teamo360/apis/teamo-public-api/revisions/32528ecbc4f4?raw)
