Manage E-Verify

Once E-Verify has been configured and Forms I-9 are completed by employees, E-Verify cases will be automatically created. As a reminder, E-Verify is configured at the employer level.

While case actions (for example, photo confirmations and unconfirmed data) are handled by administrators through the embedded experience, you can access E-Verify case data through the API to support integration, reporting, and workflow logic.

Available Endpoints

  1. Retrieve all E-Verify cases for an employer
  2. Retrieve detailed E-Verify case data
  3. Retrieve E-Verify account settings

Retrieve all e-verify cases for an employer

To return all cases for a specific employer, call the /employers/{employerId}/everifyCases GET endpoint. This endpoint returns summary information only. To view or manage the case, the employer administrator must log into the embedded E-Verify experience configured using the /employers/{employerId}/admins/{adminId}/everifySettings/generateToken GET endpoint.

Sample cURL request

curl --location 'https://api.symmetry.com/i9/v1/employers/0197145/everifyCases' \
--header 'Authorization: Bearer ••••••'

Query Parameter

ParameterTypeRequiredDescription
employerIdstringYesThe unique ID of the employer whose E-Verify cases you want to retrieve.

Sample Response

{
  "everifyCases": [
    {
      "id": "0196ab0756754",
      "submissionId": 72,
      "caseId": "2025123482085BU",
      "caseStatus": "closed_authorized"
    }
  ]
}

Response fields

FieldTypeDescription
idstringInternal ID used to fetch full case data using the /employers/{employerId}/everifyCases/{id} endpoint.
submissionIdintegerID of the I-9 submission that triggered the case.
caseIdstringE-Verify-assigned case ID.
caseStatusstringCurrent case status. See all possible values here.

Retrieve detailed E-verify case data

The /employers/{employerId}/everifyCases/{id} endpoint retrieves detailed information for a specific E-Verify case, including timestamps, raw response data, and audit logs.

While this endpoint gives insight into the case’s history and result, all case actions must be taken within the embedded E-Verify experience by the employer’s administrator.

Sample cURL request

curl --location 'https://api.symmetry.com/i9/v1/employers/0197ad3412345/everifyCases/36'\
--header 'Authorization: Bearer ••••••'

Query Parameter

ParameterTypeRequiredDescription
idstringYesThe Symmetry everifyCases.id value returned from the /everifyCases endpoint. This is distinct from the caseId.
employerIdstringYesThe unique ID of the employer whose E-Verify case you want to retrieve.

Sample Response

{
  "id": "0196ab07",
  "submission": {
    "submissionId": 72,
    "employeeId": "0196ab05"
  },
  "everifyCase": {
    "caseId": "2025384082085BU",
    "caseCreatedAt": "2025-05-05T15:45:15.000-06:00",
    "caseResultAt": "2025-05-05T15:45:17.000-06:00",
    "receipt": false,
    "caseStatus": "closed_authorized",
    "everifyAccountId": 1,
    "rawResponse": {
      "caseStatus": "CLOSED",
      "caseStatusDisplay": "Closed",
      "caseEligibilityStatement": "EMPLOYMENT_AUTHORIZED"
    },
    "auditLogs": [
      {
        "name": "case_status_change",
        "details": {
          "status": "submitted"
        },
        "serverTimestamp": "2025-05-05T15:45:15-06:00"
      },
      {
        "name": "case_status_change",
        "details": {
          "status": "draft"
        },
        "serverTimestamp": "2025-05-05T15:45:15-06:00"
      },
      {
        "name": "case_status_change",
        "details": {
          "status": "closed_authorized"
        },
        "serverTimestamp": "2025-05-05T15:45:17-06:00"
      }
    ],
    "tncI9Correct": false,
    "visitEverify": false,
    "deleteable": false,
    "unconfirmedDataFields": []
  }
}

Response fields

Top-Level Response Fields

FieldTypeDescription
idstringSymmetry E-Verify case record ID
submissionobjectMetadata about the I-9 submission
everifyCaseobjectDetailed case information from the E-Verify system

submission Object

FieldTypeDescription
submissionIdintegerID of the I-9 submission
employeeIdstringUnique identifier for the employee

everifyCase Object

FieldTypeDescription
caseIdstringDepartment of Homeland Security E-Verify case ID
caseCreatedAttimestampWhen the case was submitted to E-Verify
caseResultAttimestampWhen the result was returned from E-Verify
receiptbooleanIndicates if a receipt was used in document verification
caseStatusstringInternal case status (e.g., closed_authorized). See all possible values.
everifyAccountIdintegerSymmetry's internal account ID that represents a customer's E-Verify account
rawResponseobjectReturns official DHS E-Verify case status values from the E-Verify API
auditLogsarrayList of events relating to the E-Verify case. See the audit log object for more information.
tncI9CorrectbooleanWhether the TNC is due to incorrect I-9 data
visitEverifybooleanIf true, must visit E-Verify's website to continue. Typically affects cases in the following statuses: unconfirmed_data, scan_and_upload, pending_referral, referred, closed_other, close_case_and_resubmit, final_nonconfirmation, internal_error
deleteablebooleanIndicates whether the case is eligible for deletion. Returns true for cases in the following statuses: internal_error, submission_error.
unconfirmedDataFieldsarrayReturns the values that cause the unconfirmed data error

rawResponse Object

FieldTypeDescription
caseStatusstringE-Verify system "case_status" value (for example, CLOSED)
caseStatusDisplaystringE-Verify system "case_status_display" value (for example, Closed)
caseEligibilityStatementstringE-Verify system "case_eligibility_statement" value (for example, EMPLOYMENT_AUTHORIZED)

auditLogs Array

FieldTypeDescription
namestringType of event. Possible values: case_status_change,
tnc_notification_sent_event, case_photo_matching_confirmation, case_scan_and_upload, case_confirmed_data, case_close, case_existing_draft_close, case_resubmitted, tnc_no_action, tnc_refer_case
details.statusstringE-Verify case status. Possible values: closed_authorized, closed_nonconfirmation, closed_other, created, draft, employment_authorized, final_nonconfirmation, close_case_and_resubmit, internal_error, manual_review, pending_referral, manually_closed, photo_match, queued, referred, scan_and_upload, submission_error, submitted, unconfirmed_data, unsubmitted_receipt
serverTimestamptimestampWhen the status change occurred

Retrieve E-Verify Account Settings

Use this endpoint to retrieve the current E-Verify configuration for an employer. This is helpful for verifying whether E-Verify has been configured and for displaying the stored administrator and credential settings in a UI.

To retrieve the current E-Verify configuration for an employer, call the /employers/{employerId}/everifySettings GET endpoint. This endpoint is helpful for verifying whether E-Verify has been configured and for displaying the stored administrator and credential settings in a UI. To view or manage the case, the employer administrator must log into the embedded E-Verify experience configured using the /employers/{employerId}/admins/{adminId}/everifySettings/generateToken GET endpoint.

Sample cURL request

curl --location 'https://api.symmetry.com/i9/v1/employers/0197145/everifySe' \
--header 'Authorization: Bearer ••••••'

Query Parameter

ParameterTypeRequiredDescription
employerIdstringYesThe unique ID of the employer whose E-Verify cases you want to retrieve.

Sample Response

{
  "everifySettings": {
    "companyId": "123456",
    "programAdministratorEmail": "[email protected]",
    "programAdministratorFirstName": "John",
    "programAdministratorId": "789012",
    "programAdministratorLastName": "Doe",
    "programAdministratorPhone": "234-567-8901",
    "webServiceUsername": "everify_user"
  }
}

Elements

ElementDescription
companyIdThe employer's E-Verify Company ID found in the Company Profile within the E-Verify portal
programAdministratorIdThe E-Verify user profile ID found on the User Profile page
programAdministratorFirstNameThe E-Verify user’s first name from the User Profile
programAdministratorLastNameThe E-Verify user’s last name from the User Profile
programAdministratorEmailThe E-Verify user’s email address from the User Profile
programAdministratorPhoneThe E-Verify user’s phone number from the User Profile
webServiceUsernameThe Web Services user ID found within the Web Services profile (this is an ID, not an email address)
webServicePasswordThe Web Services password associated with the Web Services user

Jump to top