---
title: "Listing Versions"
method: GET
path: "/v1/projects/{projectId}/datasets/{name}/entities/{uuid}/versions"
tags: ["Entity Management"]
---

# Listing Versions

`GET /v1/projects/{projectId}/datasets/{name}/entities/{uuid}/versions`

This returns the Entity metadata and data for every version of this Entity, in ascending creation order.

This endpoint supports retrieving extended metadata; provide a header `X-Extended-Metadata: true` to return a `creator` data object alongside the `creatorId` Actor ID reference.

There is an optional query flag `relevantToConflict` that returns the subset of past versions of an Entity that are relevant to the Entity's current conflict. This includes the latest version, the base version, the previous server version, and any other versions since the last time the Entity was in a conflict-free state. If the Entity is not in conflict, zero versions are returned.

## Path parameters

- `projectId` number, required
- `name` string, required
- `uuid` string, required

## Query parameters

- `relevantToConflict` boolean

## Response `200`

OK

- EntityVersionFull[] — Standard Response
  - `label` string — Label of the Entity
  - `current` boolean — if the version is the latest one
  - `creatorId` number — The ID of the Actor (App User, User, or Public Link) that originally created the Entity.
  - `userAgent` string — The self-identified `userAgent` of the device that created the `Entity` version.
  - `conflictingProperties` string[] — list of properties updated offline simultaneously.
  - `version` number — The version number of the Entity. Each update increments this number.
  - `baseVersion` number — The version number of the version that was the "base version" of this version.
  - `branchId` string — The uuid of a branch linking multiple offline entity updates together.
  - `trunkVersion` number — The version number of the last known base server version of an entity, in the case of an offline branch of updates.
  - `branchBaseVersion` number — The base version of the entity according to the submission. In the case of an offline branch of updates, this may not match the version of the base submission on Central.
  - `data` DataExample
    - `firstName` string
    - `age` string
  - `dataReceived` DataReceivedExample
    - `firstName` string
    - `age` string
    - `label` string
  - `source` object — The source of the Entity version, such as a Submission or an API request. This property is experimental and may change in the future.
  - `baseDiff` string[] — List of properties that are different between this version and its base version. Includes the label if it differs between the two versions.
  - `serverDiff` string[] — List of properties that are different between this version and the previous version on the server. Includes the label if it differs between the two versions.
  - `conflict` 'soft' | 'hard' — Type of the conflict if this version causes a conflict; otherwise `null`
  - `resolved` boolean — Is the conflict resolved? Note that this is also false for the version which didn't cause a conflict
  - `lastGoodVersion` boolean — Indicates whether this version is the last known good version. Currently, the last known good version is defined as the version immediately prior to the first unresolved conflict. If there is no conflict, or if all conflicts are resolved, then the current version is the last known good version. This property is experimental, as the definition of the last known good version may change in the future.
  - `relevantToConflict` boolean — Indicates whether this version includes information relevant to resolving a conflict. If so, it will be shown to the user during conflict resolution. This property is experimental, as we may redefine conflict relevance in the future.

## Changes

- **2025-12-20** `022694254f0d` — 1 info
  - api operation id `Listing Entity Versions` removed and replaced with `listEntityVersions`
- **2025-10-27** `b11b54eea487` — 1 info
  - removed the non-success response with the status `403`
- **2025-10-10** `196d7d957d94` — 1 info
  - endpoint added
- **2025-03-13** `e8c2858fd4eb` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/getodk/apis/odk-central-api/changes/v1/projects/:projectId/datasets/:name/entities/:uuid/versions/get.md)

---

[API](https://skmtc.dev/getodk/apis/odk-central-api.md) · [All operations](https://skmtc.dev/getodk/apis/odk-central-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getodk/apis/odk-central-api/revisions/063096824199?raw)
