Integration
PDP offers several standard API options for client accounts with certified users. Client accounts can purchase a license to utilize the APIs to obtain data to meet their business requirements (see options A–D). Contact your Licensed PDP Representative for pricing for each option. Explore how to integrate PDP into internal processes (flowchart).
Available only for Platinum and Enterprise Solution plans. Excludes Job Dynamics Analysis survey invitations.
Any ProScan report selected for a survey can be retrieved as a single report PDF, including:
Basic/Natural Self trait information. Includes ProScan Report(s) from Option A.
Basic/Natural Self rounded trait values and Priority Environment trait stress length values for quantitative (vs. categorical) predictive analytics research. Includes ProScan Report(s) from Option A and Basic trait information from Option B.
Any JobScan applicant report selected can be retrieved as a single report PDF response along with applicant match scores, including:
Complete the following steps and ensure that the appropriate PDP Client API option is selected:
Once the API license has been activated, the Key Contact user will login at my.PDPworks.com and navigate to their [username] > My Information > API Configuration area to insert the webhook URI (provided by client's developer) and generate a password (to be provided back to the client's developer). If a password is lost or forgotten, a new password can be generated. If this step is taken, the existing webhook will no longer work and the client developer will need to update code with the newly generated password for the webhook to work again.
Programmatically create ProScan or ProScan Applicant survey invitations (excludes JDA surveys). Available with options A–D.
{
sender: {
name: String required maxsize 64,
emailAddress: Email required maxsize 256,
organizationName: String required maxsize 128,
languageCode: String optional default 'en' // see Sender and Report language list below for all valid values
},
reportTypeIds: Array of integers optional default 27, 28 minimum 1 report if provided, // see list of valid values below
reportNotificationLevelId: Integer required // see below for valid values,
thirdPartyNotificationEmailAddresses: Array of email (valid format) addresses String maxsize 256,
invitee: {
firstName: String required maxsize 64,
lastName: String required maxsize 64,
emailAddress: Email required maxsize 256,
languageCode: String optional default 'en', // see ProScan survey language list below for all valid values
externalId: String optional maxsize 100,
}
}
}
Request array of all active JobScan Models in the account at the moment of the request. Use the jobModelId: integer with PDP ProScan Invitation API for Applicant Match Invitations. Available with option D.
[
{
jobModelId: integer,
jobModelName: string
}
]
Your account may only have a sub-set of this list available. Ask your account's Key Contact to provide the list of languages activated for the account.
English name |
Native name |
Code |
English | English | 'en' |
Bahasa Indonesia | Indonesian | 'id' |
Español | Spanish | 'es' |
Svenska | Swedish | 'sv' |
日本の | Japanese | 'ja' |
简体中文 | Simplified Chinese | 'zh-Hans' |
繁體中文 | Traditional Chinese | 'zh-Hant' |
Every account has all of these languages available for displaying an Invitee's survey form. Note that the invitee can select any language before submitting their responses.
English name |
Native name |
Code |
Deutsch | German | 'de' |
English | English | 'en' |
Español | Spanish | 'es' |
Français | French | 'fr' |
Bahasa Indonesia | Indonesian | 'id' |
Italiano | Italian | 'it' |
日本の | Japanese | 'ja' |
한국어 | Korean | 'ko' |
Nederlands | Dutch | 'nl' |
Norsk | Norwegian | 'no' |
Português | Portuguese | 'pt' |
Pусский | Russian | 'ru' |
Slovenščina | Slovene | 'sl' |
Svenska | Swedish | 'sv' |
Kiswahili | Swahili | 'sw' |
Tagalog | Tagalog | 'tl' |
Türkçe | Turkish | 'tr' |
Tiếng Việt | Vietnamese | 'vi' |
简体中文-職務 | Simplified Chinese-Job | 'zh-Hans-CN' |
简体中文-西方 | Simplified Chinese-Western | 'zh-Hans-TW' |
繁體中文-職務 | Traditional Chinese-Job | 'zh-Hant-CN' |
繁體中文-西方 | Traditional Chinese-Western | 'zh-Hant-TW' |
Your account may only have a sub-set of this list available.
Report name |
id |
Personal Reports |
|
Personal Dynamics | 1 |
Connect with Me | 27 |
Personal Performance Actions | 7 |
Personal QuickView | 28 |
Personal Strengths | 3 |
Data Sheet | 4 |
Intensity Chart | 5 |
Motivators Worksheet | 6 |
Side-by-Side—Natural Self | 8 |
Side-by-Side—Pressures | 36 |
Management Reports |
|
Executive Summary | 9 |
Management Guide | 10 |
Manager QuickView | 11 |
Only to me (sender) | 1 |
Only to third-party(s) | 2 |
Invitee and myself (sender) | 3 |
Third-party(s) and myself (sender) | 4 |
Invitee, third-party(s), and myself (sender) | 5 |
Do not email | 6 |
This sends an email with the selected report(s) attached to only the sender of the invitation.
{
"sender": {
"name": "Manager Name",
"emailAddress": "sender@pdpglobal.com",
"organizationName": "Org Name",
"languageCode": "en"
},
"reportTypeIds": [28,27],
"reportNotificationLevelId": 1,
"invitee": {
"firstName": "todd",
"lastName": "test",
"emailAddress": "recipient@pgpglobal.com",
"languageCode": "en",
"externalId": "emp123"
}
}
This sends an email, with the selected report(s) attached, to the sender of the invitation and to one or more third-parties.
{
"sender": {
"name": "Manager Name",
"emailAddress": "sender@domian.com",
"organizationName": "Org Name",
"languageCode": "en"
},
"reportTypeIds": [28,27],
"reportNotificationLevelId": 4,
"thirdPartyNotificationEmailAddresses": [
"thirdparty1@domian.com",
"thirdparty2@domain.com"
],
"invitee": {
"firstName": "todd",
"lastName": "test",
"emailAddress": "recipient@domain.com",
"languageCode": "en",
"externalId": "emp123"
}
}
Upon completion of a survey, whether manually entered, from an invitation (created via UI or API) or survey link, the following call will be made from PDP to the customer webhook URI configured in account settings. Upgrading a survey to add one or more additional reports will also trigger the webhook.
event: String required, // 'survey-completed'<
uri: String required, // uri of the survey results
surveyKey: string required,
respondentExternalId: String optional, // passed to PDP via API or survey link (e.g., employee id)
{
event: 'survey-completed',
uri: `https://www.my.pdpworks.com/external-api/surveys/AB32DS83`,
surveyKey: 'AB32DS83',
respondentExternalId: '34598437'
}
{uri: String required, // uri of the survey results
surveyKey: String required,
respondent ExtId: String optional, // passed to PDP via API or survey link, or manually entered
surveyTakenDateTime: Date required,
surveyTakenUtcDateTime: Date required,
firstName: String optional,
lastName: String optional,
emailAddress: String (email) optional,
organizationName: String optional,
phoneNumber: String optional,
phoneExtension: String optional,
faxNumber: String optional,
address1: String optional,
address2: String optional,
city: String optional,
state: String optional,
zipCode: String optional,
country: String optional,
jobTitle: String optional,
}
// Option B—available for additional cost
basicTraits: {
structure: String required,
highestTrait: String required, // may include two traits, comma separated
lowestTrait: String required,
logic: String required,
primaryEnergyStyle: String required,
kineticEnergy: Number required,
}
// Option C—available for additional cost
basicValues: {
dominance: Number required
extroversion: Number required,
pace: Number required,
conformity: Number required,
},
priorityValues: {
dominanceLength: Number required
extroversionLength: Number required,
paceLength: Number required,
conformityLength: Number required,
logicLength: Number required,
satisfaction: Number required,
energyDrain: Number required,
},
// Array of report metadata
reports: [
{
uri: String required,
reportKey: String required,
reportType: String required,
// Option D—available for additional cost
applicantMatches: [{
jobModelName: String required,
jobModelVersion: Number required, // 1 through 7
matchScore: Number required, // 0 to 100
}] optional,
createdAt: Date required, // date report created
}
]