> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zeal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Employee

> Create one or more W-2 employees under a company in Zeal.

See the [Employee Object](/reference/employees/the-employee-object) for the full field reference.


## OpenAPI

````yaml openapi/zeal-api.json post /employees
openapi: 3.1.0
info:
  title: zeal-api
  version: '1.0'
servers:
  - url: https://api.zeal.com
security:
  - sec0: []
paths:
  /employees:
    post:
      summary: Create Employee
      description: Create a W-2 employee.
      operationId: create-employee
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - companyID
                - new_employees
              properties:
                companyID:
                  type: string
                  description: >-
                    Company ID of employer (you can access your companyID on the
                    Zeal dashboard)
                new_employees:
                  type: array
                  description: List of [The Employee Object](ref:the-employee-object)
                  items:
                    properties:
                      email:
                        type: string
                        description: Email of Employee
                      first_name:
                        type: string
                        description: First Name of Employee
                      last_name:
                        type: string
                        description: Last Name of Employee
                      title:
                        type: string
                        description: Title of employee
                      default_pay_schedule:
                        type: string
                        description: >-
                          You will still be in charge of setting the reporting
                          periods and check dates, but this field helps Zeal
                          determine at what rate to tax the employee. You must
                          choose one of the following pay schedules for this
                          employee: `daily`, `weekly` (you want to send 1 check
                          per week),`biweekly` (you want to send 1 check every
                          other week), `semimonthly` (you want to send 2 checks
                          per month), `monthly` (you want to send 1 check per
                          month)
                      default_wage:
                        type: number
                        description: Default wage of Employee
                        format: float
                      workLocationID:
                        type: string
                        description: >-
                          ID of Work Location Object - working_state is derived
                          from workLocationID
                      overtime_rate:
                        type: number
                        description: >-
                          Rate for overtime pay. Default OT rate is 1.5 times
                          base wage.
                        default: 1.5
                        format: float
                      doubletime_rate:
                        type: number
                        description: >-
                          Rate for double time pay. Default DT rate is 2 times
                          base wage.
                        default: 2
                        format: float
                      start_date:
                        type: string
                        description: >-
                          Start Date of employee (also known as hire date). This
                          is the first day that this employee works in return
                          for wages and is formatted as a date. Zeal uses this
                          date for new hire reporting. By default, the date is
                          set to tomorrow's date.
                        format: date
                      dob:
                        type: string
                        description: Date of birth of employee (formatted as YYYY-MM-DD)
                        format: date
                      ssn:
                        type: string
                        description: Social Security Number of employee
                      phone_number:
                        type: string
                        description: Phone Number of employee
                      address:
                        type: string
                        description: Residential Street Address of employee
                      address_line2:
                        type: string
                        description: Residential Street Address Line 2 of Employee
                      city:
                        type: string
                        description: Residential City of employee
                      state:
                        type: string
                        description: Residential State of employee
                      zip:
                        type: string
                        description: Residential Zip of employee
                      is_943:
                        type: boolean
                        description: Set to true if the employee is a farmworker
                        default: false
                      is_scheduleH:
                        type: boolean
                        description: >-
                          Set to true if the employee falls under the Schedule H
                          category as a household employee
                        default: false
                      external_id:
                        type: string
                        description: >-
                          External ID for an employee that comes from an
                          employer's HR or other internal system
                      metadata:
                        type: object
                      work_week_start:
                        type: string
                        description: >-
                          ISO-8601 date depicting the beginning of the work week
                          when the employee begins work   **NOTE: Only
                          applicable for FLSA Overtime Policy**
                      is_salary:
                        type: boolean
                        description: Set to true if the employee is salaried
                      salary:
                        type: number
                        description: The annual salary amount of the employee
                        format: float
                      is_regular:
                        type: boolean
                        description: >-
                          Set to true if the employee should be included in
                          'on-cycle' payroll runs
                      soc_code:
                        type: string
                        description: >-
                          The Standard Occupational Classification (SOC) code
                          for the employee, in NN-NNNN format
                    required:
                      - email
                      - first_name
                      - last_name
                      - title
                      - default_pay_schedule
                      - default_wage
                      - workLocationID
                    type: object
      responses:
        '200':
          description: '200'
          content:
            application/json:
              examples:
                Result:
                  value:
                    success: true
                    data:
                      - employeeID: '1234567890'
                        companyID: 1b5n28nrideucd24
                        onboarded: false
                        email: erlich@zeal.com
                        first_name: erlich
                        last_name: bachman
                        default_pay_schedule: daily
                        title: Brand Ambassador
                        employment_status: live
                        term_date: null
                        start_date: '2019-11-01'
                        working_state: CA
                        workLocationID: 531fece70b6d0b5d29c9f352
                        default_wage: 20
                        default_ot_wage: 32
                        default_dt_wage: 42
                        dob: null
                        ssn: '182563748'
                        phone_number: '8716738956'
                        address: null
                        address_line2: null
                        city: null
                        state: null
                        zip: null
                        is_943: false
                        is_scheduleH: false
                        is_salary: true
                        salary: 100000
                        paycard_requested: false
                        paycard_enabled: false
                        kyc_status: approved
                        ssn_verification_status: null
                        soc_code: 41-3011
                      - employeeID: '974675839'
                        companyID: 1b5n28nrideucd24
                        onboarded: false
                        email: richard@zeal.com
                        first_name: richard
                        last_name: hendricks
                        default_pay_schedule: biweekly
                        title: Caterer
                        employment_status: live
                        term_date: null
                        start_date: '2019-11-01'
                        working_state: AZ
                        workLocationID: 531fece70b6d0b5d29c9f352
                        default_wage: 25
                        default_ot_wage: 37.5
                        default_dt_wage: 50
                        dob: null
                        ssn: null
                        phone_number: null
                        address: null
                        address_line2: null
                        city: null
                        state: null
                        zip: null
                        is_salary: false
                        salary: null
                        paycard_requested: false
                        paycard_enabled: false
                        kyc_status: null
                        ssn_verification_status: null
                        soc_code: 35-9011
                      - employeeID: '0987654321'
                        companyID: 1b5n28nrideucd24
                        onboarded: false
                        email: peter@zeal.com
                        first_name: peter
                        last_name: gregory
                        default_pay_schedule: weekly
                        title: Staffing Manager
                        employment_status: live
                        term_date: null
                        start_date: '2019-11-01'
                        working_state: AL
                        workLocationID: 531fece70b6d0b5d29c9f352
                        default_wage: 23
                        default_ot_wage: 34.5
                        default_dt_wage: 46
                        dob: null
                        ssn: null
                        phone_number: null
                        address: null
                        address_line2: null
                        city: null
                        state: null
                        zip: null
                        is_salary: true
                        salary: 100000
                        paycard_requested: false
                        paycard_enabled: false
                        kyc_status: null
                        ssn_verification_status: null
                        soc_code: 11-9199
        '400':
          description: '400'
          content:
            application/json:
              examples:
                Result:
                  value:
                    success: false
                    error: true
                    message: No companyID in the request body
                    code: 3
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                    default: true
                  error:
                    type: boolean
                    example: true
                    default: true
                  message:
                    type: string
                    example: No companyID in the request body
                  code:
                    type: integer
                    example: 3
                    default: 0
      deprecated: false
components:
  securitySchemes:
    sec0:
      type: apiKey
      in: header
      name: Authorization
      x-bearer-format: bearer

````