Zum Inhalt springen

User Profile Changes

Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.

Pulse keeps an audit trail of changes made to a user’s master data (e.g. fields on the personnel file). Every time a field value is created or updated, a profile change record is stored with the value before and after the change.

Attribute Description Specifics
user_id The ID of the user to whom the change belongs.
actor_id The ID of the user who performed the change.
actor_email The email of the user who performed the change at that time. Denormalized, does not change
field_group The name of the field group the changed field belongs to.
field_name The name of the changed field.
value The value before and after the change. { "before": ..., "after": ... }
created_at When the change was recorded.

Relationships

Relationship Description
user The user to whom the profile change belongs
actor The user who performed the change (if still resolvable)

Example response:

{
"data": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"type": "profile_change",
"attributes": {
"user_id": "b7f8d3a9-6c5e-4e5c-9d8f-7b6c96d4e3c2",
"actor_id": "c2d3e4f5-6789-0abc-def1-234567890abc",
"actor_email": "jane.doe@example.com",
"field_group": "Personal Information",
"field_name": "first_name",
"value": {
"before": "Jon",
"after": "John"
},
"created_at": "2026-01-15T10:00:00.000Z"
}
},
{
...
}
]
}

This endpoint returns the profile change history for a user, most recent changes are not sorted by default; use sort = created_at to get the most recent changes first.

GET /api/v1/users/:user_id/profile_changes

Parameter Description
user_id The ID of the user whose profile change history to return.

In addition to the standard filter syntax, this endpoint supports filtering by one or more actor IDs, the changed field, the field group, and a date range:

Filter by the IDs of users who made changes: GET /api/v1/users/:user_id/profile_changes?filter[actor_id]=in:actor-id-1,actor-id-2

Filter by field name: GET /api/v1/users/:user_id/profile_changes?filter[field_name]=eq:first_name

Filter by field group: GET /api/v1/users/:user_id/profile_changes?filter[field_group]=eq:Personal Information

Filter by a date range (combine both bounds as needed): GET /api/v1/users/:user_id/profile_changes?filter[created_at_gteq]=2026-01-01&filter[created_at_lteq]=2026-01-31

This endpoint’s results are also paginated, see the pagination section for details.