2. Configure Employees & Administrators
Once you've established the employer, you are ready to register the employee (new hire) and employer administrators to the employer, which can happen at any time. As a reminder, employees must be configured before starting an I-9 for that employee.
Register Employee
To establish a new hire, register the employee by calling the /employees
endpoint. A successful request will return the employee's id
that can then be used to generate the employee's access link to their I-9. Registering an employee can be completed in advance for an employee with a start date in the future, or it can be completed “just in time” right before the I-9 verification process begins.
When registering employees, you will also specify if an employee should not be eligible for Remote I-9 Section 2 verification within the employeeDocumentOptions
object. (note: this is only applicable if you have Remote I-9 enabled by default).
Request
{
"firstName": "Wendy",
"lastName": "Kopp",
"emailAddress": "[email protected]",
"telephoneNumber": "202-789-4567",
"address": {
"zipCode": "85260-2662",
"city": "Scottsdale",
"streetAddress1": "14350 N 87th St",
"streetAddress2": "Ste 250",
"state": "AZ"
},
"socialSecurityNumber": "456-01-2785",
"dateOfBirth": "1975-01-01",
"employment": {
"hireDate": "2025-05-18",
"startDate": "2025-06-01",
"status": "active",
"employeeDocumentOptions": {
"i9RemoteCounterSignAuthorized": true,
"i9RemoteReverificationAuthorized": true
}
}
}
Request Elements
Below is the data necessary to register your employee within Symmetry.
Element | Type | Description |
---|---|---|
firstName | string | Required. Employee's first name. |
middleName | string | Employee's middle name |
lastName | string | Required. Employee's last name. |
nickname | string | Employee's preferred nickname |
emailAddress | string | Email address associated with employee |
telephoneNumber | string | The phone number associated with employee |
socialSecurityNumber | string | Employee's Social Security Number. Must be exactly 9 digits. All non-numeric characters will be automatically removed before validation (for example, 123-45-6789 will be validated as 123456789). |
dateOfBirth | string date | Date of birth associated with the employee |
employment | object | Employee's employment details |
address | object | Employee's physical address |
Employment Object
The employment
object contains key employment details for the employee, including important dates, current employment status, and document authorization options specific to Form I-9 processing.
Element | Type | Description |
---|---|---|
hireDate | string, date | The official date the employee was hired by the employer. This may be earlier than the start date if onboarding began in advance. |
startDate | string, date | The employee’s actual first day of work for pay. This date is required on the I-9 and should reflect when work began. |
status | string | The employee’s current employment status, "active" and "inactive" |
employeeDocumentOptions | object | For service providers with remote verification enabled, this allows you to turn off remote I-9 for this specific employee. This should be applied consistently across all employees for this specific employer. |
employeeDocumentOptions. i9RemoteCounterSignAuthorized | boolean | Indicates whether the employee is authorized to use a remote countersigner (authorized representative) for Section 2 of the I-9. |
employeeDocumentOptions. i9RemoteReverificationAuthorized | boolean | Indicates whether the employee can complete remote reverification (for example, when their work authorization is reverified) via a remote representative. |
Response
The response contains the employee identifier (id
), along with the data from the request.
Below is an example of a successful response.
{
"employee": {
"id": "019721ce-cfcb-7224-972c-1234567",
"emailAddress": "[email protected]",
"firstName": "Wendy",
"lastName": "Kopp",
"socialSecurityNumber": "456-01-2785",
"telephoneNumber": "202-789-4567",
"dateOfBirth": "1975-01-01",
"address": {
"streetAddress1": "14350 N 87th St",
"streetAddress2": "Ste 250",
"city": "Scottsdale",
"state": "AZ",
"zipCode": "85260-2662",
"country": "US"
},
"employment": {
"hireDate": "2025-05-18",
"startDate": "2025-06-01",
"employeeDocumentOptions": {
"i9RemoteCounterSignAuthorized": true,
"i9RemoteReverificationAuthorized": true
},
"status": "active",
"statusChangedBy": "0",
"statusChangedAt": "2025-05-30T15:28:11.073Z",
"onBoardingStarted": false
}
}
}
Response Elements
A successful response returns the employee
object.
Employee Object
Element | Type | Description |
---|---|---|
id | string | Employee's unique identifier |
firstName | string | Employee's first name |
middleName | string | Employee's middle name |
lastName | string | Employee's last name |
nickname | string | Employee's preferred nickname |
emailAddress | string | Email address associated with a employee |
telephoneNumber | string | The phone number associated with employee |
socialSecurityNumber | string | Employee's Social Security Number. Must be exactly 9 digits. All non-numeric characters will be automatically removed before validation (for example, 123-45-6789 will be validated as 123456789). |
dateOfBirth | string date | Date of birth associated with the employee |
gender | string | Employee's gender (M , F , X ) |
employment | object | Employee's employment details |
address | object | Employee's physical address |
Employment Object
Element | Type | Description |
---|---|---|
hireDate | string | Employee's hire date |
startDate | string | Employee's start date |
employeeDocumentOptions | object | For service providers with remote verification enabled, this allows you to turn off remote I-9 for this specific employee. This should be applied consistently across all employees for this specific employer. |
onBoardingStartDate | string | Date the employee started the onboarding process |
status | string | Employee's current employment status (active , inactive ) |
statusChangedBy | string | Name of individual who last changed employee's status |
statusChangedAt | string, date-time | Timestamp of when employee's employment status was last changed |
onBoardingStarted | boolean | Whether or not the employee has started the onboarding process |
Employee Document Options Object
Element | Type | Description |
---|---|---|
i9RemoteCounterSignAuthorized | boolean | Indicates whether the employee is authorized to use a remote countersigner (authorized representative) for Section 2 of the I-9. |
i9RemoteReverificationAuthorized | boolean | Indicates whether the employee can complete remote reverification (for example, when their work authorization is reverified) via a remote representative. |
Address Object
Element | Type | Description |
---|---|---|
streetAddress1 | string | Street number and street name |
streetAddress2 | string | Address identifier (e.g., apartment number, suite number, etc.) |
city | string | City name |
state | string | State name or abbreviation |
zipCode | string | Postal zip code (either 5 or 9 digits) |
Register Administrator
This one-time step is required to set up the employer administrator (HR, Compliance, or other executive functions at the employer) within that company who will administer Forms I-9 and take action on any documentation verification or E-Verify cases. Companies may have more than one administrator and administrators can be created at any time.
To create a new administrator, call the /employers/{employerId}/admins
POST endpoint with the administrator details.
A successful call will return the administrator's ID that will then be used to generate the administrator's access to employer embedded experience.
Request
{
"emailAddress": "[email protected]",
"firstName": "AdminFirst",
"middleName": "AdminMiddle",
"lastName": "AdminLast"
}
Request Elements
Below is the data necessary to register your administrator within Symmetry.
Element | Type | Description |
---|---|---|
emailAddress | string | Required. Employer administrator's email address. Must be unique. |
firstName | string | Required. Legal first name. |
middleName | string | Legal middle name |
lastName | string | Required. Legal last name |
Response
The response contains the admin
object, which includes the administrator's unique identifier.
Below is an example of a successful response.
{
"admin": {
"id": "01973711-0f1a-7325-9499-1234567",
"firstName": "AdminFirst",
"middleName": "AdminMiddle",
"lastName": "AdminLast",
"emailAddress": "[email protected]"
}
}
Response Elements
The fields below are returned in the admin
object.
Admin Object
Element | Type | Description |
---|---|---|
id | string | Unique identifier for the administrator |
firstName | string | First name as provided in the request |
middleName | string | Middle name as provided in the request |
lastName | string | Last name as provided in the request |
emailAddress | string | Email address as provided in the request |
Updated 4 days ago