History

History

Returns modified or deleted entries from a given date-time, not including entries updated from calculations. The /history and /allHistory endpoints are the only endpoints where deleted entries are also returned.

To GET all modified entries including those updated via calculations, please leverage the /allHistory endpoint

Swagger

Swagger

Params

nameParameter typeData Typevalues
entryTypeIdPathint or string2013 or interaction
modifiedSincequerydate-timeany 8601 valid date-time string.Limited to 6 Months, if you wish to return all modified entries, make a request without specifying a DateTime. Deleted entries can only be retrieved if deleted within the last 6 months. If a date-time is not specified only modified will be returned, deleted entries will be missing from the result set.

Requests

You can use either EntryTypeId or apiName to query the history endpoint. The apiName is the name of the entry type as it appears in the apiName field. For example, if you have an entry type with the name Interaction and the EntryTypeId is 2013, the apiName would be interaction.

Entry Type Id

GET {{host}}/api/rest/v4/data/entrydata/2013/entries/history?
modifiedSince=2020-04-26T01:16:40.030Z  HTTP/1.1
 

API Name

GET {{host}}/api/rest/v4/data/entrydata/interaction/entries/history?
modifiedSince=2020-04-26T01:16:40.030Z  HTTP/1.1
 

Response

HTTP/1.1 200 OK
[
  {
    "isDeleted": false,
    "id": 2772624,
    "name": "Test Interactions",
    "entryListId": 2013
  }
]

When entry is deleted via a merge

HTTP/1.1 200 OK
[
  {
    "isDeleted": false,
    "id": 2772624,
    "mergedEntryId": 2772625,
    "name": "Test Interactions",
    "entryListId": 2013
  }
]

Errors

HTTP/1.1 400 Bad Request
{
  "message": "You cannot request history for more than 180 days. Omit 'modifiedSince' parameter to request history for all time"
}

DateTime Discrepancy

There is a possibility that the entry returned for a given DateTime will have a different value for the system fields Created Date and Modified Date than the time used to return the entry. Here are some of the scenarios where this may occur.

  1. If a entry is modified as part of a bulk action, the system fields capture when the action occured while the history endpoint operates on when this change was committed to the database. Most of the time these values will be there same, but it is possible to have these values drive by several minutes.
  2. If a entry was changed via revert changes in the system, the system reverts the Modified Date to the previous value, while the history endpoint will retain when the date reversion happened. In this scenario, the history datetime value could be of by an unlimited difference.

When running the integration it is recommed that you use the history endpoint expecially when running Delta queries. Because it captures when data is committed to the database you're guranteed to get all data changes. The DateTime of modified date and modifiedSince is not guaranteed to be identical because of the two reasons explained above.