WI DPI WISEdata Ed-Fi Docs

Staff Identity (Public LEA Only)

The Staff Identity Integration allows vendors to integrate with the WISEid application, which assigns a unique ID to a person. Vendors that implement this integration provide a means for their schools and districts to retrieve and review potential staff matches and to create WISEids for staff through their SIS. The matches displayed on the SIS should be examined before creating a new WISEid.

Starting the 24/25 SY, the Identity API applies to both student and staff records in WISEid.

Please refer to the WISEdata Ed-Fi Staff Identity Programmer’s Guide for more information: Programmer's Guide for Staff Identity Integration. SIS vendors must ensure they submit requests using the appropriate URL and the current year in the URL.

This integration is NOT expected from Choice schools.


Ed-Fi Tech Docs: https://techdocs.ed-fi.org/display/ODSAPI22/Identities+API


Data Properties:

#

Property Name

Data Type

Business Definition

Data Element Page

1.0

BirthDate

string

The month, day, and year on which an individual was born.

Birth Date

2.0

BirthLocation

array

 

 

3.0

City

string

(Optional but recommended) Person’s birth city.

Text is restricted to: A-Z, Hyphen, Apostrophe, Period, and Spaces. In case of hyphen, apostrophe, period, and space they cannot appear consecutively. For example, no double or triple spaces.

Birth City

4.0

Country

string

(Optional but recommended) Person’s birth country if born outside the United States or Puerto Rico.

This field will allow text to be inserted up to 60 characters, but we suggest vendors eventually try to follow options at https://www.iso.org/obp/ui/#search/code/ in 'English Short Names' for list of countries

Birth Country

6.0

StateAbbreviation

string

(Optional but recommended) Person’s bith state if born in the United States or Puerto Rico.

Birth State

5.0

County

string

(Optional but recommended) Person’s birth county if born in the United States or Puerto Rico. Text is restricted to: A-Z, Hyphen, Apostrophe, Period, and Spaces. In case of hyphen, apostrophe, period, and space they cannot appear consecutively. For example, no double or triple spaces.

This field will allow text to be inserted up to 35 characters, but we suggest vendors eventually try to follow options http://www.census.gov/geo/reference/codes/cou.html download the United States CSV file for field COUNTYNAME for the complete list.

Birth County

7.0

FirstName

string

Person’s name

  • Restricted to: A-Z, Hyphen, Apostrophe, Period, and Spaces. In case of hyphen, apostrophe, period, and space they cannot appear consecutively. For example, no double or triple spaces.

  • Diacritical marks are NOT accepted at this time and will be rejected.

Student/Staff Name (Legal and Other Names)

8.0

LastSurname

string

 

9.0

MiddleName

string

 

10.0

GenerationCodeSuffix

string

Person’s name suffix

  • Restricted to the set of suffixes I - XV, Sr, Jr, SJ

 

11.0

SexType

string

Person’s gender. Valid options are: M = Male) , F = Female, or X = Non-Binary

Gender

12.0

RaceCodes

string

A code corresponding to the racial/ethnic group or groups with which the person identifies. Valid values are: A = Asian, I = American Indian or Alaska Native, P = Native Hawaiian or Other Pacific Islander, B = Black or African American, and W = White.

Race and Ethnicity Data

13.0

MultipleBirthIndicator

boolean

Indicates if a person was part of a set from the same birth (twins, triplets, quadruplets, quintuplets, sextuplets, septuplets, octuplets). This field is highly recommended as it will block auto-matching and prevent incorrect auto-matching of siblings with the same birth date and same or similar names. It will also help with determining if a person is part of a multiple birth vs. a duplicate.

Valid options are ‘true’, ‘false’ or null.

Multiple Birth Status

14.0

IsHispanicLatino

boolean

Hispanic/Non-Hispanic question is answered ‘true’ or ‘false’

Race and Ethnicity Data

15.0

Locals

array

 

 

16.0

EducationOrganizationId

integer

The identifier assigned to a local education agency.

 

17.0

LocalPersonId

string

Unique field to be used by the agency to cross reference and join the local system’s person ID to the state system’s WISEid. Same format whether staff or students are uploaded

Local Person ID/Type

18.0

TypeDescription

string

Current valid types include: "Student" or "Staff".

19.0

Email

string

This email address is connected to each unique combination of a WISEid, Local Person ID, and Local Person ID Key Type per agency. This will be used for the upcoming WISEsecure system to authorize access to DPI systems. Each unique email can only be attached to one WISEid record, although the same WISEid can have the same email applied to multiple Local Person IDs.

Email Address

20.0

WiseSecureRoleDescription

string

Indicates a person's WISEsecure role, which is connected to the Local Person ID and Email. Allowable values are: Educational Support, Teacher, Special Ed Director/Designee, Principal/Designee, Student, None. Null will convert to "None" role. Access to update this field requires a WISEstaff "Agency Staff Admin" security role in addition to a WISEid role with create/edit ability.

WISEsecure Role

21.0

EntityID

Numeric

(Optional but recommended) DPI-assigned Educator File Identification Number.

https://dpi.wi.gov/wise/data-elements/entity-id


Use Cases:

#

Use Case Title

Use Case Description

What to Submit/retrieve

#

Use Case Title

Use Case Description

What to Submit/retrieve

FIND

1.0

Find a staff WISEid and validate data

Perform a Find with a single valid WISEid

All demographic information, Parent Guardian info (if available), and latest 2 staff assignments associated with the WISEid are returned

2.0

Find multiple staff WISEid's and validate data

Perform a Find with an array valid WISEid

All demographic information, parent guardian info (if available), and latest 2 staff assignments associated with the WISEids are returned

3.0

Find an invalid Staff WISEid and validate data

Perform a Find with an invalid WISEid

The SIS should display an appropriate response when the WISEid is invalid

4.0

Leave the WISEid field blank and click 'Find'

This test case may not be applicable in SIS UI

Perform Find with a blank request

The SIS should display an appropriate response when the WISEid field is left blank

5.0

Find a merged Staff WISEid and validate data

Perform a Find with a merged WISEid (e.g. 1001214263)

The SIS should display only one result with the WISEid returned being the active one (1024861481)

inactiveuniqueids": [
"1001214263",
"3007626623",
"3045268586"

SEARCH

6.0

Search for WISEid with valid inputs and validate data

Perform Search with LastSurname, FirstName, and BirthDate (other fields may be populated or blank)

Note: The EducationOrganizationId should be sent as part of the API request. The helps determine if Email and LocalPersonId should be returned for ApiKey that is associated with the Education Organization.

Multiple WISEid's should be returned. Search Responses should include Unique ID, score, demographics, locals, other names, parent guardian names and most recent 2 staff assignments (if available)

6.1

Perform Search with LastSurname and FirstName only (Birth Date is missing)

No WISEid returns and SIS should display a response that says "Last Name, First Name, and Birth Date are required."

6.2

Perform Search with LastSurname, FirstName, and Birth Date (with Local Person ID)

Search score will vary based on the supplied data

6.3

Perform Search with LastSurname, FirstName, and Birth Date (without Local Person ID)

Search score will vary based on the supplied data

6.4

Perform Search with Staff Unique ID, LastSurname, FirstName, and BirthDate

Multiple WISEid's should be returned. SearchResponses should include Unique ID, score, demographics, locals, other names, parent guardian names, and most recent 2 staff assignments (if available).

Most recent 2 staff assignments should include: School Year, School ID, School Name, LEA ID, LEA Name, Position Code, Position Description, Area Code, Area Description.

7.0

Search for WISEid from an agency tied to Key used with valid inputs and validate data

Perform Search with LastSurname, FirstName, and BirthDate (other fields may be populated or blank)

  • If SSA does exist, then Local Person ID will not be displayed

Multiple WISEid's should be returned. SearchResponses should include Unique ID, score, demographics, locals, other names, parent guardian names, most recent 2 staff assignments (if existing), Local Person ID and email (if available)

Most recent 2 staff assignments should include: School Year, School ID, School Name, LEA ID, LEA Name, Position Code, Position Description, Area Code, Area Description.

8.0

Search for WISEid from an agency NOT tied to Key used with inputs and validate data

Perform Search with LastSurname, FirstName, and BirthDate (other fields may be populated or blank)

  • If SSA doesn't exist, then Local Person ID, email will not be displayed

Multiple WISEid's should be returned. SearchResponses should include Unique ID, score, demographics, other names, parent guardian names, and most recent 2 staff assignments (if existing).

Most recent 2 staff assignments should include: School Year, School ID, School Name, LEA ID, LEA Name, Position Code, Position Description, Area Code, Area Description.

9.0

Search for WISEid with names that include values other than alpha characters and validate data

Perform Search with LastSurname, FirstName, and BirthDate but First/Last Names include values other than alphacharacters

No WISEid returns and SIS should display a response that says "Search unsuccessful. WISEid message: Validation Errors Encountered. WISEid errors: Last Name contains invalid characters."

10.0

Search for WISEid with Last Name, First Name, Birth Date, and Suffix (invalid suffix code)

Perform Search with an invalid GenerationCodeSuffix, i.g. 'Pro'

No WISEid returns and SIS should display a response that says "Search unsuccessful. WISEid message: Validation Errors Encountered. WISEid errors: Suffix must be a valid value for the defined list."

11.0

Search for WISEid with invalid Gender Code and validate data

Perform Search with an invalid SexType, i.g. 'O' or values other than M, F or X

No WISEid returns and SIS should display a response that says "Search unsuccessful. WISEid message: Validation Errors Encountered. WISEid errors: Gender must be 'F' or 'M'."

12.0

Search for a merged WISEid with validate data

Perform a Find with a merged WISEid with the following parameters:
LastSurname: Saye,
FirstName: Aye,
BirthDate: 2001-01-04,
SexType: F <<-- SexType v SexKey
LocalPersonId: ,
EducationOrganizationId: xxx

status": 1,
searchResponses:
uniqueId: 1018788212,
score: 100,
lastSurname: Saye,
firstName: Aye,
sexType: F,
birthDate: 2001-01-04T00:00:00Z
....
inactiveuniqueids: 2033123045

13.0

Search for WISEid with 100 score

Perform Search with a the following parameters:
LastSurname: "Hound",
FirstName: "Pixel",
BirthDate: "2017-04-14",
SexType: "M",
EducationOrganizationId: xxxx

One WISEid is returned:
"status": 1,
"uniqueId": "2014816553",
"score": 100,

14.0

Search for WISEid with +80 score

Perform Search with a the following parameters:
LastSurname: "HANSON",
FirstName: "JENNA LEA",
BirthDate: "1990-06-30",
SexType: "F",
EducationOrganizationId: xxxx

Multiple WISEids are returned
"status": 1,
"uniqueId": "1001052923"
"score": 82.0693634

"uniqueId": "6781003711"
"score": 82.0693634

"uniqueId": "6625202107"
"score": 50.995909

etc.

15.0

Search for WISEid with +50 score

Perform Search with a the following parameters:
LastSurname: "Mouse",
FirstName: "Mickey",
BirthDate: "2017-06-30",
SexType: "M",
EducationOrganizationId: xxx

Multiple WISEids are returned
"status": 1,
"uniqueId": "1011605073"
"score": 50.3320895

"uniqueId": "3202700346"
"score": 50.3320895

"uniqueId": "4842074635"
"score": 50.3320895

CREATE

16.0

Create WISEid with valid inputs while performing Search operation with 'Locals' info not tied to any existing WISEid from current agency

Create with Search Key and Search parameters

WISEid should be created

17.0

Create WISEid with invalid inputs and validate an appropriate response is displayed

This test case may not be applicable in SIS UI

Create with an invalid SearchKey

WISEid should not be created. Message: "Invalid response from identity service: Incomplete"

18.0

Create WISEid with expired inputs and validate an appropriate response is displayed

This test case may not be applicable in SIS UI

Create with an expired/used SearchKey

WISEid should not be created. Message: "Invalid or Expired Search Token - WiseId not created. WISEid errors: Search Token already consumed. Cannot create Person more than once with Token."

19.0

Create WISEid with missing inputs and validate an appropriate response is displayed

Create with missing SearchKey

WISEid should not be created. Message: "Missing required fields: SearchKey"

This test case may not be applicable in SIS UI

20.0

Create with missing LastSurname

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Required field is missing, 'Last Name'."

20.1

Create with missing FirstName

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Required field is missing, 'First Name'."

20.2

Create with missing MiddleName

WISEid should be created

20.3

Create with missing SexType

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Required field is missing, 'Gender'."

20.4

Create with missing BirthDate

WISEid should not be created. Message: "Missing required fields: BirthDate"

20.5

Create with missing IsHispanicLatino field

WISEid should not be created. Message: "Missing required fields: IsHispanicLatino"

20.6

Create with missing LocalPersonId

WISEid should not be created.

21.0

Create WISEid with incorrect inputs and validate an appropriate response is displayed

This test case may not be applicable in SIS UI

Create with LastSurname not matching from Search

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Invalid or Expired Search Token - WiseId not created. WISEid errors: Last Name does not match value in Search Token "

21.1

Create with FirstName not matching from Search

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Invalid or Expired Search Token - WiseId not created. WISEid errors: First Name does not match value in Search Token"

21.2

Create with MiddleName not matching from Search

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Invalid or Expired Search Token - WiseId not created. WISEid errors: Middle Name does not match value in Search Token"

21.3

Create with SexType not matching from Search

WISEid should be created

21.4

Create with BirthDate not matching from Search

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Invalid or Expired Search Token - WiseId not created. WISEid errors: Birthdate does not match value in Search Token"

22.0

Create WISEid with invalid inputs and validate an appropriate response is displayed

Create BirthLocation with StateAbbreviation as Wisconsin rather than Wi

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Birth State code must be from the CEDS list of state codes and limited to one of the 50 US states, District of Columbia (Washington DC) or Puerto Rico."

22.1

 

Create with missing/ invalid raceCode value

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Race Key must be a valid value from the defined list. (2,3,4,5,6)"

23.0

Create WISEid with missing/incorrect input and validate an appropriate response is displayed

Create with missing/ incorrect GenerationCodeSuffix field but exists in SearchKey

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Invalid or Expired Search Token - WiseId not created. WISEid errors: Last Name does not match value in Search Token (YYYYY), Suffix does not match value in Search Token (Jr)"

24.0

Create WISEid with valid inputs while performing Search operation with educationOrganizationId on 'Locals' not tied to Agency/API Key

Create with Search Key and Search parameters

WISEid should not be created. Message: "The ApiKey 'XXXXXXXXX' is not authorized to send EducationOrganizationId: 2468. The ApiKey 'XXXXXXXXX' is authorized for the following EducationOrganizationId(s) (7533)."

25.0

Create WISEid with valid inputs while performing Search operation with educationOrganizationId on 'Locals' is EdOrg Code (5656) instead of EdOrg ID (7533)

This test case may not be applicable in SIS UI

Create with valid Search Key and Search parameters

WISEid should not be created. Message: "The ApiKey 'ZTest-SKT-PUBLIC' is not authorized to send EducationOrganizationId: XXXX. The ApiKey 'ZTest-SKT-PUBLIC' is authorized for the following EducationOrganizationId(s) (YYYY)."

26.0

Create WISEid with valid inputs while performing Search operation with educationOrganizationId on 'Locals' is School ID and API KEY is at LEA level

This is for MPS, MCP

Create with Search Key and Search parameters

WISEid should not be created. Message: "The ApiKey 'ZTest-SKT-PUBLIC' is not authorized to send EducationOrganizationId: xxxx. The ApiKey 'ZTest-SKT-PUBLIC' is authorized for the following EducationOrganizationId(s) (YYYY)."

27.0

Create WISEid with valid inputs while performing Search operation with educationOrganizationId on 'Locals' is School ID and API KEY is at School level

This is for MPS, MCP

Create with Search Key and Search parameters

WISEid should be created

28.0

Create WISEid with valid inputs while performing Search operation with local person id within 'Locals' info tied to an existing wiseid from current agency

Create with Local Person ID tied to an existing wiseid from current agency

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Email is already in use by another WISEid: XXXXXXXXX, Local Person Id already exists in the current agency."

29.0

Create WISEid with valid inputs while performing Search operation with local person id within 'Locals' missing

Create with Local Person ID is missing

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Required Field Missing: Local Person ID."

30.0

Create WISEid with valid inputs while performing Search operation with Type Description within 'Locals' missing

Create with typeDescription missing

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Email is already in use by another WISEid: ZZZZZZZZZZ, Local Person ID Key Type must be either 'Staff' or '' and is required"

31.0

Create WISEid with valid inputs while performing Search operation with Type Description and WISESecure Role Description within 'Locals' are both provided as 'Staff'

Create with typeDescription and wiseSecureRoleDescription are both as 'Staff'

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: WISEsecure Role must be a valid value from the Role list: Educational Support, Teacher, Special Ed Director/Designee, Principal/Designee, , None."

32.0

Create WISEid with valid inputs while performing Search operation with email within 'Locals' is in invalid format

Create with invalid email format

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Invalid email"

33.0

Create WISEid with valid inputs while performing Search operation with email within 'Locals' already tied to another wiseid

Create with email tied to another wiseid

WISEid should be created

Starting 23/24SY, DPI has removed the validation error for email uniqueness.

34.0

Create WISEid with valid inputs while performing Search operation with names array as blank

Create with names array as blank

WISEid should be created

35.0

Create WISEid with valid inputs while performing Search operation with names array containing invalid First or LastNames

Create with invalid characters in First or Last Name

WISEid should not be created. Message: "Create unsuccessful. WISEid message: Validation Errors Encountered - WiseId not created. WISEid errors: Other Name First Name contains invalid characters."


JSON Sample:

{ LastSurname: "HANSON", FirstName: "JENNA LEA", BirthDate: "1990-06-30T00:00:00", MiddleName: "", GenerationCodeSuffix: "", SexType: "F", LocalPersonId: "PID - 6673465", EducationOrganizationId: 12337 }

 

{ "searchKey": "6b055675-6f15-400d-8c7b-752bbe0ca2f9", "lastSurname": "HANSON", "firstName": "JENNA LEA", "middleName": "A", "sexType": "F", "birthDate": "1990-06-30T00:00:00", "entityid": 17563, "birthLocation": {}, "GenerationCodeSuffix": null, "MultipleBirthIndicator": true, "IsHispanicLatino": false, "raceCodes": ["W"], "locals": [ { "educationOrganizationId": 12337, "localPersonId": "PID - 6673465", "email": "6673465@dpi.wi.gov", "typeDescription": "Staff", "wiseSecureRoleDescription": "Teacher" } ], "names": [ { "firstName": "JENNALEA", "middleName": "A", "lastSurname": "HANSON" } ], "parentGuardianNames": [ { "firstName": "CYNTHIA", "lastSurname": "HANSON", "typeDescription": "Mother" }, { "firstName": "DAVID", "lastSurname": "HANSON", "typeDescription": "Father" } ] }

 

Wisconsin Department of Public Instruction