Here we cover several use cases for our API. You can follow along using the interactive components on this page, our through our demo app.

To Initiate WOTC Screening

1. Add button in your application, "Complete WOTC". (Alternatively, you could complete this without a button, simply a new page hosting our app in a frame within yours, and upon page load, execute the following steps) Below are A set of test credentials to help initiate the process.

Use the following Authentication GUID:DEVAPISB-3ea4-47da-9361-6266288dfa9e
Use the following company and location IDs:
CompanyID = 104839 - Default ID to choose from
LocationID = 104845 - Default ID to choose from

  • 2. You will want to 1st execute the GetCompanyList. This can be a onetime call if you store the data(recommended). If you add more companies you will need to run this process again.

    	Dim Client = New EFAPI.EFAPIServiceInterfaceClient()
            Dim Authorization = "DEVAPISB-3ea4-47da-9361-6266288dfa9e" 
            Dim ReturnedCompanies = Client.GetCompanyList( Authorization )
  • 3. Execute the GetActiveLocationList. This can be a onetime call per company if you store the data. If a company adds more locations you would have to run this process again.

            Dim Client = New EFAPI.EFAPIServiceInterfaceClient()
            Dim Authorization = "DEVAPISB-3ea4-47da-9361-6266288dfa9e"
            Dim Companies = Client.GetCompanyList( Authorization )
            Dim CompanyID = Companies(0).CompanyID
            Dim ReturnedLocationss = Client.GetActiveLocationList( Authorization, CompanyID )
  • 4. Execute the ImportEmployees contract. This contract returns the employee PartyID in EHX for use in subsequent RequestSingleSignon call.

            Dim Client = New EFAPI.EFAPIServiceInterfaceClient()
    Prerequisite calls Dim Authorization = "DEVAPISB-3ea4-47da-9361-6266288dfa9e" Dim Companies = Client.GetCompanyList( Authorization ) Dim CompanyID = Companies(0).CompanyID Dim Locations = Client.GetLocationList( Authorization, CompanyID ) Dim LocationID = Locations(0).LocationID
    Employee Required Fields Dim Employee = new EFAPI.MainAPIEmployeeClass() Employee.CompanyID Employee.LocationID Employee.FirstName Employee.LastName Employee.Email Employee.DateOfBirth = "11/23/1912" Employees date of birth in format MM/DD/YYYY Employee.DateOfHire = "09/23/1962" Employees Hire date in format MM/DD/YYYY Employee.PayRateOne = "120000.00" defined pay rate Employee.PayRateType The type of payrate for the employee (typically Hourly/Salary). All available options can be retrieved with GetPayRates contract Employee.SSN = "000-00-0000" The SSN should be passed in the format xxx-xx-xxxx Employee.StartDate = "08/23/2001" Employees start date in format MM/DD/YYYY Employee.WorkState = "CO" Two-character Postal abbreviation
    Contract Required Fields Authorization Dim NewEmployee() = {Employee} RegistrationTypeCode (99999096) SendRegEmailYN (N) Dim ReturnedEmployeess = Client.ImportEmployees( Authorization, Employees, RegistrationTypeCode, SendRegEmailYN )
  • 5. Execute the RequestSingleSignon contract, using the employee PartyID returned in the previous call. This contract returns the SSO link, to which you can direct to inside the frame, or to a new browser window.

           Dim Client = New EFAPI.EFAPIServiceInterfaceClient()
           Dim Authorization = "DEVAPISB-3ea4-47da-9361-6266288dfa9e"
           Dim PartyID Saved from the Importemployee Call 
           Dim ReturnedStrings = Client.RequestSingleSignon( Authorization, PartyID )
                                             

    6. Employee completes the WOTC Screening in the hosted frame

To Validate WOTC Screening is Complete

We recommend you validate that the employee completed the WOTC screening before allowing them to continue the onboarding process in your application. In the page hosting our application in a frame (but outside the frame) upon page exit, you can initiate the following sequence of API calls to verify the screening is complete:

  • 1. Execute the GetEmployeeStatusByPartyID using the Authentication GUID and

            Dim Client = New EFAPI.EFAPIServiceInterfaceClient()
            Dim Authorization = "DEVAPISB-3ea4-47da-9361-6266288dfa9e" 
    	Dim EmployeeLookups = Client.LookupEmployee( Authorization,  CompanyID,  FirstName,  LastName,  Email )
    	Dim EmployeeID = EmployeeLookups(0).EmployeeID
            Dim ReturnedEmployeeStatuss = Client.GetEmployeeStatusByPartyID( Authorization, EmployeeID )
                                             

    This contract returns the relevant information about the employee and an array of registration requests. In your case this array will only contain one registration request, with a RegistrationTypeCode = 9999096.

    If the RegistrationStatus for that request is "Incomplete", then the employee has not completed the screening, and you should then inform the user that they need to complete the screening, and redirect them to the screening via the RequestSingleSignon call outlined above.