Employee I9 Update Event (Early Access)

POSTs request when an Employee I9 form has been updated.

This endpoint specifies what will be sent to your Employee I9 Event Webhook. Zeal POSTs a request containing an Employee's I9 information at different stages of the I9 completion in the dashboard. You can update and test the webhook URL you want Zeal to hit on the 'API' Page of the Zeal Dashboard.

Request Body

attributetypedescription
testbooleanWhether the Event was created/updated/deleted in Test Mode
employeeIDstringZeal employeeID of Employee
first_namestringFirst name of Employee
last_namestringLast name of Employee
companyIDstringZeal companyID of Employer
business_namestringBusiness Name
documentslistDocument or documents provided by employee. Can contain multiple.


Show documents values
CANADIAN_DRIVERS_LICENSE
DAY_CARE_RECORD
DRIVERS_LICENSE
DS_1350
EMPLOYMENT_AUTHORIZATION_DOCUMENT
FOREIGN_PASSPORT
FOREIGN_PASSPORT_WITH_FORM_I94
FOREIGN_PASSPORT_WITH_I551_STAMP
FORM_I179
FORM_I197
FORM_I551
FORM_I766
FORM_I94
FORM_I94_RECEIPT
FS_240
FS_545
FSM_OR_RMI_PASSPORT_WITH_FORM_I94
GOVERNMENT_ID_CARD
HOSPITAL_RECORD
MILITARY_DEPENDENT_ID_CARD
NATIVE_AMERICAN_TRIBAL_DOCUMENT
SCHOOL_ID_CARD
SCHOOL_RECORD
SOCIAL_SECURITY_CARD
US_BIRTH_CERTIFICATE
US_COAST_GUARD_CARD
US_MILITARY_CARD
US_PASSPORT
VOTER_REGISTRATION_CARD
statusstringHolds one of the following values:
SECTION_1_COMPLETED
AUTHORIZED_REPRESENTATIVE_CONTACTED
SECTION_2_COMPLETED
authorized_representativeobjectInformation on the Authorized Representative who reviewed the employee's I9

Show authorized_representative fields
email - Email of authorized representative, shown if provided
phone - Phone of authorized representative, shown if provided
first_name - First name of authorized representative
last_name - Last name of authorized representative
decision - Decision of authorized representative. Possible values:
IN_PROGRESS
APPROVED
CHANGES_REQUESTED
decision_made_on - Date and time the decision was made on

NOTE: The authorized_representative object will not appear until the I9 status has reached AUTHORIZED_REPRESENTATIVE_CONTACTED and will only show all fields (either phone or email) once the status updates to SECTION_2_COMPLETED

Returns

Doesn't return anything but rather POSTs a request with the I9 update to your webhook URL.


Raw Content Example

{
  "test": false,
  "employeeID": "cc4482374ee49487ruzieun",
  "first_name": "Erlich",
  "last_name": "Bachman",
  "companyID": "1eeec343485723ee58ufefhz",
  "business_name": "Test Company",
  "documents": [
    "US_PASSPORT"
  ],
  "status": "SECTION_1_COMPLETED"
}
{
  "test": false,
  "employeeID": "cc4482374ee49487ruzieun",
  "first_name": "Erlich",
  "last_name": "Bachman",
  "companyID": "1eeec343485723ee58ufefhz",
  "business_name": "Test Company",
  "documents": [
    "US_PASSPORT"
  ],
  "status": "SECTION_2_COMPLETED",
  "authorized_representative": {
    "email": "[email protected]"
  },
}
{
  "test": false,
  "employeeID": "cc4482374ee49487ruzieun",
  "first_name": "Erlich",
  "last_name": "Bachman",
  "companyID": "1eeec343485723ee58ufefhz",
  "business_name": "Test Company",
  "documents": [
    "US_PASSPORT"
  ],
  "status": "SECTION_2_COMPLETED",
  "authorized_representative": {
    "first_name": "Richard",
    "last_name": "Hendricks",
    "email": "[email protected]",
    "decision": "APPROVED",
    "decision_made_on": "2024-10-01T20:46:27.961Z"
  },
}