Person

(0 reviews)

home

Note: As of Feb 2023, Person API has two separate versions:
- v1 is all non-student endpoints, and /students accessing SIS DB.
- v2 is only /students and endpoints under /students, all accessing data from Workday for the Sunrise project.
When requesting access, the default is v2 and your client will NOT have access to non-student data. If you need the existing production endpoints, select "v1" from the upper right hand section before requesting access.

Change Log:
2024 Feb 09 v2.0.41 (person-sys) - added 2 new fields to StudentProfile: AcademicProgress and AcademicProgress_id; Also added 3 new optional query parameters: PrefLastName to filter by preferred last name, LastName to filter by legal last name (tier3 access required), and BirthDate to filter by date of birth (tier3 access required).
2024 Jan 11 v2.0.9 (student-data-sys) - Refactored output of /students/transferCredits to more closely align with sunrise endpoint standards
2023 Dec 26 v2.0.36 - v2/person/students - added new query param options:
- isActive=true/false to return active/inactive students (see https://sunrise.wustl.edu/workday-student/workday-student-101/people-in-workday/#active for active/current definitions)
- isCurrent=true/false to return current/non-current students (see https://sunrise.wustl.edu/workday-student/workday-student-101/people-in-workday/#active for active/current definitions)
- AcademicUnit_id=AU100069 to filter students by primary academic unit ID. For most non-Med School students this is also the PrimarySchool_id. Supports comma separated list of academic unit IDs.
- School_id=AU100069 to filter students by primary school AU ID. Supports comma separated list of school academic unit IDs.
- Campus=Danforth or Med_School to filter students by campus affiliation.
- ProgramOfStudy_id=POS_LA0005 to filter students by primary Program of Study. Supports comma separated list of PoS IDs.
- AcademicLevel_id=U/G to filter students by undergraduate or graduate status from their primary academic record.
The above can be combined among themselves and including delta_from. The student-specific ID query parameters (Student_id and Universal_id) will ignore all of these options.
2023 Dec 14 v2.0.7 (student-data-sys) - added /students/cohorts endpoint
2023 Nov 30 v1.0.29c - /v1/person/ids - added HRBulding from customproperty18, this is the location from Workday for workers. For Student workers this will be their work location rather than their student housing location.
2023 Nov 28 v2.0.6 (student-data-sys - added /students/charges endpoint
2023 Oct 3 v2.0.4 (student-data-sys) - added /students/housing endpoint
2023 Sep 06 v1.0.29b - /v1/person/ids - added 4 new fields:
- WUSTLKeyActivation - from customproperty14, this will indicate if the WUSTLKey has been activated.
- CampusAffiliation - from customproperty62, data originates from the /person/workers field of the same name into Saviynt.
- SchoolAffiliation - from customproperty64, data originates from the /person/workers field of the same name into Saviynt.
- DepartmentAffiliation - from customproperty65, data originates from the /person/workers field DepartmentOrAdministrativeFunctionalAreaAffiliation into Saviynt.
2023 Aug 17 v1.0.29a - /v1/person/ids - changed LastChange field to use Saviynt-provided LastSyncDate, replacing the WU managed field "customproperty40". Add support for a new query parameter โ€œdelta_fromโ€ to pull all records updated since a date/time provided by this parameter. If not provided, return all results as we currently do so there is no change in functionality for existing clients. This field should compare against LastSyncDate internally to determine which records have been updated.
2023 Jun 19 v1.0.29 - /v1/person/usersecurity and /v1/person/researcherprofiles provide scoped researcher profile information for the RMS infoed radar project. EA-15135 CED
2023 May 09 v2.0.2 (student-data-sys) - /v2/person/students/academicProgress and /students/transferCredits were moved from the Academic API to Person API as they fall under the security restrictions for student data.
2023 Feb 16 v2.0.0 - /v2/person/students - (TEST ONLY) The new /v2/person/students endpoint currently sources data from Workday (wustl14 tenant, subject to updates) as part of the Student Sunrise project. Test clients will need to select "v2" in Exchange under the Person API, and request access to the Test v2 Person API. Once access is granted, the client will be able to hit /v2/person/students and see the new response format.
NOTE - not all fields are available yet. We are only returning what Workday Get_Students API has available. If we switch the source to IDS we can add other fields.
!!NOTE - Workday DOES NOT support deltas for this endpoint!! This is impeding progress to provide IDS caching for the endpoint. If we can get IDS working then IDS will support deltas.

2023 Feb 16 v1.0.28 - /v1/person/appointees - Added new fields, most to provide descriptive labels for an ID value prior to starting IDS mapping. Under Visas: VisaIDTypeDesc, under Appointment: Position, TractTypeReferenceDesc, AcademicUnit_id (as a copy of AcademicUnitReference to conform with other Academic Unit ID field names), AcademicUnit, TenureHome_id (copy of TenureHomeReference to follow CDM naming practices for ID field), TenureHome, NamedProfessorship_id (new), NamedProfessorship.
2023 Feb 16 v1.0.28 - /v1/person/workers - internal change allowing IDS delta process to use Workday Get_Workers API v39.1 instead of v32.2. This will allow new fields in future releases.
2022 DEC 15 v1.0.22b - /person/picklist (PROD) - Added new response field, "UserPrincipalName", along with functionality to filter results based on "upn" (UserPrincipalName). This endpoint can only accept a single "upn" value
/person/ids (PROD) - Added new response field, "UserPrincipalName", along with functionality to filter results based on "upn" (UserPrincipalName). This endpoint can accept a single, or array of, "upn" value(s)
2022 Oct 09 v1.0.22a - /person/ids - added query params Worker_id and Universal_id to allow retrieval of a list of people by ID from Saviynt. This will allow clients pulling a batch of people by ID to reduce the number of calls, improving performance and reliability. It is strongly recommended to convert integrations which currently pull batches by ID from single ID lookup to a list of IDs with one of both of these parameters. Recommended number of IDs is 100 at a time, although Saviynt should be able to handle more, it does impact log entries directly since the entire query parameter string is logged to Splunk.
2022 Sep 19 v1.0.22 - /appointees(TEST) - Mapped existing fields from Workday for future use to pull in missing descriptive value or IDs which were not already mapped. VisaIDTypeDesc, Position, TrackTypeReferenceDesc, AcademicUnit_id as a better named copy of AcademicUnitReference (more inline with other APIs), AcademicUnit, TenureHome_id as a copy of TenureHomeReference, TenureHome, and NamedProfessorship_id and NamedProfessorship which had not ever been mapped.
/teachingLoad(TEST) - added new field Comments which was just added to the custom TeachingLoad object in Workday.
2022 Feb 01 v1.0.21a - /students(TEST) - Added search by BirthDate query parameter and new MPStatus output field. DoNotReleaseToDirectory logic was corrected for dev/test to return the correct Y/N value.
2022 Jan 06 v1.0.21 - Person API - bug fix to correct a JWT parsing problem which failed with the migration to the new Identity Server release early on Jan 5th.
2021 Nov 04 v1.0.20 - /workers (PROD) - SuppressEmailinPublicDir changes have been migrated to production.
2021 Oct 28 v1.0.20 - /workers (TEST) - the OptOutWURecord and OptOutTotalDirectoryInfo fields have been deprecated and will be removed at a later date. A new field from the OptOut category of fields will be added: SuppressEmailinPublicDir will return "Y" if the user wants their email suppressed in the online public directory.
2021 Aug 03 v1.0.19c - /workers - in the event of duplicate records where the inactive (terminated or retired) record is suppressed by default, if the inactive record is updated in Workday it was returned by a delta pull. A change has been made to always return the active record in this case, regardless which was updated. The usual query parameter "Include_Duplicates=true" will allow users to see both records when multiples exist for the same person.
/appointees - (INC2074944) The documentation on query parameter "By_Active_Role" does not match the coded query parameter "By_ActiveRole". Code has been modified to support both.
/academicaffiliates - (CC-2143/EA-9508) Added 3 fields: EducationalDegreeDesc, EducationalDegreeDetail, EducationalDegreeDetailDesc to align with what is provided by /workers. The "Desc" fields will contain the descriptive value returned from Workday, and since we only have one set of short and descriptive values they will simply be repeated from the first two fields to the second set.
2021 Jul 09 v1.0.19b - /workers - IDS will utilize the entry_date parameter to limit the response only to records inserted into the system before that date/time. This will help reduce the duplicate workers seen by the EA.Mulesoft NuGet package when shifts in data occur due to new worker records appearing in an earlier requested page. This is a non-breaking change as the default will be to use the current date/time which is the existing functionality. Those needing to prevent new records can pass in a entry_date value which will not change with each page request.
2021 Mar 15 v1.0.19 - /workers - added Future_Hire_Date parameter. Use of this field bypasses IDS and causes the /workers endpoint to query Workday directly to return all future hires between the current date/time and the date/time value specified by Future_Hire_Date. This also disables deltas, effective_date, and will not work with /workers/bulk nor /workers/(id)
2021 Feb 18 v1.0.18 - /workers - implemented new degree fields under EducationData and TotalBasePayForMultiJobAnnualizedAmount under Compensation, and a new LeaveData section under EmploymentProfile. More details can be seen under the /workers endpoint on the left.
2021 Jan 26 v1.0.17l - /workers - corrected the status=active functionality to return all workers which are not terminated or retired. Also added handling for new SSN scope flag to allow hashed SSN instead of clear text for future use.
2021 Jan 07 v1.0.17k - /students - merged back in the GovernmentID changes which had been accidentally overwritten by multiple project development. SSN is available again per the original v1.0.17 changes from Oct 12.
2021 Jan 06 v1.0.17j - /workers - added EmploymentProfile>PaidByGrant field. Data type is string, values should be "Y" or null being returned from Workday.
2020 Dec 09 v1.0.17i - /appointees - fixed a bug where the "next" URL link was losing the original request path and query parameters.
2020 Dec 02 v1.0.17h - /person/visatracking - deployed a fix that has been blocking data for this endpoint since at least the last tenant migration, possibly longer. No other changes beyond the bug fix.
2020 November 19 v1.0.17g - /person/academicaffiliates - added IDNumber_SHA512_hex to provide a hex encoded representation of the SHA512 hashed SSN value in addition to the current base64 encoded field.
2020 November 12 v1.0.17f - /person/academicaffiliates - with some recent test education data added an inconsistency between /workers and /academicaffiliates on the JSON structure of Education was discovered and fixed. /academicaffiliates now returns the same JSON structure as /workers.
2020 November 10 v1.0.17e - /person/workers - Added a new query parameter, include_terminationdata, that causes certain fields to return static, historical term/retiree data instead of their normal data
2020 November 10 v1.0.17d - /person/workers - Added EmploymentProfile>LastTerminationDate
2020 October 27 v1.0.17c - /person/appointees - fixed mapping for AcademicAppointeeReference to include multiple types, not just the first set returned by the Workday API.
2020 October 20 v1.0.17b - /person/academicaffiliates - fixed mapping problem on VisaType
2020 October 12 v1.0.17 - /person/students - Added 5 new fields to the CDM return set; MartialStatus, BirthDate, DeathDate, Gender, and SSN. The SSN is only visible with the proper scope on each ISU account.
2020 Sep 11 v1.0.16d - /person/ids and /picklist endpoints now trap the unexpected HTML response from Saviynt and return a "429 Too Many Requests" reponses with appropriate x-ratelimit-* HTTP headers to allow clients to auto-retry.
2020 Aug 21 v1.0.16c - /appointees endpoint now supports using Worker_ID, Contingent_Worker_ID, Academic_Affiliate_ID, Student_ID, and Academic_Person_ID query parameters at the same time, and each with comma separated lists of IDs.
- /workers endpoint again returning records with null Universal_id.
2020 Aug 20 v1.0.16b - /picklist endpoint: Added query parameters Id and IdType to support using picklist by various IDs, similar in operation to /ids so that certain integrations do not have to code to multiple endpoints. If an ID and any other criteria are provided, ID will be used and the other values (name, email, etc) will be ignored.
2020 Aug 18 v1.0.16 - /workers endpoint: Fixed duplicate issue for clients with access to Compensation data when worker had multiple pay plans. Added 5 new fields under Compensation.BasePayData[]: CompensationPlan, CompensationElement, EffectiveDate, CurrencyType, and Frequency. Fixed a rounding error in the TotalPages calculation.
2020 Aug 17 v1.0.15f - /workers endpoint: fixed VisaVerificationDate format from yy-mm-dd to yyyy-mm-dd
2020 Aug 14 v1.0.15e - /workers endpoint: fixed IsActiveStudent field
2020 Aug 07 v1.0.15d - fixed filter query parameter handling for /person/ids?filter=X endpoint.
2020 Jul 30 v1.0.15c - fixed a delta issue affecting /workers. Certain post-dated and future-dated changes were excluded.
2020 Jul 16 v1.0.15b - fixed /picklist when searching by exact match fields only. Fixed /person/ids to return ALL records from Saviynt when fetching by page. As of this writing the total number of records included changes from 28,402 to 275,763.
2020 Jul 07 v1.0.15 - New fields added for /person/ids, new endpoint added /person/picklist to support partial name searches to return a list of people.
2020 Jun 26 v1.0.14 - /students - Added Include_SimpleStudentData to allow switching between default basic information and more robust CDM like data set.
Added AcademicEntity field.
2020 Jun 24 v1.0.13d - For the /workers endpoint, an internal change to always send effective_date on the request, defaulting to current date if query parameter "Effective_Date" is not provided. It was discovered recently that Workday is using a default of (today+4) which was not desirable for the general use of this API. If future changes are needed, it must be requested with the query parameter above.
2020 Jun 19 v1.0.13c - corrected RAML and code for /workers endpoint to now return Address>AddressEffectiveDate. Also updated WashU CDM document for new official field name.
2020 Jun 18 v1.0.13b - /workers endpoint now returns Address>EffectiveDate field from Workday.
2020 May 29 v1.0.13 - The /workers endpoint now supports a new query string parameter, "query" that allows you to specify a SQL WHERE clause style data filter. Examples:

  • Get all workers with a particular last name: query=Name.LastName=โ€™[the desired last name]โ€™
  • Get all workers with an address where address line 1 contains "Rosedale" query=[Contact.Addresses].AddressLine1+LIKE+'%2525Rosedale%2525

Note that the address filter has been url encoded due to the presence of spaces and percent characters

Several such filters can be combined using AND and OR, like in a SQL query

  • query=Name.LastName='[the desired last name]'+AND+Name.FirstName='[the desired first name]'

All references to fields and the sections they belong to are based on the JSON CDM model for workers data

If a field is under a section hierarchy of more than one layer (e.g. Contact -> Addresses), the section name must be formatted as [layer1.layer2...].field
(e.g. [Contact.Addresses].Addressline1)

2020 May 12 v1.0.12c - /person/ids endpoint now returns Worker_id if available, and allows it as a search value type for /ids/(id) endpoint.
2020 Apr 30 v1.0.12b - fixed bug in /appointees affecting search by id query parameters, and another causing an error when no results were returned. Updated RAML to show the correct object name for the response from this endpoint, and added Effective_Date and Entry_Date query parameters to replace the AsOfEffectiveDate and AsOfEntryDateTime query parameters which are now deprecated but still supported in v1 for compatibility.
2020 Apr 23 v1.0.12 - mapped /academicaffiliate to a new report with more sources mapped in. Now able to return more details on phone numbers, and address details. Passport data also being returned now, Visa data is mapped but still no samples of that data in Workday to validate the mapping.
2020 Apr 13 v1.0.11b - added X-Correlation-ID as an optional inbound HTTP header. Value will be logged to splunk for better tracking and research.
2020-Apr-03 v1.0.11 - Added delta_from/_through handling for /academicaffiliates endpoint. Added /academicaffiliates/{id} for single id lookup. Mapped SSN for /academicaffiliates, will return as SHA512 hashed if user has Workday permissions.
Added handling for warnings to /workers/bulk endpoint to not drop data results.
2020-Mar-20 v1.0.10e - Fixed error handling for /person/workers/bulk endpoint when Workday returns an error. Also removed ADIS_id, IsAlum from the /person/ids endpoint for current users.
2020-Mar-13 v1.0.10d - Fixed mapping for Position>JobEndDate, added Position>ExpectedJobEndDate as an optional field mapped to the Workday field previously mapped by JobEndDate. Should now see values in JobEndDate.
2020-Mar-04 v1.0.10c - Added optional CostCenterHierarchyRollup query parameter for /workers/ids.
2020-Mar-04 v1.0.10b - Added /ids/(id) for Saviynt id lookup. Supports optional query parameter "SearchField" with one of the values listed below to support searching by various ID types or last name:
Universal_id(default), WUSTLKey, SIS_id, ADIS_id, Credential_id, LastName
The /person/ids endpoint by default returns all active users unless a Page query parameter is provided in case the consuming integration cannot handle all records at once. No next/prev URLs are available when paging as the underlying 3rd party source does not provide max count.
2020-Mar-03 v1.0.10 - Updated error handling is now able to parse and return many system errors generated by Workday. The content of the error message is completely set by Workday in these cases, but these will be seen as "400 Bad Request" responses. Improved details captured to splunk logging for error research. /appointees endpoint bug fixed where next/prev URLs and various meta fields were populated but should not have been. /workers now returns a mapping of section=BenefitEnrollments
2020-Feb-26 v1.0.9c - Added EmploymentProfile>CostCenterHierarchyRollup as a calculated response field. Also modified /workers endpoints to use a special connector to help capture and return errors from Workday if possible.
Note: The Workday connector was disabled shortly after code reached test via config due to out-of-memory conditions resulting from its use.
2020-Feb-20 v1.0.9b - Modification to /students endpoint. Now using Universal ID as the default ID used in retrieval; added idtype query parameter to switch back to using Student ID. Modified PrimeDiv to PrimeDivCode and StudentType to StudentTypeCode. Added PrimeDivName and StudentTypeName fields. Added several query parameters; LastName, PrimeDiv, StudentType, and EnrollmentStatus.
2020-Feb-17 v1.0.9 - current /ids functionality to retrieve Workday Universal_id and Worker_id by Supervisory Org, Cost Center, or other supported organization type has been moved to /workers/ids endpoint as it only supports worker data located in Workday.
New /ids functionality retrieves WUSTLKey and other id values independent of Workday.
2020-Feb-10 v1.0.8 - released /students and /visatracking endpoints.
2020-Jan-31 v1.0.7a - WP_TYPE released for /workers endpoint: Added WorkerPrimaryPositionType to EmploymentProfile (This is the field for WP_TYPE value). For /academicaaffiliates endpoint mapped CitizenshipStatusCode.
2020-Jan-24 v1.0.7 - Changed /workers/(id) to expect Universal_id values by default, new optional query parameter "IdType=workerid" will allow continued use of the Worker_id values. Added /visatracking endpoint. Added new fields for /academicaffiliates (AppointmentStatus, IsStudent, PrimaryIndicator, AppointmentIdentifier, AppointmentIdentifierDesc) can be found in the RAML. Fixed /workers/bulk error which was appending zeros on the "nexxt" and "prev" URLs.
2019-Dec-20 v1.0.6a - RAML change to include the Education_id being returned by the backend.
2019-Dec-18 v1.0.6 - added /teachingLoads endpoint. Also added logic for the /workers endpoint to set "entry_date" if not provided and add it to the next/prev URLs generated. This is needed to keep the result set consistent for multi-page retrieval.
2019-Dec-13 v1.0.5 - updated RAML for /ids endpoint. Also changed /workers, /workers/bulk, and /workers/{id} query parameter "Sections" to no longer be required. Added IsManager to EmploymentProfile, fixed mapping for HighestDegree to Education.
Updated parsing logic to use less memory, allowing more records to be processed with the same server processing power. As a result the /workers/bulk endpoint will now return 1500 records per page in less time than the previous size of 800 records.
Downside to parsing logic change is a number of response sections will be returned as empty arrays when no data from Workday is returned, instead of an array with a single object containing null/false default values for all members.
Sections affected: ExternalJobHistory, Certification.ExamHistory, Certification.CertificationAchievements, Contact.Websites, Role, Citizenships, Education, Disabilities, Visas.
Migration to test is planned for Mon Dec 16. (migrated 2pm Mon Dec 16)
2019-Dec-09 v1.0.4 - added /workers/bulk endpoint. Does not have Count parameter, requires max_record and entry_date for pages 2+. Also implemented a breaking change/fix for /academicaffiliates endpoint to properly handle multiple appointments per affiliate. /workers endpoint also handles multiple inbound ids via "ids" query parameter.
2019-Nov-25 v1.0.3 - added /ids endpoint
2019-Nov-18 v1.0.2 - added /appointees endpoint.
2019-Nov-12 v1.0.1 - added /academicaffiliates endpoint. defined error response object for all endpoints.


Reviews