Scenario
You are a platform admin who needs to validate, troubleshoot, or trigger a people integration sync. You want to see what data PlusPlus is receiving from your source system, confirm that attribute mappings are working as expected, or test a configuration change before applying it to live user data.
The PI Sync Logs Dashboard shows every automated and manual sync, lets you drill into individual user records, and provides tools to inspect payloads, view attribute changes, and run dry-run syncs.
Method availability. The dashboard supports Workday, Custom Integrations, and CSV over SFTP. SCIM integrations do not appear in this dashboard — to validate a SCIM integration, push a test user change from your identity provider and confirm the result in PlusPlus directly.
Solution
Access the dashboard
The PI Sync Logs Dashboard is enabled by default and accessible only to platform admins. To open it, go to Dashboard > PI Sync Logs.
From the dashboard, two buttons appear in the top right:
People Integration Settings — opens the global Integrations settings, where you can review the automated sync interval and other people integration configuration.
Sync Users — opens the manual sync dialog (see below).
Trigger a manual sync
Click Sync Users in the top right of the dashboard.
In the dialog that appears, choose whether to apply the results:
Toggle off (default): runs a dry run — data is pulled and stored for inspection, but no user records are updated. See Run a dry run below.
Toggle on (Use received data to update users): runs a live sync that updates user records in PlusPlus with the data pulled from your source system.
Confirm to start the sync.
A new entry appears at the top of the dashboard. Large syncs can take 30 minutes or more to complete.
Caveat: automated rules. Automated rules run automatically after every system-initiated sync, but they do not run after a manual sync from this dashboard. To run rules after a manual sync, trigger them separately from the Automated Rules dashboard.
Run a dry run
A dry run pulls data from your source system and stores it for inspection without applying any changes to user records. Use this to test attribute mapping changes, validate new fields, or preview what a real sync would do.
Click Sync Users in the top right.
Leave Use received data to update users' toggled-off status.
Confirm to start the dry run.
Once the run completes, click into the entry to inspect what would have changed (see Inspect a sync below).
CSV over SFTP caveat. A dry run for a CSV/SFTP integration runs against the most recently uploaded file in the SFTP repository. The process consumes the file during execution, so re-upload it before each dry run.
Inspect a sync
To see which users were affected by a sync (or would have been, in the case of a dry run):
On the dashboard row for the sync, click the kebab menu (⋮) on the right.
Select View User Records.
This opens the User Records sub-dashboard, filtered to the selected sync. Each row represents one user record processed by the sync, with its individual status. You can also click here in the info banner at the top of the dashboard to view User Records across all syncs.
Inspect an individual user record
From the User Records dashboard, click the kebab menu (⋮) on a user row. Three options are available:
View Payload — shows the raw data PlusPlus received from your source system for this user. Useful for confirming what your HRIS actually sent.
View Updated Attributes — shows which fields would have been (or were) changed on this user. Disabled if no changes were made.
View Error Messages — shows the reason a record failed. Disabled if no errors occurred. Common errors include missing or invalid required fields like email.
Sync a single user
You can also trigger a sync for a single user from their profile, which is useful for troubleshooting individual cases without running a full sync.
Open the user's profile from the People dashboard or directly.
Click the kebab menu (⋮) in the top right of the profile.
Select Sync User Data.
After the sync completes, select View Latest User Syncs from the same kebab menu to jump to the PI Sync Logs Dashboard scoped to that user's most recent sync.
The same kebab menu also exposes View Last Payload (the most recent raw data PlusPlus received for this user), View Custom Attributes, and View Logs — useful when troubleshooting a specific user without leaving their profile.
View and edit attribute mappings
Attribute mappings are managed in the Integrations settings, accessible via the People Integration Settings button in the top right of the dashboard. The standard workflow is to update a mapping in settings, then return to the PI Sync Logs Dashboard and run a dry run to confirm the change behaves as expected.
For the full attribute mapping reference, see People Integration: Attribute Mapping.
Go deeper
Automated sync schedule
PlusPlus runs an automated people integration sync daily, starting at 00:00 UTC. The interval between automated syncs is configurable per instance: every 24, 12, 6, or 3 hours. The default is every 24 hours. Adjust the interval from System Settings > Integrations > People via the People Integration Settings button.
Reference: PI Sync Logs columns
The main dashboard view lists every sync run with the following columns:
Column | Description |
Sync ID | System-assigned identifier for the sync. |
Status | Sync-level status. See Sync statuses below. |
Summary | Aggregated counts of per-user outcomes (e.g., Failed: 1, Created: 0, Skipped: 9488, Updated: 10). |
Is Persisted | Yes if the sync applied changes to live user data, No for a dry run. |
Created By | The admin who initiated the sync, or System for automated syncs. |
Created At | When the sync started. |
Finished At | When the sync completed. |
Reference: User Records columns
The User Records sub-dashboard lists individual user records processed during a sync (or across all syncs):
Column | Description |
Sync ID | The sync this record belongs to. |
User | The PlusPlus user this record applies to. Blank if no matching user. |
Status | Per-user record status. See User record statuses below. |
Is Persisted | Yes if the record was applied to live user data, No for a dry run. |
Created By | The admin who initiated the sync, or System. |
Created At | When the record was processed. |
Reference: sync statuses
These are the possible values in the Status column of the main dashboard. They describe the overall outcome of a sync run.
Status | Meaning |
Pending | Sync has not started yet. |
Completed | Sync finished successfully — all records processed without error. |
Incomplete | Sync finished with partial failures — some records succeeded, some failed. |
Failed | Sync finished but all records failed. |
Reference: user record statuses
These are the possible values in the Status column of the User Records sub-dashboard. They describe the outcome for a single user record within a sync run.
Status | Meaning |
Created | A new PlusPlus user was created from this record. |
Updated | An existing PlusPlus user was updated with new data. |
Skipped | No changes were needed for this user. |
Failed | The record could not be processed. Use View Error Messages to see why. |
Terminated | The user was flagged as terminated based on incoming data, and deprovisioning has started. See People Integration: User Deprovisioning. |
Restored | A previously deprovisioned user was restored. |
Reference: filter options
Both dashboards support filtering. Filters can be saved for reuse via the bookmark icon in the filter bar.
PI Sync Logs filters: Sync ID, Status, Summary, Is Persisted, Created By, Created At, Finished At.
User Records filters: Sync ID, User, Status, Is Persisted, Created By, Created At.
Filtering on raw payload contents or on individual mapped attributes is not currently supported.
