---
title: "REST API: Get Content Read Report"
type: "wiki"
space: "Axero Documentation"
author: "Anonymous User"
created: 2021-07-08T15:51:34Z
updated: 2026-09-07T19:58:36Z
url: "https://my.axerosolutions.com/spaces/5/axero-documentation/wiki/view/86158/rest-api-get-content-read-report"
---

# REST API: Get Content Read Report

[Open API Guide](https://my.axerosolutions.com/spaces/5/axero-documentation/api-guide?id=86158)
GET/api/content/\{ContentID\}/readreport

Enables administrators and developers to programmatically retrieve a list of people who viewed and confirmed they read content. Supported content types: Articles, blogs, CMS pages, files, ideas, videos, wiki pages.

**Two behaviors worth knowing before you build against this.** When the content is not marked as required reading, the endpoint returns a list of people who *viewed* it rather than people who confirmed reading it. And results are paged 25 at a time, ordered by most recent view, so checking whether one particular person has read an item means raising PageLength or paging through, not testing the default response.

## Request

### Request Header
| Header | Required | Value | Description |
| :--- | :--- | :--- | :--- |
| `Authorization` | YES | `Bearer YOUR_TOKEN` | Bearer token for the authenticated user. [Learn how to create Bearer tokens](https://my.axerosolutions.com/spaces/5/axero-documentation/wiki/view/108973/creating-bearer-tokens). |
### Required Parameters
| Parameter | Type | Required | Location | Description |
| :--- | :--- | :--- | :--- | :--- |
| `ContentID` | Integer | YES | Path | Unique ID of the content |
| `EntityType` | String | YES | Query | ID of the content type.<br><br>Article = 3,<br>Blog = 4<br>CMS page = 12,<br>File = 14,<br>Idea = 44,<br>Video = 7<br>Wiki page = 9. |
| `VersionID` | Integer | YES | Query | Version ID of the content the report is for \(the current version ID for the live report\). Required for the route to match: a request without it answers No HTTP resource was found. |
| `SpaceID` | Integer | YES | Query | ID of the space the content is in |
### Optional Parameters
| Parameter | Type | Required | Location | Description |
| :--- | :--- | :--- | :--- | :--- |
| `ReadFilter` | Integer | NO | Query | Filters the report by read status. Default value is 1.<br><br>People who read = 1<br>People who read and confirmed = 2<br>People who didn't read = 3<br>People who didn't confirm = 4. |
| `SortColumn` | String | NO | Query | Specifies the property to sort results by. Default value is 1.<br><br>Display name = 1<br>Date confirmed = 2. |
| `StartPage` | Integer | NO | Query | Specifies the starting page of list to be returned. Default value is 1. |
| `PageLength` | Integer | NO | Query | Specifies the number of results to be returned per page. Default value is 25. |
| `SortOrder` | Integer | NO | Query | Direction for SortColumn: 0 ascending, 1 descending. Defaults to 0. |
| `JustViews` | Boolean | NO | Query | Return the list of people who viewed the content instead of the read confirmations. Forced to true when the content does not require read confirmation. Defaults to false. |
## Example

### Request Header

```
Authorization: Bearer YOUR_TOKEN
```

### Request URL

`https://your-site.com/api/content/6717/readreport?EntityType=4&SpaceID=252&VersionID=7&ReadFilter=2`

### Success Response

```
{
  "IsError": false,
  "ResponseMessage": "",
  "ResponseData": [
    {
      "ConfirmationID": 1213,
      "UserID": 595,
      "DateConfirmed": "2026-06-29T20:24:03.783",
      "DateLastViewed": "2026-06-29T20:24:01.383",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Ben Newman",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/595/c990f71d-f5f9-4908-b9e1-32b240cda4ec.jpg",
      "UserProfileURL": "https://your-site.com/people/ben-n",
      "DateConfirmedString": "a minute ago",
      "DateLastViewedString": "a minute ago"
    },
    {
      "ConfirmationID": 1188,
      "UserID": 376,
      "DateConfirmed": "2026-09-17T18:46:31.79",
      "DateLastViewed": "2026-02-13T07:10:59.273",
      "ViewCount": 35,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Alexis Fox",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/376/f9c8486c-f3f3-41f9-9f46-044093247dc9.jpg",
      "UserProfileURL": "https://your-site.com/people/admin",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "2/12/2021"
    },
    {
      "ConfirmationID": 1198,
      "UserID": 525,
      "DateConfirmed": "2026-09-17T18:48:06.6",
      "DateLastViewed": "2026-09-17T18:48:03.443",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Maria Shears",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/525/859d3bc5-ebff-42cc-83fd-adf1efd42fdb.jpg",
      "UserProfileURL": "https://your-site.com/people/maria",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "9/17/2020"
    },
    {
      "ConfirmationID": 1196,
      "UserID": 592,
      "DateConfirmed": "2026-09-17T18:47:47.34",
      "DateLastViewed": "2026-09-17T18:47:45.38",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "June Mattie",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/592/32b2035c-37ae-42d3-81cc-1548f26c39da.jpg",
      "UserProfileURL": "https://your-site.com/people/june-m",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "9/17/2020"
    },
    {
      "ConfirmationID": 1195,
      "UserID": 602,
      "DateConfirmed": "2026-09-17T18:47:38.393",
      "DateLastViewed": "2026-09-17T18:47:32.85",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Alice Romero",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/602/06d4a455-7bd7-4c40-9ece-18f12387650c.jpg",
      "UserProfileURL": "https://your-site.com/people/alice",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "9/17/2020"
    },
    {
      "ConfirmationID": 1193,
      "UserID": 606,
      "DateConfirmed": "2026-09-17T18:47:23.037",
      "DateLastViewed": "2026-09-17T18:47:17.863",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Christine Jackson",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/606/58de29bc-05ed-4eab-b393-4879423f1d90.jpg",
      "UserProfileURL": "https://your-site.com/people/christine",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "9/17/2020"
    },
    {
      "ConfirmationID": 1190,
      "UserID": 612,
      "DateConfirmed": "2026-09-17T18:46:52.757",
      "DateLastViewed": "2026-09-17T18:46:50.083",
      "ViewCount": 1,
      "LastVersionRead": 7,
      "LastVersionReadDate": "2026-09-17T18:46:24.223",
      "LastVersionReadDateString": "9/17/2020 11:46 AM",
      "UserDisplayName": "Laura Carter",
      "UserAvatarImageURL": "https://your-site.com/Assets/Uploaded-Photos/612/265e840e-7cbf-404c-8411-18c4a1bbe303.jpg",
      "UserProfileURL": "https://your-site.com/people/laura",
      "DateConfirmedString": "9/17/2020",
      "DateLastViewedString": "9/17/2020"
    }
  ]
}
```

### Error Response

```
{
  "IsError": true,
  "ResponseMessage": "Required parameter is missing or invalid.",
  "ResponseData": null
}
```

## Error Handling

| Status Code | Likely Cause | Next Action |
| :--- | :--- | :--- |
| 400 Bad Request | One or more required fields are missing or invalid. \(contentID, entityType, versionID, spaceID\) | Verify the request payload against the required parameters. |
| 401 Unauthorized | Missing or invalid Bearer token. | Check token validity. [Learn how to create Bearer tokens →](https://my.axerosolutions.com/spaces/5/axero-documentation/wiki/view/108973/creating-bearer-tokens) |
| 403 Forbidden | User does not have sufficient permissions. | Confirm the user has the required roles for this action. |
| 404 Not Found | ContentID is 0 or no content has that ID; the response has no body. Leaving out EntityType, VersionID, or SpaceID also answers 404 \(No HTTP resource was found\) because the request then matches no action. | Send all four required values. |
| 500 Server Error | Internal failure. | Retry later. |

## Rate Limits

While Axero does not enforce hard rate limits by default, we recommend the following best practices to ensure optimal performance:

- **Sustained Request Rate:** Do not exceed 5 API calls per second
- **Sequential Processing:** Wait for each request to complete before sending the next in automated workflows
- **Concurrent Connections:** If parallel processing is required, limit to 3 or fewer simultaneous requests
- **Response Timeout:** Ensure API responses complete within 15 seconds during testing

Axero may implement temporary rate restrictions if excessive API usage affects overall site performance. For high-volume integrations, contact Axero to discuss your requirements.
