The PDI integration syncs data from the Mobilize API to the PDI API for an organization. This document describes how the Mobilize resources and fields are mapped to the PDI resources fields.
For each shift created in Mobilize, a new Location and Event will be created in PDI. Shifts are also known as Timeslots in the Mobilize API.
A Location is created. If the location already exists based on matching Mobilize latitude and longitude, the location is updated in PDI.
Location Name is set to the Mobilize
venuename. If there is no Venue in Mobilize, it is set to the complete address. If the Event location is private, it is set to "Private Venue". It is set to "Virtual" if the event is a Mobilize virtual event.
Location Address is set to a string of the complete Mobilize address including the
postal_code. It is blank if the address is private.
An Event is created in PDI for each Timeslot (Shift)
The event is created in a PDI Calendar. The Calendar to Event Type mapping is defined in Mobilize as described in this article. Please submit a request to Mobilize support if you need to update these mappings.
The following PDI Event fields and their associated Mobilize API field.
End Date Time UTC:
The Event Category Id is set to 0 as a placeholder because creating new categories has been deprecated in the PDI UI, but this field is required.
For each signup to a shift (an Attendance in the Mobilize API), the following is created or updated in PDI:
A Contact is created or updated. We update contacts if the Mobilize email address matches an existing contact email in PDI.
Additional contact information is also created or updated:
person["postal_addresses"]["postal_code"]from the Mobilize Attendance
person["email_addresses"]["address"]from the Mobilize Attendance if it is available. If it is masked (such as in a cross-firewall promotion), we set it to
masked-email+<internal id number>@mobilize2020.org
Is Primary: Set to
Phone Type: Set to
Is Primary: Set to
An Invitation is created or updated
Contact ID: The PDI Contact ID associated with the invitation.
RSVP Status: 'Yes' unless the Mobilize Attendance
CANCELLED. If it is, this is set to 'Cancelled'.
trueif the Mobilize Attendance
CONFIRMED, otherwise this is
attended: This field's value corresponds with Mobilize attendance statues of "Completed" and "No-Show". Completed is
trueand No-Show is
false. If the Mobilize API returns a null value, this defaults to