Entity History | Yext Hitchhikers Platform
Entity History grants users an extensive view of the historical updates made to their entities. This reference document provides details about the events which are recorded as a part of Entity History.
Entity History can be accessed in the UI, by navigating to Content > Configuration > Entity History inside Yext, or via the Logs API.
Entity History UI
The Entity History UI offers a tabular view of entity updates in the Yext platform. Each row corresponds to a single update, or event, on a given entity. By default, updates are listed in descending chronological order. Update details can be viewed by clicking the View button in the relevant row.
Table characteristics and available interactions are detailed below.
The following eight columns appear as part of the default view of the Entity History page.
|Timestamp||The timestamp of the update. This column is sortable.|
|Operation ID||Unique identifier for the operation responsible for the update (includes bulk updates).
Example: A user updates a description field in Entity Edit. The operation ID corresponding to this field update will be 1000000010. Later, the user updates the description field of another entity with a total of three language profiles. This action will generate three logs in the Entity History table (one per profile), each corresponding to a Field Updated or Field Updated (Inherited) event. Because these updates were committed as part of the same operation, all three share the operation ID 1000000011.
|Entity||The entity which the change pertains to. This column displays a basic entity preview with an icon, name, and (entity) ID.|
|Event Type||The type of update being logged. The event type will be one of the following:
Event type descriptions can be found in the table below.
|Profile Language||The language profile that the update was made on.|
|Field||The field which was updated. This only applies to FIELD_UPDATED events. For all other event types, this column’s value will be blank.|
|Value (Rendered)||Represents the value present on the profile after inherited values have been resolved. If an embedded field is included, the embedded field’s value will appear.|
|Actor||The actor responsible for the event. Can be one of the following:
The following columns can be appended by selecting them from the “Columns” dropdown button. At any time, you can select the “Reset Columns” CTA to restore the default view.
|Value (Raw)||Value representing how the field data is stored in Yext Content. If an embedded field is included, the embedded field will appear in its unprocessed form (field name within double brackets).|
|Primary Profile||Boolean. Indicates whether the profile is the primary profile for the Entity.|
|Profile ID||Unique identifier for the entity profile that was updated. Profile IDs vary between an entity’s primary profile and its alternate language profiles.|
|Actor Details||Description attributing the update to a specific actor and the interface through which the update was made.|
|ENTITY_CREATED||Entity was created|
|PROFILE_CREATED||Language profile was created|
|FIELD_UPDATED||Field value was updated|
|FIELD_UPDATED_INHERITED||Rendered value for the field was updated due to an update to the inherited field’s value. The raw value for the inheriting field was not updated. Updates that result in this event include: field value updates on an entity’s primary language profile carrying over to its alternate language profiles; source field value for an embedded field being updated|
|PROFILE_HIERARCHY_UPDATED||Primary language profile on an entity was changed from one profile to another. This event results in a cascade of subsequent events.|
|PROFILE_DELETED||Language profile was deleted|
|ENTITY_DELETED||Entity was deleted|
Entity History in the Logs API
Entity History can be accessed by querying the
entityHistory table in the POST Query endpoint of the Logs API. Before doing this, you will need to configure an App in the Developer Console and set the Logs endpoint permissions to Read-Only.
For steps to create an App in the Developer Console, follow these steps in Create an App in the Developer Console.
For details on a sample request and payload, and a sample response, visit the Logs API documentation.
Logs API vs UI
|Stipulation||Entity History via Logs API||Entity History UI|
|Requires Developer App||Yes||No|
|Includes Update Metadata (Event Type, Timestamp, Value (Rendered), etc.)||Yes||Yes|
|Sortable by Timestamp||Yes||Yes|
|View Previous Content for a Given Update||No||Yes|
|Restore Field Values||No||Yes|
|Returns Entity UID (Yext ID)||Yes||No|
|Maximum Page Size (total records returned per request/page)||1,000||100|
Restore Field Updates
One of the major advantages of the Entity History UI over the Logs API is the ability to restore existing field values to their previous values for Field Updated events. There are three user actions that can initiate a field value restoration.
For details on how to restore field updates, visit the Roll Back Entities guide.
Note that the system may be unable to restore changes for a variety of reasons. If the system is unable to apply the changes, an error message will appear. Some reasons for an error include:
- Attempting to restore changes for any non-Field Updated events.
- Attempting to restore multiple changes on the same field for the same entity.
- Attempting to restore changes for an entity whose ID shows “Value Pending.”
Entity History Limitations
- Entity History is limited to the last 365 days, beyond which Entity History is deleted.
- Newly created entities will appear in the Entity History UI with an undefined entity type and an “ID: Value Pending.” It may take up to 1 hour for these values to sync. Changes cannot be restored for field updated events until these values are resolved.
- It may take up to 5 minutes for new update logs to appear in the Entity History tables accessed via the UI and Logs API.
- Entity History does not currently include updates to Keywords. This is because Keywords are not stored directly on an entity’s profiles.
- Users cannot restore data on the following fields: Country Code, Coordinates (Display, Dropoff, Pickup, Routable, Walkable), or any image fields.
- Field Updated (Inherited) events cannot be restored.
- Changes to the Locale field cannot be restored, as they differ from standard field value updates.
- Limited filtering capability compared to Entity History in the Logs API.
- The ability to export logs is not currently supported.
- Cannot restore changes for Field Updated events