Person Changelog

To read more about our persistent Person ID logic, please consult our Persistent IDs page.

Person Changelog

🚧

Updated Changelog

We've rebuilt our changelog. Starting with v25.0, the changelog will no longer contain every record in our dataset. Now, the changelog will only include records with high-signal changes.

Migration Guide

If you used our previous changelog, you may need to make some changes to switch to our new changelog:

  1. The unchanged status no longer exists. Remove any logic that relies on it.
  2. Switch from using moved to the merged status.
  3. The merged status additional_metadata.to field has changed from a string to an array of strings. Adjust your processes accordingly.
  4. The updated status additional_metadata.fields_updated array can be used to filter records according to the type of updates made. Adjust your processes accordingly.

We also provide an additional changelog as a flat file in this public AWS bucket. Each part of the changelog is capped to a file size of approximately 100MB. Changelogs are separated by update cadence with the following paths:

  • Monthly: s3://pdl-prod-id-changelog/version_number/monthly/
  • Quarterly: s3://pdl-prod-id-changelog/version_number/quarterly/

Here is a description of each possible record status:

Status             Description                                                              
added Newly added records
deleted Records that have been deleted
merged Records merged into other records, including metadata of the merged records
opted_out Records that have opted out through our website
updated Records where a value in any field has changed and/or a profile has been merged into the record

Additional Metadata

Some of the statuses listed in the table above will also contain the following metadata:

Metadata FieldCorresponding Version StatusDescription
containsupdatedThe persistent IDs of any records that existed in a previous version and have been merged before or during the current version.
fields_updatedupdatedThe specific fields of the record that have changed. Changes for child fields will be limited to their parents. For example, if a record’s experience.end_date changes, that will be shown as “fields_updated”: [“experience”].
tomergedThe persistent ID that this record has been assigned in the current version.

Sample Changelogs

{
  "id": "123",
  "previous_version": "24.1",
  "current_version": "24.2",
  "status": "added",
  "additional_metadata": null
}
{
  "id": "123",
  "previous_version": "24.1",
  "current_version": "24.2",
  "status": "deleted",
  "additional_metadata": null
}

{
  "id": "123",
  "previous_version": "24.1",
  "current_version": "24.2",
  "status": "merged",
  "additional_metadata": {
    "to": ["abcabc", ...]
  }
}
{
  "id": "123",
  "previous_version": "24.1",
  "current_version": "24.2",
  "status": "opted_out",
  "additional_metadata": null
}

{
  "id": "123",
  "previous_version": "24.1",
  "current_version": "24.2",
  "status": "updated",
  "additional_metadata": {
    "contains": ["123123", ...],
    "fields_updated": ["work_email", "job_company_type", ...]
  }
}